temporarily disable part of my previous patch, which causes an iterator invalidation issue, causing a crash on some versions of perlbmk.

llvm-svn: 121728
This commit is contained in:
Chris Lattner 2010-12-13 23:02:19 +00:00
parent 3cb55a1d23
commit a6e5d5694a
2 changed files with 36 additions and 15 deletions

View File

@ -1515,7 +1515,7 @@ bool llvm::FoldBranchToCommonDest(BranchInst *BI) {
AddPredecessorToBlock(FalseDest, PredBlock, BB);
PBI->setSuccessor(1, FalseDest);
}
return SimplifyCFG(PBI->getParent()) | true;
return SimplifyCFG(BB) | true;
}
return false;
}

View File

@ -253,21 +253,21 @@ lor.end: ; preds = %lor.rhs, %lor.lhs.f
ret i32 %conv46
; CHECK: @test9
; CHECK: %cmp = icmp ult i8 %c, 33
; CHECK: br i1 %cmp, label %lor.end, label %switch.early.test
; HECK: %cmp = icmp ult i8 %c, 33
; HECK: br i1 %cmp, label %lor.end, label %switch.early.test
; CHECK: switch.early.test:
; CHECK: switch i8 %c, label %lor.rhs [
; CHECK: i8 46, label %lor.end
; CHECK: i8 44, label %lor.end
; CHECK: i8 58, label %lor.end
; CHECK: i8 59, label %lor.end
; CHECK: i8 60, label %lor.end
; CHECK: i8 62, label %lor.end
; CHECK: i8 34, label %lor.end
; CHECK: i8 92, label %lor.end
; CHECK: i8 39, label %lor.end
; CHECK: ]
; HECK: switch.early.test:
; HECK: switch i8 %c, label %lor.rhs [
; HECK: i8 46, label %lor.end
; HECK: i8 44, label %lor.end
; HECK: i8 58, label %lor.end
; HECK: i8 59, label %lor.end
; HECK: i8 60, label %lor.end
; HECK: i8 62, label %lor.end
; HECK: i8 34, label %lor.end
; HECK: i8 92, label %lor.end
; HECK: i8 39, label %lor.end
; HECK: ]
}
define i32 @test10(i32 %mode, i1 %Cond) {
@ -331,3 +331,24 @@ return: ; preds = %if.end, %if.then
; CHECK: i32 4, label %return
; CHECK: ]
}
define void @test12() nounwind {
entry:
br label %bb49.us.us
bb49.us.us:
%A = icmp eq i32 undef, undef
br i1 %A, label %bb55.us.us, label %malformed
bb48.us.us:
%B = icmp ugt i32 undef, undef
br i1 %B, label %bb55.us.us, label %bb49.us.us
bb55.us.us:
br label %bb48.us.us
malformed:
ret void
; CHECK: @test12
}