------- 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