This is an archive of the discontinued LLVM Phabricator instance.

[SCCP] Don't mark ranges from branch conditions as potentially undef
ClosedPublic

Authored by nikic on May 30 2022, 6:09 AM.

Details

Summary

Now that transforms introducing branch on poison have been removed, we can stop marking ranges that have been derived from branch conditions as containing undef. The existing comment explains why this is legal. I've checked that alive2 is happy with SCCP tests after this change.

Diff Detail

Event Timeline

nikic created this revision.May 30 2022, 6:09 AM
Herald added a project: Restricted Project. · View Herald TranscriptMay 30 2022, 6:09 AM
Herald added a subscriber: hiraditya. · View Herald Transcript
nikic requested review of this revision.May 30 2022, 6:09 AM
Herald added a project: Restricted Project. · View Herald TranscriptMay 30 2022, 6:09 AM
fhahn accepted this revision.Jun 2 2022, 6:31 AM

LGTM, this should be fine after fixing the remaining (known) places that may introduce branches on undef.

I think it would probably be good to wait a few more days before landing this, so there's a bit of time between the change in ValueTracking & this one, in case any issues arise from the former.

This revision is now accepted and ready to land.Jun 2 2022, 6:31 AM