Hi,
I found that PRE is not done in gcc-3.3.3, though the code for doing PRE exists in source code.


In the following example, expression a+b is partially redundant and must be eliminated, but it is not done when gcc-3.3.3 is used, where as it is done when gcc-3.4.1 is used.

        Can someone confirm me that this is the problem with gcc-3.3.3.


foo () { int a,b,c,d; scanf ("%d%d",&a,&b); if (a) { c = a + b; } else { d = c++; }

        d = c;
        c = a + b;
        printf ("%d%d",c,d);
}

Rajesh Babu

Reply via email to