gcc 3.3 / i386 / -O2 question
Beschorner Daniel
Daniel.Beschorner@facton.com
Tue Nov 16 12:06:00 GMT 2004
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);
C+=H(A,B);
A+=H(B,C);
C+=H(A,B);
for (i=0;i<1;i++)
Q[i] = 0;
printf("%i\n",A);
return 0;
}
More information about the Gcc
mailing list