mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-12 13:38:21 +00:00
[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 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@213474 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -4512,13 +4512,12 @@ ScalarEvolution::ComputeExitLimit(const Loop *L, BasicBlock *ExitingBlock) {
|
||||
// lead to the loop header.
|
||||
bool MustExecuteLoopHeader = true;
|
||||
BasicBlock *Exit = nullptr;
|
||||
for (succ_iterator SI = succ_begin(ExitingBlock), SE = succ_end(ExitingBlock);
|
||||
SI != SE; ++SI)
|
||||
if (!L->contains(*SI)) {
|
||||
for (BasicBlock *Succ : successors(ExitingBlock))
|
||||
if (!L->contains(Succ)) {
|
||||
if (Exit) // Multiple exit successors.
|
||||
return getCouldNotCompute();
|
||||
Exit = *SI;
|
||||
} else if (*SI != L->getHeader()) {
|
||||
Exit = Succ;
|
||||
} else if (Succ != L->getHeader()) {
|
||||
MustExecuteLoopHeader = false;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user