Inefficient loop unrolling.

Paolo Bonzini bonzini@gnu.org
Thu Jul 10 13:04:00 GMT 2008


Bingfeng Mei wrote:
> Steven,
> I just created a bug report. You should receive a CCed mail now.
> 
> I can see these issues are solvable at RTL-level, but require lots of
> efforts. The main optimization in loop unrolling pass, split iv, can
> reduce dependence chain but not extra ADDs and alias issue. What is the
> main reason that loop unrolling should belong to RTL level? Is it
> fundamental?

No, it is just effectiveness of the code size expansion heuristics. 
Ivopts is already complex enough on the tree level, that doing it on RTL 
would be insane.  But other low-level loop optimizations had already 
been written on the RTL level and since there were no compelling 
reasons, they were left there.

That said, this is a bug -- fwprop should have folded the ADDs, at the 
very least.  I'll look at the PR.

Paolo



More information about the Gcc mailing list