[PATCH] D124376: [Passes] Remove legacy LoopUnswitch pass.

Michael Kruse via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 25 09:58:30 PDT 2022


Meinersbur requested changes to this revision.
Meinersbur added a comment.
This revision now requires changes to proceed.

Fix for Polly:

  diff --git a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
  index 7aca971b868f..0030356f7990 100644
  --- a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
  +++ b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
  @@ -397,7 +397,7 @@ void PassManagerBuilder::addFunctionSimplificationPasses(
     // TODO: Investigate promotion cap for O1.
     MPM.add(createLICMPass(LicmMssaOptCap, LicmMssaNoAccForPromotionCap,
                            /*AllowSpeculation=*/true));
  -  MPM.add(createSimpleLoopUnswitchLegacyPass());
  +  MPM.add(createSimpleLoopUnswitchLegacyPass(OptLevel == 3));
     // FIXME: We break the loop pass pipeline here in order to do full
     // simplifycfg. Eventually loop-simplifycfg should be enhanced to replace the
     // need for this.

This is what the NPM pipeline builder does (minus `-enable-npm-O3-nontrivial-unswitch`)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D124376/new/

https://reviews.llvm.org/D124376



More information about the llvm-commits mailing list