If another inlining session came after a ModuleInlinerWrapperPass, the
advisor alanysis would still be cached, but its Result would be cleared.
We need to clear both.
This addresses PR52118
Paths
| Differential D111586
[Inline] Make sure the InlineAdvisor is correctly cleared. ClosedPublic Authored by mtrofin on Oct 11 2021, 4:46 PM.
Details Summary If another inlining session came after a ModuleInlinerWrapperPass, the This addresses PR52118
Diff Detail
Event Timeline
This revision is now accepted and ready to land.Oct 12 2021, 9:41 AM This revision was landed with ongoing or failed builds.Oct 12 2021, 10:43 AM Closed by commit rGea4a6c84267f: [Inline] Make sure the InlineAdvisor is correctly cleared. (authored by mtrofin). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 379109 llvm/include/llvm/Analysis/InlineAdvisor.h
llvm/lib/Transforms/IPO/Inliner.cpp
llvm/test/Other/new-pm-defaults.ll
llvm/test/Other/new-pm-lto-defaults.ll
llvm/test/Other/new-pm-pgo-preinline.ll
llvm/test/Other/new-pm-thinlto-defaults.ll
llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
|
this seems like it's reimplementing the invalidation.
can we get rid of clear() and use
?