Enable redundant phi elimination after LSR.
authorAndrew Trick <atrick@apple.com>
Sat, 7 Jan 2012 07:08:17 +0000 (07:08 +0000)
committerAndrew Trick <atrick@apple.com>
Sat, 7 Jan 2012 07:08:17 +0000 (07:08 +0000)
This will be more important as we extend the LSR pass in ways that don't rely on the formula solver. In particular, we need it for constructing IV chains.

llvm-svn: 147724

llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp

index 8f3a5ab..c61714d 100644 (file)
@@ -86,8 +86,10 @@ static cl::opt<bool> EnableRetry(
 // Temporary flag to cleanup congruent phis after LSR phi expansion.
 // It's currently disabled until we can determine whether it's truly useful or
 // not. The flag should be removed after the v3.0 release.
+// This is now needed for ivchains.
 static cl::opt<bool> EnablePhiElim(
-  "enable-lsr-phielim", cl::Hidden, cl::desc("Enable LSR phi elimination"));
+  "enable-lsr-phielim", cl::Hidden, cl::init(true),
+  cl::desc("Enable LSR phi elimination"));
 
 namespace {