On Jun 24, 2005, at 5:06 PM, Steven Bosscher wrote:

On Saturday 25 June 2005 01:48, fjahanian wrote:

On Jun 24, 2005, at 3:16 PM, Andrew Pinski wrote:

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;
}


It is hard to reproduce the simple test case, exhibiting the same
problem (-O1 producing better code than -O2). Yes, small test cases
move the desired simplification to other phases.


It often helps if you know what function your poorer code is in.  You
could e.g. try to make the .optimized dump of that function compilable
and see if the problem shows up there again.  Then work your way down
to something small.

Yes, I am planning to do this. My first question was though if the RTL generated by -O2, which does not get simplified, is correct and should be optimized in one of the rtl optimizers. If not, then focus shifts to tree optimizers.

- Thanks ,fariborz


Gr.
Steven



Reply via email to