2008-02-14 14:56:27 +08:00
|
|
|
; RUN: llvm-as < %s | opt -domtree -break-crit-edges -analyze \
|
2007-08-06 14:17:08 +08:00
|
|
|
; RUN: -domtree | grep {3.*%brtrue }
|
2006-10-03 15:00:13 +08:00
|
|
|
; PR932
|
|
|
|
|
2008-02-14 14:56:27 +08:00
|
|
|
declare void @use1(i32)
|
2006-10-03 15:00:13 +08:00
|
|
|
|
2008-02-14 14:56:27 +08:00
|
|
|
define void @f(i32 %i, i1 %c) {
|
2006-10-03 15:00:13 +08:00
|
|
|
entry:
|
2008-02-14 14:56:27 +08:00
|
|
|
%A = icmp eq i32 %i, 0 ; <i1> [#uses=1]
|
|
|
|
br i1 %A, label %brtrue, label %brfalse
|
2006-10-03 15:00:13 +08:00
|
|
|
|
|
|
|
brtrue: ; preds = %brtrue, %entry
|
2008-02-14 14:56:27 +08:00
|
|
|
%B = phi i1 [ true, %brtrue ], [ false, %entry ] ; <i1> [#uses=1]
|
|
|
|
call void @use1( i32 %i )
|
|
|
|
br i1 %B, label %brtrue, label %brfalse
|
2006-10-03 15:00:13 +08:00
|
|
|
|
|
|
|
brfalse: ; preds = %brtrue, %entry
|
2008-02-14 14:56:27 +08:00
|
|
|
call void @use1( i32 %i )
|
2006-10-03 15:00:13 +08:00
|
|
|
ret void
|
|
|
|
}
|