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

--- Comment #17 from Richard Biener <rguenth at gcc dot gnu.org> ---
So while I have a prototype that takes valueization out of the equation, the
PRE expression equivalence processing still uses vn_reference_eq which, while
not valueizing, performs equivalence processing ignoring the full access
path - aka it matches only offsets.  I can fix that (w/o also fixing hashing it
will cause some collisions there) and that seems to fix the issue at hand.

It does and will necessarily regress gcc.dg/tree-ssa/ssa-pre-30.c, though
that is of questionable validity w/o -fno-strict-aliasing and it does not
work with -fno-strict-aliasing at this point.

It also seems to still fail the testcase, but only with -flto.

So I have to keep investigating :/  It's already pretty invasive for stage4
(again, seems to be a deja-vu).

Was the original testcase reduced from a real-world program or was it created
artificially?

Reply via email to