This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH]: Linear loop transforms
- From: Daniel Berlin <dberlin at dberlin dot org>
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 25 Aug 2004 13:48:30 -0400 (EDT)
- Subject: [PATCH]: Linear loop transforms
This does the actual linear loop transform pass.
It is not enabled by default.
When turned on for gcc directory bootstrap, it finds 3 loops to
interchange (This is not unexpected, since GCC doesn't do much of the type
of computation it's trying to optimize, and doesn't do it in a nice clean
way). It's expect more to help with fortran.
The heuristics are actually not too bad, it's data dependence information
that stops us from applying interchange to more loops. Sebastian is
working on this problem.
I've also tested this pass by forcing it to interchange every loop that it
thinks is legal to interchange, regardless of whether it made sense to do
so.
This patch depends on the lambda-code patch, and the tree-data-ref
cleanups.
Bootstrapped and regtested on powerpc-darwin and i686-pc-linux-gnu.
Attachment:
linearloop.diff
Description: Text document