https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106365
--- Comment #13 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Kewen Lin from comment #10) > But it still keeps the .LEN_STORE there: > > int foo () > { > int a[10]; > > <bb 2> [local count: 97603129]: > .LEN_STORE (&MEM <int[10]> [(void *)&a + 32B], 128B, 8, { 64, 0, 0, 0, 81, > 0, 0, 0, 100, 0, 0, 0, 121, 0, 0, 0 }, 0); > a ={v} {CLOBBER(eol)}; > return 285; > > } > > btw, the latest commit "Add alias disambiguation for vectorizer load/store > IFNs" has been applied. I think that DSE doesn't handle the store IFNs yet - maybe adding handling to initialize_ao_ref_for_dse would be enough - but I think it cannot yet handle a "conservative" start (for .MASK_STORES), but .LEN_STORE should be possible to describe exact by giving an exact trimmed size to ao_ref (the alias disambiguation changes could be also made more precise there). Can you open a separate bugreport for the DSE issue?