diff options
author | Chad Rosier <mcrosier@codeaurora.org> | 2016-04-20 19:15:26 +0000 |
---|---|---|
committer | Chad Rosier <mcrosier@codeaurora.org> | 2016-04-20 19:15:26 +0000 |
commit | 41dd31f0b095c4ace9e3ab36062e2e11b8445d41 (patch) | |
tree | 8b689954d990b40ab2c42dd81433e368e3dadf46 /llvm/lib/Transforms/Scalar/JumpThreading.cpp | |
parent | 77729b82e7f8b44c76101d2b7e5367610b63561a (diff) | |
download | bcm5719-llvm-41dd31f0b095c4ace9e3ab36062e2e11b8445d41.tar.gz bcm5719-llvm-41dd31f0b095c4ace9e3ab36062e2e11b8445d41.zip |
[ValueTracking] Make isImpliedCondition return an Optional<bool>. NFC.
Phabricator Revision: http://reviews.llvm.org/D19277
llvm-svn: 266904
Diffstat (limited to 'llvm/lib/Transforms/Scalar/JumpThreading.cpp')
-rw-r--r-- | llvm/lib/Transforms/Scalar/JumpThreading.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/llvm/lib/Transforms/Scalar/JumpThreading.cpp b/llvm/lib/Transforms/Scalar/JumpThreading.cpp index d68dd140a80..7495baab1d9 100644 --- a/llvm/lib/Transforms/Scalar/JumpThreading.cpp +++ b/llvm/lib/Transforms/Scalar/JumpThreading.cpp @@ -928,10 +928,11 @@ bool JumpThreading::ProcessImpliedCondition(BasicBlock *BB) { if (!PBI || !PBI->isConditional() || PBI->getSuccessor(0) != CurrentBB) return false; - bool ImpliedTrue; - if (isImpliedCondition(PBI->getCondition(), Cond, ImpliedTrue, DL)) { - BI->getSuccessor(ImpliedTrue ? 1 : 0)->removePredecessor(BB); - BranchInst::Create(BI->getSuccessor(ImpliedTrue ? 0 : 1), BI); + Optional<bool> Implication = + isImpliedCondition(PBI->getCondition(), Cond, DL); + if (Implication) { + BI->getSuccessor(*Implication ? 1 : 0)->removePredecessor(BB); + BranchInst::Create(BI->getSuccessor(*Implication ? 0 : 1), BI); BI->eraseFromParent(); return true; } |