summaryrefslogtreecommitdiff
path: root/test/Analysis/Dominators/2006-10-02-BreakCritEdges.ll
blob: cce61f68401672774e0bdf80d1a653a179afe846 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
; RUN: llvm-upgrade < %s | llvm-as | opt -domtree -break-crit-edges -analyze \
; RUN:  -domtree | grep {3.*%brtrue }
; PR932
implementation   ; Functions:

declare void %use1(int)

void %f(int %i, bool %c) {
entry:
	%A = seteq int %i, 0		; <bool> [#uses=1]
	br bool %A, label %brtrue, label %brfalse

brtrue:		; preds = %brtrue, %entry
	%B = phi bool [ true, %brtrue ], [ false, %entry ]		; <bool> [#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
}