aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/CodeGen/StrongPHIElimination.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/CodeGen/StrongPHIElimination.cpp b/lib/CodeGen/StrongPHIElimination.cpp
index 3b201f7b81..eff02f1fbf 100644
--- a/lib/CodeGen/StrongPHIElimination.cpp
+++ b/lib/CodeGen/StrongPHIElimination.cpp
@@ -178,7 +178,6 @@ public:
else if (preorder[ABlock] > preorder[BBlock])
return false;
- assert(0 && "Error sorting by dominance!");
return false;
}
};
@@ -208,8 +207,9 @@ StrongPHIElimination::computeDomForest(std::set<unsigned>& regs) {
for (std::vector<unsigned>::iterator I = worklist.begin(), E = worklist.end();
I != E; ++I) {
unsigned pre = preorder[LV.getVarInfo(*I).DefInst->getParent()];
- MachineBasicBlock* parentBlock =
- LV.getVarInfo(CurrentParent->getReg()).DefInst->getParent();
+ MachineBasicBlock* parentBlock = CurrentParent->getReg() ?
+ LV.getVarInfo(CurrentParent->getReg()).DefInst->getParent() :
+ 0;
while (pre > maxpreorder[parentBlock]) {
stack.pop_back();