On Jun 24, 2005, at 6:07 PM, Fariborz Jahanian wrote:
A source file mrSurfaceList.cc of 252.eon produces less efficient code initializing instance objects to 0 at -O2 than at -O1. Behavior is random and it does not happen on all x86 platforms and making the test smaller makes the problem go away. But here is what I found out is the cause.
This cannot be simplified by fold_rtx, resulting in less efficient code.
I wonder why combine can do the simplification though which is why still produce good code for the simple testcase: void f1(double *d,float *f2) { *f2 = 0.0; *d = 0.0; } Thanks, Andrew Pinski