Forgot to check for if iterator reached the end.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37420 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/IfConversion.cpp b/lib/CodeGen/IfConversion.cpp
index 57862eb..95a5394 100644
--- a/lib/CodeGen/IfConversion.cpp
+++ b/lib/CodeGen/IfConversion.cpp
@@ -441,8 +441,9 @@
/// isNextBlock - Returns true either if ToBB the next block after BB or
/// that all the intervening blocks are empty.
static bool isNextBlock(MachineBasicBlock *BB, MachineBasicBlock *ToBB) {
+ MachineFunction *MF = BB->getParent();
MachineFunction::iterator I = BB;
- while (++I != MachineFunction::iterator(ToBB))
+ while (++I != MF->end() && I != MachineFunction::iterator(ToBB))
if (!I->empty())
return false;
return true;