Loop optimizer issues
Zdenek Dvorak
rakdver@atrey.karlin.mff.cuni.cz
Tue Jul 29 19:00:00 GMT 2003
Hello,
> I've been thinking about this proposal and I am not convinced that it
> would be a good idea to merge the two branches.
>
> * The tree-ssa branch is primarily trying to replace RTL passes.
> This may include the loop optimizer. So far, it is not clear
> whether we will actually need to have a sophisticated loop
> optimizer at the RTL level (if at all). The only thing that
> comes to mind that may needed from RTL are:
> * instruction lengths/costs to guide the unroller
> * prefetching capabilities and memory costs to guide
> software pipelining and memory hierarchy optimizations.
Exactly because this question is not clear, there is a need to
experiment. This can hardly be done if the changes are kept separated.
> * While there still isn't much loop-related work on the branch,
> the loop discovery infrastructure that we inherited from
> mainline seems adequate for the basic things.
There is a lot of more things I hope to reuse, especially the analysis
stuff I have written. Yes, it is possible to take just the pieces I
need and I will do it if the other reasons won't persuade you.
> * The branch is slowly becoming increasingly demanding wrt new
> contributions and optimization work. Nightly tests on many
> platforms are very helpful. I don't really want to add anything
> that's not related to the tree optimization infrastructure and
> may or may not be needed.
I propose the changes to be disabled by default (although I of course
would be grateful to people who would enable them for testing).
> * The tree-ssa branch is already very difficult to merge with
> mainline. I don't want to make it more difficult. I would
> prefer to see the rtlopt branch merged into mainline separately.
Which will make the merge even more complicated, IMO.
Zdenek
More information about the Gcc
mailing list