http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59519
--- Comment #7 from bin.cheng <amker.cheng at gmail dot com> --- (In reply to Jakub Jelinek from comment #6) > Created attachment 31562 [details] > gcc49-pr59519.patch > > I wonder if this isn't just a checking issue, the two PHI nodes created in > *new_exit_bb have the same argument, so I think it is just fine if the two > PHI results are used interchangeably, later optimization passes should > hopefully coalesce them into a single IV. I tested one similar patch before. It passed x86_64 bootstrap and normal regression test. It failed some ada (also one go) cases if I ran regression test with "-O3" option. The failures look like noise to me, which I am not sure about. What's your test results? One potential shortage is it introduces additional PHI/copy of different ssa names and makes the generated code some kind of ugly and hard to read, but just as you pointed out, later passes should be able to coalescing them (I am not sure about that, especially after seeing ssa names not get coalesced in some more regular cases.) Thanks.