[llvm] 2e8e435 - Recommit "[RISCV] Don't run loop-idiom-vectorize pass in the O0 pipeline. (#156798)"

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 4 09:56:42 PDT 2025


Author: Craig Topper
Date: 2025-09-04T09:50:12-07:00
New Revision: 2e8e435fadc672d0b9ea23330b3bc10d292475b9

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

LOG: Recommit "[RISCV] Don't run loop-idiom-vectorize pass in the O0 pipeline. (#156798)"

With a dependency on the Passes library added this time.

Added: 
    

Modified: 
    llvm/lib/Target/RISCV/CMakeLists.txt
    llvm/lib/Target/RISCV/RISCVTargetMachine.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/RISCV/CMakeLists.txt b/llvm/lib/Target/RISCV/CMakeLists.txt
index 531238ae85029..0ff178e1f1959 100644
--- a/llvm/lib/Target/RISCV/CMakeLists.txt
+++ b/llvm/lib/Target/RISCV/CMakeLists.txt
@@ -88,6 +88,7 @@ add_llvm_target(RISCVCodeGen
   GlobalISel
   IPO
   MC
+  Passes
   RISCVDesc
   RISCVInfo
   Scalar

diff  --git a/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp b/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
index d70b1d0dc8d58..460bb33f2553a 100644
--- a/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
+++ b/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
@@ -652,7 +652,8 @@ void RISCVPassConfig::addPostRegAlloc() {
 void RISCVTargetMachine::registerPassBuilderCallbacks(PassBuilder &PB) {
   PB.registerLateLoopOptimizationsEPCallback([=](LoopPassManager &LPM,
                                                  OptimizationLevel Level) {
-    LPM.addPass(LoopIdiomVectorizePass(LoopIdiomVectorizeStyle::Predicated));
+    if (Level != OptimizationLevel::O0)
+      LPM.addPass(LoopIdiomVectorizePass(LoopIdiomVectorizeStyle::Predicated));
   });
 }
 


        


More information about the llvm-commits mailing list