@@ -5,7 +5,6 @@ define i16 @test1() {
5
5
; CHECK-LABEL: @test1(
6
6
; CHECK-NEXT: entry:
7
7
; CHECK-NEXT: [[SPEC_SELECT:%.*]] = select i1 undef, i16 1, i16 0
8
- ; CHECK-NEXT: call void @callee(i16 0)
9
8
; CHECK-NEXT: br label [[FOR_COND12:%.*]]
10
9
; CHECK: for.cond12:
11
10
; CHECK-NEXT: call void @callee(i16 [[SPEC_SELECT]])
@@ -28,12 +27,11 @@ define i16 @test2() {
28
27
; CHECK-LABEL: @test2(
29
28
; CHECK-NEXT: entry:
30
29
; CHECK-NEXT: [[S:%.*]] = select i1 undef, i16 1, i16 0
31
- ; CHECK-NEXT: call void @callee(i16 0)
32
30
; CHECK-NEXT: br label [[FOR_COND12:%.*]]
33
31
; CHECK: for.cond12:
32
+ ; CHECK-NEXT: call void @callee(i16 [[S]])
34
33
; CHECK-NEXT: [[ADD:%.*]] = add i16 [[S]], 10
35
34
; CHECK-NEXT: [[ADD2:%.*]] = add i16 [[S]], 10
36
- ; CHECK-NEXT: call void @callee(i16 [[S]])
37
35
; CHECK-NEXT: br label [[FOR_COND12]]
38
36
;
39
37
entry:
@@ -55,15 +53,12 @@ define i16 @test3() {
55
53
; CHECK-LABEL: @test3(
56
54
; CHECK-NEXT: entry:
57
55
; CHECK-NEXT: [[S:%.*]] = select i1 undef, i16 1, i16 0
58
- ; CHECK-NEXT: call void @callee(i16 0)
59
56
; CHECK-NEXT: br label [[FOR_COND12:%.*]]
60
57
; CHECK: for.cond12:
58
+ ; CHECK-NEXT: call void @callee(i16 [[S]])
61
59
; CHECK-NEXT: [[ADD:%.*]] = add i16 [[S]], 10
62
60
; CHECK-NEXT: [[ADD2:%.*]] = add i16 [[ADD]], 10
63
- ; CHECK-NEXT: br i1 undef, label [[FOR_COND12_SPLIT:%.*]], label [[EXIT:%.*]]
64
- ; CHECK: for.cond12.split:
65
- ; CHECK-NEXT: call void @callee(i16 [[S]])
66
- ; CHECK-NEXT: br label [[FOR_COND12]]
61
+ ; CHECK-NEXT: br i1 undef, label [[FOR_COND12]], label [[EXIT:%.*]]
67
62
; CHECK: exit:
68
63
; CHECK-NEXT: ret i16 [[ADD2]]
69
64
;
85
80
ret i16 %add2
86
81
}
87
82
88
- define internal void @callee (i16 %flag ) {
89
- ret void
90
- }
83
+ declare void @callee (i16 %flag )
0 commit comments