This is an archive of the discontinued LLVM Phabricator instance.

[LoopStrengthReduce][NFC]: Check for invalid SCEVUnknowns when processing salvaged SCEVs
AbandonedPublic

Authored by clin1 on Nov 4 2021, 5:44 PM.

Details

Reviewers
nikic
Summary

Salvaged SCEVs used to update the debuginfo, may correspond to deleted Values. If a SCEVUnknown's backing Value is deleted, the value pointer is nulled out by VH, and the SCEV becomes invalid for analysis. This should be checked before trying to analyze these salvaged SCEVs.

Diff Detail

Event Timeline

clin1 created this revision.Nov 4 2021, 5:44 PM
clin1 requested review of this revision.Nov 4 2021, 5:44 PM
Herald added a project: Restricted Project. · View Herald TranscriptNov 4 2021, 5:44 PM

Hi @clin1, is this fixing the same issue as in D111810? (pinging @chrisjackson)

clin1 added a comment.Nov 5 2021, 9:24 AM

Yes, I confirm that it fixes the problem (by preventing the SCEVUnknowns from being gathered in the first place). Thanks for pointing this out --- since the other patch seems almost ready, I will close this one.

clin1 abandoned this revision.Nov 5 2021, 9:25 AM