This is an archive of the discontinued LLVM Phabricator instance.

[llvm-reduce] Add delta pass to run IR passes
ClosedPublic

Authored by aeubanks on Apr 13 2022, 5:37 PM.

Details

Summary

The exact IR passes run is customizable via -ir-passes.

Diff Detail

Event Timeline

aeubanks created this revision.Apr 13 2022, 5:37 PM
Herald added a project: Restricted Project. · View Herald TranscriptApr 13 2022, 5:37 PM
Herald added a subscriber: mgorny. · View Herald Transcript
aeubanks requested review of this revision.Apr 13 2022, 5:37 PM
Herald added a project: Restricted Project. · View Herald TranscriptApr 13 2022, 5:37 PM
aeubanks updated this revision to Diff 422703.Apr 13 2022, 5:39 PM

license formatting

I'm not sure how useful running *all* passes is as a reduction strategy. I think an option to run specific passes would be more useful. For example I get a lot of mileage out of running InferAddressSpaces on testcases I'm reducing, most of which are extremely sensitive to IR changes and are easily hidden by running all optimizations

aeubanks edited the summary of this revision. (Show Details)Aug 4 2022, 5:02 PM
regehr added inline comments.Aug 4 2022, 7:27 PM
llvm/tools/llvm-reduce/deltas/RunIRPasses.cpp
22

put SROA at the start of this list?

I'd also argue for SCCP and DCE but I don't feel that strongly about it

regehr added a comment.Aug 4 2022, 8:29 PM

LGTM but happy to wait for Matt's view.

I like putting the oracle check in a callback, very cute!

regehr accepted this revision.Aug 10 2022, 3:07 PM

LGTM

This revision is now accepted and ready to land.Aug 10 2022, 3:07 PM
This revision was landed with ongoing or failed builds.Aug 12 2022, 10:38 AM
This revision was automatically updated to reflect the committed changes.