This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/34683] [4.3 Regression] Fortran FE generated IL pessimizes middle-end IL and analysis
- From: "rguenth at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 8 Jan 2008 09:55:02 -0000
- Subject: [Bug tree-optimization/34683] [4.3 Regression] Fortran FE generated IL pessimizes middle-end IL and analysis
- References: <bug-34683-14773@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #25 from rguenth at gcc dot gnu dot org 2008-01-08 09:55 -------
The unroll problem is that if you have multiple loops like
for (i=0; i<3; ++i)
a[i] = i;
...
for (i=0; i<3; ++i)
a[i] = i;
then even though we are in loop closed SSA form, we rename all variables
in the loop BBs after duplicating them for *every loop* we unroll. Which
causes the complexity of renaming to be quadratic (you can easily see
that for this testcase the number of SSA_NAMEs allocated by the renamer
is quadratic with the number of loops in the testcase). Now what makes
it so bad in this testcase is that we mostly deal with virtual operands
during renaming.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34683