https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65206

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
Created attachment 34882
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34882&action=edit
hack just for the masked load/store case

Incomplete special-casing for the masked load/store case.  We need to mark
the masked load/store IFN calls somehow to mark the forwarding as valid.

A "real" fix would "duplicate" dr->indices to always have an alternate
analysis for *&dr->ref in case dr->ref is not a pointer evolution.  We
could then pick the one with compatible dr->indices.base_object.  Of course
that may still not handle all cases, if the ptr evolution is not enough
(like for having a[2][j] vs. *(&a[3][j])).  But at least it could help in
some general cases.

Reply via email to