aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/CodeGen/CodePlacementOpt.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/CodeGen/CodePlacementOpt.cpp b/lib/CodeGen/CodePlacementOpt.cpp
index f6a8421..4276651 100644
--- a/lib/CodeGen/CodePlacementOpt.cpp
+++ b/lib/CodeGen/CodePlacementOpt.cpp
@@ -211,7 +211,8 @@ bool CodePlacementOpt::OptimizeIntraLoopEdges() {
} else if (!FBB && SSMBB == TBB && Cond.empty()) {
TBB = 0;
--Cost;
- } else if (!TII->ReverseBranchCondition(Cond)) {
+ } else if (!Cond.empty() && !TII->ReverseBranchCondition(Cond)) {
+ assert(SSMBB == TBB);
TBB = FBB;
FBB = 0;
--Cost;