-O2 problem / GCC 3.3.x

Bossom, John John.Bossom@Cognos.COM
Mon Nov 15 20:53:00 GMT 2004


Read up on -fstrict-aliasing (which is on with -O2).

Try building again with -O2 -fno-strict-aliasing

(Not saying this is the problem, however, if it goes away with the -fno-strict-aliasing
 then you'll know)


-----Original Message-----
From: gcc-help-owner@gcc.gnu.org [mailto:gcc-help-owner@gcc.gnu.org]On
Behalf Of Beschorner Daniel
Sent: Monday, November 15, 2004 3:42 PM
To: 'gcc-help@gcc.gnu.org'
Subject: -O2 problem / GCC 3.3.x


Any idea why results differ between -O and -O2 with GCC 3.3.x/Linux??? GCC
2.95 works fine.

results:
-O	500000
-O2	300000

Thanks
Daniel



#include <stdio.h>

int A,B,C;
int i;
int Q[1];

int H(int X, int Y)
{
        return X^Y^100000;
}

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;
} 
  
       This message may contain privileged and/or confidential information.  If you have received this e-mail in error or are not the intended recipient, you may not use, copy, disseminate or distribute it; do not open any attachments, delete it immediately from your system and notify the sender promptly by e-mail that you have done so.  Thank you. 
 



More information about the Gcc-help mailing list