[PATCH] D108073: [PassBuilder] Don't use MemorySSA for standalone LoopRotate passes
Nikita Popov via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sat Aug 14 08:30:10 PDT 2021
nikic created this revision.
nikic added a reviewer: asbirlea.
Herald added subscribers: george.burgess.iv, hiraditya.
nikic requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Two standalone LoopRotate passes scheduled using createFunctionToLoopPassAdaptor() currently enable MemorySSA. However, while LoopRotate can preserve MemorySSA, it does not use it, so requiring MemorySSA is unnecessary.
Weirdly, I'm not seeing any significant compile-time change from this patch, so I'm wondering if I'm misunderstanding something here...
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D108073
Files:
llvm/lib/Passes/PassBuilder.cpp
Index: llvm/lib/Passes/PassBuilder.cpp
===================================================================
--- llvm/lib/Passes/PassBuilder.cpp
+++ llvm/lib/Passes/PassBuilder.cpp
@@ -923,7 +923,7 @@
FunctionPassManager FPM;
// Disable header duplication in loop rotation at -Oz.
FPM.addPass(createFunctionToLoopPassAdaptor(
- LoopRotatePass(Level != OptimizationLevel::Oz), EnableMSSALoopDependency,
+ LoopRotatePass(Level != OptimizationLevel::Oz), /*UseMemorySSA=*/false,
/*UseBlockFrequencyInfo=*/false));
MPM.addPass(createModuleToFunctionPassAdaptor(std::move(FPM)));
@@ -1399,8 +1399,7 @@
// Disable header duplication at -Oz.
OptimizePM.addPass(createFunctionToLoopPassAdaptor(
LoopRotatePass(Level != OptimizationLevel::Oz, LTOPreLink),
- EnableMSSALoopDependency,
- /*UseBlockFrequencyInfo=*/false));
+ /*UseMemorySSA=*/false, /*UseBlockFrequencyInfo=*/false));
// Distribute loops to allow partial vectorization. I.e. isolate dependences
// into separate loop that would otherwise inhibit vectorization. This is
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D108073.366437.patch
Type: text/x-patch
Size: 1091 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210814/96fd9279/attachment.bin>
More information about the llvm-commits
mailing list