https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85143
--- Comment #7 from Marc Glisse <glisse at gcc dot gnu.org> --- Note that the patch still doesn't handle _1 = n_15(D) <= i_46; _2 = i_46 > 1336; _3 = _1 | _2; because of the mix between strict and large inequalities. (if I write int m = 1337; and replace i < 1337 with i < m, the transformation does happen, and with a suitable -march it vectorizes)