[Bug c/42522] [m68k] Wrong code generated with -O2/-O3
ami_stuff at o2 dot pl
gcc-bugzilla@gcc.gnu.org
Tue Dec 29 01:20:00 GMT 2009
------- Comment #6 from ami_stuff at o2 dot pl 2009-12-29 01:20 -------
> Works for me with 4.5.0 20091228.
How's that possible? What about GCC 4.4 branch? I just checked with ATARI GCC
4.4.2 m68k compiler and got the same result:
/usr/local/cross-mint/bin/m68k-atari-mint-gcc -c -S flvdec_O2.i -m68060 -O2:
_flv_probe:
link.w %fp,#0
clr.l %d0
unlk %fp
rts
.even
/usr/local/cross-mint/bin/m68k-atari-mint-gcc -c -S flvdec_O2.i -m68060 -O2
-fno-cse-follow-jumps
_flv_probe:
link.w %fp,#0
move.l 8(%fp),%a0
move.l 4(%a0),%a0
cmp.b #70,(%a0)
jeq .L6
.L2:
clr.l %d0
unlk %fp
rts
.L6:
cmp.b #76,1(%a0)
jne .L2
cmp.b #86,2(%a0)
jne .L2
cmp.b #4,3(%a0)
jhi .L2
tst.b 5(%a0)
jne .L2
move.l 5(%a0),%d0
moveq #8,%d1
cmp.l %d0,%d1
jcc .L2
moveq #100,%d0
unlk %fp
rts
.even
$ /usr/local/cross-mint/bin/m68k-atari-mint-gcc -v
Using built-in specs.
Target: m68k-atari-mint
Configured with: ../gcc-4.4.2-mint-20091017/configure --target=m68k-atari-mint
-
-prefix=/usr/local/cross-mint --enable-languages=c,c++ --disable-nls
--disable-l
ibstdcxx-pch --mandir='/man' --infodir='/info'
Thread model: single
gcc version 4.4.2 (MiNT 20091017) (GCC)
http://vincent.riviere.free.fr/soft/m68k-atari-mint/
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42522
More information about the Gcc-bugs
mailing list