https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100221
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> --- Note handling this special case doesn't resolve the issue in the original testcase since the virtual operand setup is different there. As said, DSE is not set up to follow multiple paths to uses (sth akin to maybe_skip_until for the CSE case), but we only try somewhat hard to reduce multiple paths to one.