powerpc-eabi assembler problems

Peter Popov ppopov@redcreek.com
Tue Dec 14 21:19:00 GMT 1999

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.


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

More information about the crossgcc mailing list