From eb3aeb1c2e266ce3e5146f20714528d09f98666b Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Fri, 20 Jun 2025 18:39:56 +0200 Subject: [PATCH] [Passes] Remove LoopInterchange from O1 pipeline This is a fairly exotic pass, I don't think it makes a lot of sense to run it at O1, esp. as vectorization wouldn't run at O1 anyway. --- llvm/lib/Passes/PassBuilderPipelines.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/llvm/lib/Passes/PassBuilderPipelines.cpp b/llvm/lib/Passes/PassBuilderPipelines.cpp index a99146d5eaa34..b0cdd1b94e565 100644 --- a/llvm/lib/Passes/PassBuilderPipelines.cpp +++ b/llvm/lib/Passes/PassBuilderPipelines.cpp @@ -501,9 +501,6 @@ PassBuilder::buildO1FunctionSimplificationPipeline(OptimizationLevel Level, LPM2.addPass(LoopDeletionPass()); - if (PTO.LoopInterchange) - LPM2.addPass(LoopInterchangePass()); - // Do not enable unrolling in PreLinkThinLTO phase during sample PGO // because it changes IR to makes profile annotation in back compile // inaccurate. The normal unroller doesn't pay attention to forced full unroll