summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-07-15 01:25:43 +0000
committerDan Gohman <gohman@apple.com>2009-07-15 01:25:43 +0000
commitc43e47938aaf3890f8f62201ff65897e85239d53 (patch)
treee027487c3e7253f89a1ee7c8aae7465f46c63201 /llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
parent7f318128d0367f4e7c38b10f33ae5ef5127aeac4 (diff)
downloadbcm5719-llvm-c43e47938aaf3890f8f62201ff65897e85239d53.tar.gz
bcm5719-llvm-c43e47938aaf3890f8f62201ff65897e85239d53.zip
Make makeLoopInvariant report whether it made any changes or not,
and use this to simplify more code. llvm-svn: 75722
Diffstat (limited to 'llvm/lib/Transforms/Scalar/LoopUnswitch.cpp')
-rw-r--r--llvm/lib/Transforms/Scalar/LoopUnswitch.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp b/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
index f5061b57ae4..daf1841a91c 100644
--- a/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
@@ -168,13 +168,10 @@ static Value *FindLIVLoopCondition(Value *Cond, Loop *L, bool &Changed) {
if (isa<Constant>(Cond)) return 0;
// TODO: Handle: br (VARIANT|INVARIANT).
- if (L->isLoopInvariant(Cond)) return Cond;
// Hoist simple values out.
- if (L->makeLoopInvariant(Cond)) {
- Changed = true;
+ if (L->makeLoopInvariant(Cond, Changed))
return Cond;
- }
if (BinaryOperator *BO = dyn_cast<BinaryOperator>(Cond))
if (BO->getOpcode() == Instruction::And ||
OpenPOWER on IntegriCloud