aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/Local.cpp
diff options
context:
space:
mode:
authorManuel Jacob <me@manueljacob.de>2014-07-20 09:10:11 +0000
committerManuel Jacob <me@manueljacob.de>2014-07-20 09:10:11 +0000
commitd11beffef4f1117aceb9f2f5532b4a317c30c05a (patch)
treec0a3aa5e2d4225971366e16eac335aacf32f9eed /llvm/lib/Transforms/Utils/Local.cpp
parent4100ebd67b61abfb7fc7728e9af5dcc6e51327be (diff)
downloadllvm-d11beffef4f1117aceb9f2f5532b4a317c30c05a.zip
llvm-d11beffef4f1117aceb9f2f5532b4a317c30c05a.tar.gz
llvm-d11beffef4f1117aceb9f2f5532b4a317c30c05a.tar.bz2
[C++11] Add predecessors(BasicBlock *) / successors(BasicBlock *) iterator ranges.
Summary: This patch introduces two new iterator ranges and updates existing code to use it. No functional change intended. Test Plan: All tests (make check-all) still pass. Reviewers: dblaikie Reviewed By: dblaikie Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D4481 llvm-svn: 213474
Diffstat (limited to 'llvm/lib/Transforms/Utils/Local.cpp')
-rw-r--r--llvm/lib/Transforms/Utils/Local.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/llvm/lib/Transforms/Utils/Local.cpp b/llvm/lib/Transforms/Utils/Local.cpp
index a5e443f..113a2ae 100644
--- a/llvm/lib/Transforms/Utils/Local.cpp
+++ b/llvm/lib/Transforms/Utils/Local.cpp
@@ -1129,8 +1129,8 @@ static void changeToUnreachable(Instruction *I, bool UseLLVMTrap) {
BasicBlock *BB = I->getParent();
// Loop over all of the successors, removing BB's entry from any PHI
// nodes.
- for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); SI != SE; ++SI)
- (*SI)->removePredecessor(BB);
+ for (BasicBlock *Succ : successors(BB))
+ Succ->removePredecessor(BB);
// Insert a call to llvm.trap right before this. This turns the undefined
// behavior into a hard fail instead of falling through into random code.
@@ -1236,9 +1236,9 @@ static bool markAliveBlocks(BasicBlock *BB,
}
Changed |= ConstantFoldTerminator(BB, true);
- for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); SI != SE; ++SI)
- if (Reachable.insert(*SI))
- Worklist.push_back(*SI);
+ for (BasicBlock *Succ : successors(BB))
+ if (Reachable.insert(Succ))
+ Worklist.push_back(Succ);
} while (!Worklist.empty());
return Changed;
}
@@ -1263,9 +1263,9 @@ bool llvm::removeUnreachableBlocks(Function &F) {
if (Reachable.count(BB))
continue;
- for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); SI != SE; ++SI)
- if (Reachable.count(*SI))
- (*SI)->removePredecessor(BB);
+ for (BasicBlock *Succ : successors(BB))
+ if (Reachable.count(Succ))
+ Succ->removePredecessor(BB);
BB->dropAllReferences();
}