https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115120
--- Comment #3 from Tamar Christina <tnfchris at gcc dot gnu.org> --- That makes sense, though I also wonder how it works for scalar multi exit loops, IVops has various checks on single exits. I guess one problem is that the code in IVops that does this uses the exit to determine niters. But in the case of the multiple exits vector code the vectorizer could have picked a different exit. So I guess the question is how do we even tell which one is used or could the transformation be driven from the PHI nodes themselves instead of an exit.