diff options
author | Chris Lattner <sabre@nondot.org> | 2010-12-13 01:28:06 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-12-13 01:28:06 +0000 |
commit | 7cb7867d7ad122d7451406222a73b30eb083024b (patch) | |
tree | 16cea382b5c2f5545d76b7a804429c04f20ce933 /llvm/lib/Transforms/Utils/SimplifyCFG.cpp | |
parent | 481144790c47ee5c6be12446f6aa1f010128bb80 (diff) | |
download | bcm5719-llvm-7cb7867d7ad122d7451406222a73b30eb083024b.tar.gz bcm5719-llvm-7cb7867d7ad122d7451406222a73b30eb083024b.zip |
use getFirstNonPHIOrDbg to simplify this code.
llvm-svn: 121664
Diffstat (limited to 'llvm/lib/Transforms/Utils/SimplifyCFG.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/SimplifyCFG.cpp | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/llvm/lib/Transforms/Utils/SimplifyCFG.cpp b/llvm/lib/Transforms/Utils/SimplifyCFG.cpp index 8e3ca419af8..0e6ab1354e3 100644 --- a/llvm/lib/Transforms/Utils/SimplifyCFG.cpp +++ b/llvm/lib/Transforms/Utils/SimplifyCFG.cpp @@ -1940,15 +1940,11 @@ bool SimplifyCFGOpt::run(BasicBlock *BB) { } } else if (BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator())) { if (BI->isUnconditional()) { - BasicBlock::iterator BBI = BB->getFirstNonPHI(); - - // Ignore dbg intrinsics. - while (isa<DbgInfoIntrinsic>(BBI)) - ++BBI; - if (BBI->isTerminator()) // Terminator is the only non-phi instruction! - if (BB != &Fn->getEntryBlock()) - if (TryToSimplifyUncondBranchFromEmptyBlock(BB)) - return true; + // If the Terminator is the only non-phi instruction, simplify the block. + Instruction *I = BB->getFirstNonPHIOrDbg(); + if (I->isTerminator() && BB != &Fn->getEntryBlock() && + TryToSimplifyUncondBranchFromEmptyBlock(BB)) + return true; } else { // Conditional branch if (isValueEqualityComparison(BI)) { |