gcc 3.3 / i386 / -O2 question

Andrew Haley aph@redhat.com
Tue Nov 16 13:02:00 GMT 2004


Beschorner Daniel writes:
 > Sorry, if this is the wrong list, but why differ the results in this simple
 > example when compiled with -O and -O2 while GCC 2.95 is working fine?
 > -fno-strict-aliasing makes no difference, but -fno-gcse-(sm) helps.
 > 
 > outputs are
 > -O: -1343238496
 > -O2: -1474736480
 > 
 > Thanks Daniel
 > 
 > 
 > int A,B,C;
 > int i;
 > int Q[1];
 > int H(int X, int Y)
 > {
 >         return X*Y;
 > }
 > int main()
 > {
 >         A=B=C=100000;
 >         A+=H(B,C);

Integer overflow.  All bets are off.

Andrew.



More information about the Gcc mailing list