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