This is an archive of the discontinued LLVM Phabricator instance.

[NewPM] Remove ModuleInlinerWrapperPass and directly add passes to PMs
AbandonedPublic

Authored by aeubanks on Apr 26 2021, 10:24 AM.

Details

Summary

ModuleInlinerWrapperPass is a unique pass in that it creates its own
pass manager and runs that. This causes unnecessary nesting. Besides
making some pipeline tests longer, it can also cause more invalidation
than necessary. At the top level ModulePassManager we can ignore the
returned PreservedAnalyses. But if there is a sub-ModulePassManager, the
outer ModulePassManager must invalidate based on the returned
PreservedAnalyses.

Diff Detail

Event Timeline

aeubanks created this revision.Apr 26 2021, 10:24 AM
aeubanks requested review of this revision.Apr 26 2021, 10:24 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 26 2021, 10:24 AM

I'll update the pipeline tests if this looks good

aeubanks abandoned this revision.Oct 6 2021, 4:28 PM