This is an archive of the discontinued LLVM Phabricator instance.

[IR] Make hasPoisonGeneratingMetadata return false if has !noundef
Needs ReviewPublic

Authored by StephenFan on Apr 24 2023, 9:53 AM.

Details

Reviewers
nikic
Summary

hasPoisonGeneratingMetadata is used by ValueTracking function
canCreateUndefOrPoison, if both poison generating metadata and
!noundef exists, then this instruction can not create undef or poison
actually.

But I am not sure if it is correct since !noundef can be dropped. If we
first do the transform based on !noundef, then we drop it in other
transforms, does it still correct?

Diff Detail

Event Timeline

StephenFan created this revision.Apr 24 2023, 9:53 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 24 2023, 9:53 AM
Herald added a subscriber: hiraditya. · View Herald Transcript
StephenFan requested review of this revision.Apr 24 2023, 9:53 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 24 2023, 9:53 AM