This is the mail archive of the mailing list for the newlib project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Libgloss doesn't compile for ColdFire (m68k) 51qe

I am wondering if anyone else has tried compiling newlib 1.15 or 1.16
with a GCC 4.3 cross compiler for ColdFire (m68k).

I am using Binutils from CVS and GCC 4.3.0.  Newlib seems to be
compiling fine until it starts compiling libgloss for the 51qe CPU.  I
get an error...

   mismatched operands: ignored - "movec.l %0,/cacr"

I tracked it down to an inline assembly statement on line 76 of
libgloss/m68k/cf-crt1.c.  The inline assembly is added unless
"__mcf_family_5213" is defined.  I checked the Freescale 51qe
Datasheet and also the sources for the GNU Assembler and the register
CACR is not defined for this architecture (as far as I can tell).

Newlib is getting compiled for the following architectures:

   "51qe 5206e 5208 5213 5249 5307 5329 5407 54455 5475"

All of the above CPU/Families except for the 51qe and 5213 provide the
CACR register.  Modified the "#ifndef" on line 76 of cf-crt1.c to read
"#if !defined(__mcf_family_5213) && !defined(__mcf_family_51qe)" and
then Newlib seemed to compile fine.  I think that this is the correct
fix but I am not sure.

I am still kinda new to this so if you need more information, please
let me know.

~ Corrin Meyer

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]