This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/15434] -mcpu=601 -O2 optimization problems
- From: "stefaan dot simoens at tiscali dot be" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 24 May 2004 19:41:06 -0000
- Subject: [Bug c/15434] -mcpu=601 -O2 optimization problems
- References: <20040514140524.15434.stefaan.simoens@tiscali.be>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From stefaan dot simoens at tiscali dot be 2004-05-24 19:41 -------
Further investigation showed that optimization errors also occur in other
files.
/bin/ps compiled with -mcpu=601 -O2 gave me a broken executable. I tried to
pin-point the problem and I found some very strange things:
* /bin/ps compiled with -mcpu=601 -O1 was broken, too
* /bin/ps compiled with -mcpu=601 works fine
* /bin/ps compiled with -mcpu=601 -fdefer-pop -fmerge-constants -fthread-
jumps -floop-optimize -fif-conversion -fif-conversion2 -fguess-branch-
probability -fcprop-registers -fomit-frame-pointer works fine, too
* (adding -fdelayed-branch to the latter gives a warning and a working
executable)
According to the man-page, all those f-options should give the same
functionality as -O1 does. Compiling whith -fverbose-asm confirms this (equal
options enabled), but the assembler code differs a lot.
I'm going to look if I can find ONE (1) file where 'wrong-code' gets
generated. I'm curious, however, why there is different assembler code beween -
O1 and the -f-options ... Has this anything to do with PR7257 ?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15434