https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114099
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |tnfchris at gcc dot gnu.org --- Comment #7 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Note the difference between noreturn vs __builtin_unreachable BB is the noreturn bb has: # _21 = PHI <_2(4)> m = _21; But the one with unreachable does not. It feels like that difference is causing the issue here. Replacing unreachable with another noreturn function removes the ICE even. I am 99% sure this is related to the early out vect changes too.