1 ; RUN: opt < %s -simplifycfg -adce -S | \
2 ; RUN: not grep "call void @f1"
13 define i32 @test1(i32 %X, i1 %D) {
15 %C = icmp eq i32 %X, 0 ; <i1> [#uses=2]
16 br i1 %C, label %T, label %F
18 br i1 %C, label %B, label %A
21 br i1 %D, label %T, label %F
30 define i32 @test2(i32 %X, i1 %D) {
32 %C = icmp eq i32 %X, 0 ; <i1> [#uses=2]
33 br i1 %C, label %T, label %F
35 %P = phi i1 [ true, %E ], [ %C, %A ] ; <i1> [#uses=1]
36 br i1 %P, label %B, label %A
39 br i1 %D, label %T, label %F
48 define i32 @test3(i32 %X, i1 %D, i32* %AP, i32* %BP) {
50 %C = icmp eq i32 %X, 0 ; <i1> [#uses=2]
51 br i1 %C, label %T, label %F
54 %XX = load i32, i32* %AP ; <i32> [#uses=1]
55 store i32 %XX, i32* %BP
56 br i1 %C, label %B, label %A
59 br i1 %D, label %T, label %F