diff options
| author | Andrew Trick <atrick@apple.com> | 2011-11-28 19:22:09 +0000 |
|---|---|---|
| committer | Andrew Trick <atrick@apple.com> | 2011-11-28 19:22:09 +0000 |
| commit | a8bdb7cbf1a15720204f4f498658160039eca44f (patch) | |
| tree | 982cd8c507717f824e31c2cd6d84ccf798c4f81b /llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp | |
| parent | 48f8f9fdb1172083bb7b31b5e38f6de82b917776 (diff) | |
| download | bcm5719-llvm-a8bdb7cbf1a15720204f4f498658160039eca44f.tar.gz bcm5719-llvm-a8bdb7cbf1a15720204f4f498658160039eca44f.zip | |
Remove the temporary flag -disable-unroll-scev and dead code.
SCEV should now be used for trip count analysis, not LoopInfo.
llvm-svn: 145262
Diffstat (limited to 'llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp b/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp index 37f4c2c0cf5..f3fdd4f3c51 100644 --- a/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp +++ b/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp @@ -40,11 +40,6 @@ UnrollAllowPartial("unroll-allow-partial", cl::init(false), cl::Hidden, cl::desc("Allows loops to be partially unrolled until " "-unroll-threshold loop size is reached.")); -// Temporary flag to be removed in 3.0 -static cl::opt<bool> -NoSCEVUnroll("disable-unroll-scev", cl::init(false), cl::Hidden, - cl::desc("Use ScalarEvolution to analyze loop trip counts for unrolling")); - namespace { class LoopUnroll : public LoopPass { public: @@ -148,20 +143,13 @@ bool LoopUnroll::runOnLoop(Loop *L, LPPassManager &LPM) { // Find trip count and trip multiple if count is not available unsigned TripCount = 0; unsigned TripMultiple = 1; - if (!NoSCEVUnroll) { - // Find "latch trip count". UnrollLoop assumes that control cannot exit - // via the loop latch on any iteration prior to TripCount. The loop may exit - // early via an earlier branch. - BasicBlock *LatchBlock = L->getLoopLatch(); - if (LatchBlock) { - TripCount = SE->getSmallConstantTripCount(L, LatchBlock); - TripMultiple = SE->getSmallConstantTripMultiple(L, LatchBlock); - } - } - else { - TripCount = L->getSmallConstantTripCount(); - if (TripCount == 0) - TripMultiple = L->getSmallConstantTripMultiple(); + // Find "latch trip count". UnrollLoop assumes that control cannot exit + // via the loop latch on any iteration prior to TripCount. The loop may exit + // early via an earlier branch. + BasicBlock *LatchBlock = L->getLoopLatch(); + if (LatchBlock) { + TripCount = SE->getSmallConstantTripCount(L, LatchBlock); + TripMultiple = SE->getSmallConstantTripMultiple(L, LatchBlock); } // Automatically select an unroll count. unsigned Count = CurrentCount; |

