https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66396
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- The issue is corrupted VOPs. <bb 2>: # .MEM_4 = VDEF <.MEM_3(D)> iD.1808@ = 1; # .MEM_5 = VDEF <.MEM_4> xD.1810@ = &iD.1808@; # .MEM_6 = VDEF <.MEM_5> yD.1811@ = &jD.1807@; # .MEM_7 = VDEF <.MEM_6> fD.1806@.pD.1801 = &yD.1811@; # .MEM_8 = VDEF <.MEM_7> fD.1806@.qD.1802 = &xD.1810@; # PT = { D.1806 } p_25 = &fD.1806@ + 4; # .MEM_28 = VDEF <.MEM_3(D)> jD.1807@ = 4; see how that uses the wrong VUSE.