This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Loop optimizer issues
- From: Diego Novillo <dnovillo at redhat dot com>
- To: Zdenek Dvorak <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- Cc: "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>, Richard Henderson <rth at redhat dot com>, Jason Merrill <jason at redhat dot com>, pop at gauvain dot u-strasbg dot fr, Jan Hubicka <jh at suse dot cz>, Daniel Berlin <dberlin at dberlin dot org>
- Date: 29 Jul 2003 11:33:28 -0400
- Subject: Re: Loop optimizer issues
- Organization: Red Hat Canada
- References: <20030530183552.GA27110@atrey.karlin.mff.cuni.cz> <1054585449.9789.146.camel@frodo.toronto.redhat.com> <20030727224601.GA5476@atrey.karlin.mff.cuni.cz>
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.
* 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.
* 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.
* 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.
Having said that, there may be infrastructure from the rtlopt branch
that we may find useful for the tree optimizers. I have personally not
looked into what's needed for the tree loop optimizer. Some other folks
have. Maybe we could take bits and pieces that are useful.
Diego.