This is the mail archive of the crossgcc@sourceware.cygnus.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more infromation.


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

Re: powerpc-eabi assembler problems


Ian Lance Taylor wrote:
> 
>    Date: Tue, 14 Dec 1999 20:58:16 -0800
>    From: Peter Popov <ppopov@redcreek.com>
> 
>    I'm using a powerpc-eabi compiler which I built from
>    gcc-2.92.2 and binutils-2.9.1.  The assembler chokes on
>    instructions like this one:
> 
>    li r5, 0xfffe
> 
>    initads.s:194: Error: operand out of range (65534 not between -32768 and 32767)
> 
>    It complains that the operand is out of range, when in fact,
>    if should just translate the 0xfffe t0 -2.   Does anyone know if
>    this is an assembler bug, or is it a feature?
> 
> It's a feature.  You're asking the assembler to load 0xfffe into r5.
> That can't be done in one li instruction.  You can load 0xfffffffe,
> but you can't load 0x0000fffe.
 
> Did gcc generate that instruction?

No, it's in an assembly file I got from Motorola's web site.
The file was assembled with the Diab Data assembler; I tried that
and it worked (the Diab Data assembler generates :  "li  r5,-2"
from the "li r5, 0xfffe"), which is why I thought it was a bug.

Thank you for the feedback.

Pete

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com


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