http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50204
--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-08-29 07:29:57 UTC --- The loop over PHI args is a little hard to follow, but yeah, that's how it should work. Eventually we can put this in with a new --param telling the maximum number of PHI args to consider (and defaulting it to two). I'd probably keep the n == 1 handling in the main function separately instead of trying to handle it via the loop. Then I'd pre-seed the first arg which should make the loop a little easier to follow.