[PATCH] D25962: [EarlyCSE] Enable MemorySSA for middle-end run of EarlyCSE.

Geoff Berry via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 25 13:03:00 PDT 2016


gberry created this revision.
gberry added a reviewer: dberlin.
gberry added subscribers: llvm-commits, mcrosier.
Herald added a subscriber: mehdi_amini.

Use MemorySSA for memory dependency checking in EarlyCSE pass at the
start of addFunctionSimplificationPasses at https://reviews.llvm.org/owners/package/2/ and higher.


https://reviews.llvm.org/D25962

Files:
  lib/Transforms/IPO/PassManagerBuilder.cpp


Index: lib/Transforms/IPO/PassManagerBuilder.cpp
===================================================================
--- lib/Transforms/IPO/PassManagerBuilder.cpp
+++ lib/Transforms/IPO/PassManagerBuilder.cpp
@@ -294,7 +294,8 @@
   // Start of function pass.
   // Break up aggregate allocas, using SSAUpdater.
   MPM.add(createSROAPass());
-  MPM.add(createEarlyCSEPass());              // Catch trivial redundancies
+  bool UseMemorySSA = OptLevel > 1;
+  MPM.add(createEarlyCSEPass(UseMemorySSA));  // Catch trivial redundancies
   // Speculative execution if the target has divergent branches; otherwise nop.
   MPM.add(createSpeculativeExecutionIfHasBranchDivergencePass());
   MPM.add(createJumpThreadingPass());         // Thread jumps.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D25962.75775.patch
Type: text/x-patch
Size: 744 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161025/e4cae11c/attachment.bin>


More information about the llvm-commits mailing list