http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58553
--- Comment #12 from Jeffrey A. Law <law at redhat dot com> --- Re: Not creating loops with multiple entries, no doubt that's bad. It would be nice however, to expose loop nesting. ie, prior to threading it looks like one bug fugly loop. A bit of threading can sometimes expose a reasonable nested loop structure. I haven't thought much about what additional updating we'd need for that, but it's in the back of my mind. Right now we're supposed to be rejecting these jump threading requests, but some might be sliding through. Re: peeling/unrolling. Given that we don't iterate DOM anymore, there's little risk of completely peeling/unrolling the loop, except for loops which just iterate 1-3 times and are relatively small (we do have size growth limits). But our heuristics for when to peel vs leave it alone are trivial at best and could use some significant improvement.