[llvm] 30a7c81 - [LTO][Pipelines][NFC] Exctract isLTOPostLink (#128653)

via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 25 14:56:55 PST 2025


Author: Vitaly Buka
Date: 2025-02-25T14:56:51-08:00
New Revision: 30a7c816ee5ca998da960c6ab98e72903de40592

URL: https://github.com/llvm/llvm-project/commit/30a7c816ee5ca998da960c6ab98e72903de40592
DIFF: https://github.com/llvm/llvm-project/commit/30a7c816ee5ca998da960c6ab98e72903de40592.diff

LOG: [LTO][Pipelines][NFC] Exctract isLTOPostLink (#128653)

Added: 
    

Modified: 
    llvm/lib/Passes/PassBuilderPipelines.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Passes/PassBuilderPipelines.cpp b/llvm/lib/Passes/PassBuilderPipelines.cpp
index 4632a0e46908e..6ca2f90aa0668 100644
--- a/llvm/lib/Passes/PassBuilderPipelines.cpp
+++ b/llvm/lib/Passes/PassBuilderPipelines.cpp
@@ -411,6 +411,12 @@ static bool isLTOPreLink(ThinOrFullLTOPhase Phase) {
          Phase == ThinOrFullLTOPhase::FullLTOPreLink;
 }
 
+// Helper to check if the current compilation phase is LTO backend
+static bool isLTOPostLink(ThinOrFullLTOPhase Phase) {
+  return Phase == ThinOrFullLTOPhase::ThinLTOPostLink ||
+         Phase == ThinOrFullLTOPhase::FullLTOPostLink;
+}
+
 // Helper to wrap conditionally Coro passes.
 static CoroConditionalWrapper buildCoroWrapper(ThinOrFullLTOPhase Phase) {
   // TODO: Skip passes according to Phase.
@@ -1613,8 +1619,7 @@ PassBuilder::buildModuleOptimizationPipeline(OptimizationLevel Level,
     MPM.addPass(MergeFunctionsPass());
 
   if (PTO.CallGraphProfile && !LTOPreLink)
-    MPM.addPass(CGProfilePass(LTOPhase == ThinOrFullLTOPhase::FullLTOPostLink ||
-                              LTOPhase == ThinOrFullLTOPhase::ThinLTOPostLink));
+    MPM.addPass(CGProfilePass(isLTOPostLink(LTOPhase)));
 
   // RelLookupTableConverterPass runs later in LTO post-link pipeline.
   if (!LTOPreLink)


        


More information about the llvm-commits mailing list