diff --git a/test/Analysis/Dominators/2006-10-02-BreakCritEdges.ll b/test/Analysis/Dominators/2006-10-02-BreakCritEdges.ll new file mode 100644 index 00000000000..cce885beec6 --- /dev/null +++ b/test/Analysis/Dominators/2006-10-02-BreakCritEdges.ll @@ -0,0 +1,20 @@ +; RUN: llvm-as < %s | opt -domtree -break-crit-edges -analyze -domtree | grep '3.*%brtrue$' +; PR932 +implementation ; Functions: + +declare void %use1(int) + +void %f(int %i, bool %c) { +entry: + %A = seteq int %i, 0 ; [#uses=1] + br bool %A, label %brtrue, label %brfalse + +brtrue: ; preds = %brtrue, %entry + %B = phi bool [ true, %brtrue ], [ false, %entry ] ; [#uses=1] + call void %use1( int %i ) + br bool %B, label %brtrue, label %brfalse + +brfalse: ; preds = %brtrue, %entry + call void %use1( int %i ) + ret void +}