------- Comment #3 from rguenth at gcc dot gnu dot org 2010-02-26 13:29 ------- For some reason we inline 8 recursive calls of foo resulting in a load of loops that we all completely unroll. And in fact this is profitable but very slow because we estimate induction variable computations to be optimized (which they are), but we don't do that until we unrolled all loops - so we generate lots of new SSA names.
Not too bad, but we are left with trivially dead branches from cfgcleanup. I have a patch. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43186