[llvm] [AArch64] Don't run loop-idiom-vectorize pass in the O0 pipeline (PR #156802)

via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 3 21:50:24 PDT 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-backend-aarch64

Author: Fangrui Song (MaskRay)

<details>
<summary>Changes</summary>

As noted in #<!-- -->156787


---
Full diff: https://github.com/llvm/llvm-project/pull/156802.diff


1 Files Affected:

- (modified) llvm/lib/Target/AArch64/AArch64TargetMachine.cpp (+2-1) 


``````````diff
diff --git a/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp b/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
index e67bd5869ccd1..4650b2d0c8151 100644
--- a/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
+++ b/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
@@ -589,7 +589,8 @@ void AArch64TargetMachine::registerPassBuilderCallbacks(PassBuilder &PB) {
 
   PB.registerLateLoopOptimizationsEPCallback(
       [=](LoopPassManager &LPM, OptimizationLevel Level) {
-        LPM.addPass(LoopIdiomVectorizePass());
+        if (Level != OptimizationLevel::O0)
+          LPM.addPass(LoopIdiomVectorizePass());
       });
   if (getTargetTriple().isOSWindows())
     PB.registerPipelineEarlySimplificationEPCallback(

``````````

</details>


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


More information about the llvm-commits mailing list