egcs 1.0 mips64orion bug
Jeffrey A Law
law@cygnus.com
Sun Dec 28 11:41:00 GMT 1997
In message < Pine.BSF.3.96.971222135650.23375L-100000@vespucci.advicom.net >you
write:
> And later:
>
> It's probably pretty easy to fix. There's probably just a missing
> TARGET_DOUBLE_FLOAT somewhere in mips.md or mips.c.
>
> I managed to cut the code down to this:
>
> double One;
> int f()
> {
> One = 1;
> }
>
> which (to my surprise) actually trips the bug. :)
>
> Here are the commands I have been using to generate this error:
>
> mips64orion-rtems-gcc -v -mcpu=4650 -S -g p3.c
> mips64orion-rtems-as -v -mcpu=4650 p3.s
-mcpu=4650 effects scheduling characteristics only; the compiler is
still free to use instructions not available on the 4650.
-m4650 will force the compiler to generate code that only uses insns
available on the 4650.
If I use -m4650 I get:
f:
.frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0
.mask 0x00000000,0
.fmask 0x00000000,0
li.d $2,1.00000000000000000000e0
#nop
sd $2,One
j $31
.end f
Which looks correct for the 4650.
jeff
More information about the Gcc
mailing list