[clang] [llvm] [EntryExitInstrumenter] Move passes out of clang into LLVM default pipelines (PR #92171)

Arthur Eubanks via llvm-commits llvm-commits at lists.llvm.org
Tue May 28 12:28:10 PDT 2024


================
@@ -1030,6 +1036,12 @@ PassBuilder::buildModuleSimplificationPipeline(OptimizationLevel Level,
       Phase != ThinOrFullLTOPhase::ThinLTOPostLink)
     MPM.addPass(SampleProfileProbePass(TM));
 
+  // Instrument function entry and exit before all inlining.
+  if (!isLTOPostLink(Phase)) {
+    MPM.addPass(createModuleToFunctionPassAdaptor(
----------------
aeubanks wrote:

the check for `Phase != ThinOrFullLTOPhase::FullLTOPostLink` is unnecessary, `buildModuleSimplificationPipeline` isn't called for FullLTO post link

I'm not sure why you're seeing that behavior if we're only running the post-inline instrumenter once in the codegen pipeline

https://github.com/llvm/llvm-project/pull/92171


More information about the llvm-commits mailing list