[llvm] bde8ce6 - [AMDGPU] Only run `AMDGPUPrintfRuntimeBindingPass` at non-prelink phase (#125162)

via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 10 05:24:54 PST 2025


Author: Shilei Tian
Date: 2025-02-10T08:24:50-05:00
New Revision: bde8ce6a5c47a3e5719618797cc4143db6f871f5

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

LOG: [AMDGPU] Only run `AMDGPUPrintfRuntimeBindingPass` at non-prelink phase (#125162)

Added: 
    

Modified: 
    llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
index c6d36fde9730a3..e8afbfbb411c33 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
@@ -803,7 +803,8 @@ void AMDGPUTargetMachine::registerPassBuilderCallbacks(PassBuilder &PB) {
   PB.registerPipelineEarlySimplificationEPCallback(
       [](ModulePassManager &PM, OptimizationLevel Level,
          ThinOrFullLTOPhase Phase) {
-        PM.addPass(AMDGPUPrintfRuntimeBindingPass());
+        if (!isLTOPreLink(Phase))
+          PM.addPass(AMDGPUPrintfRuntimeBindingPass());
 
         if (Level == OptimizationLevel::O0)
           return;

diff  --git a/llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll b/llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll
index c68143f44866f3..b1fc76f457ece2 100644
--- a/llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll
+++ b/llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll
@@ -14,6 +14,7 @@
 
 ; PRE-NOT: internalize
 ; PRE-NOT: amdgpu-attributor
+; PRE-NOT: printfToRuntime
 
 define amdgpu_kernel void @kernel() {
 entry:


        


More information about the llvm-commits mailing list