blob: 4d0ebda0c0351ca0035fb04351fc6749d556e082 [file] [log] [blame]
Dan Gohmanfce288f2009-09-09 00:09:15 +00001; RUN: llc < %s | grep cgfi | count 8
2; RUN: llc < %s | grep clgfi | count 2
Anton Korobeynikovecf22d52009-07-16 13:53:15 +00003
4target datalayout = "E-p:64:64:64-i1:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f128:128:128"
5target triple = "s390x-unknown-linux-gnu"
6
7define void @foo(i64 %a, i64 %b) nounwind {
8entry:
9 %cmp = icmp eq i64 %a, 0 ; <i1> [#uses=1]
10 br i1 %cmp, label %if.then, label %if.end
11
12if.then: ; preds = %entry
13 tail call void @bar() nounwind
14 ret void
15
16if.end: ; preds = %entry
17 ret void
18}
19
20declare void @bar()
21
22define void @foo1(i64 %a, i64 %b) nounwind {
23entry:
24 %cmp = icmp ugt i64 %a, 1 ; <i1> [#uses=1]
25 br i1 %cmp, label %if.then, label %if.end
26
27if.then: ; preds = %entry
28 tail call void @bar() nounwind
29 ret void
30
31if.end: ; preds = %entry
32 ret void
33}
34
35define void @foo2(i64 %a, i64 %b) nounwind {
36entry:
37 %cmp = icmp ugt i64 %a, 1 ; <i1> [#uses=1]
38 br i1 %cmp, label %if.end, label %if.then
39
40if.then: ; preds = %entry
41 tail call void @bar() nounwind
42 ret void
43
44if.end: ; preds = %entry
45 ret void
46}
47
48define void @foo3(i64 %a) nounwind {
49entry:
50 %cmp = icmp eq i64 %a, 0 ; <i1> [#uses=1]
51 br i1 %cmp, label %if.end, label %if.then
52
53if.then: ; preds = %entry
54 tail call void @bar() nounwind
55 ret void
56
57if.end: ; preds = %entry
58 ret void
59}
60
61define void @foo4(i64 %a) nounwind {
62entry:
63 %cmp = icmp eq i64 %a, 1 ; <i1> [#uses=1]
64 br i1 %cmp, label %if.then, label %if.end
65
66if.then: ; preds = %entry
67 tail call void @bar() nounwind
68 ret void
69
70if.end: ; preds = %entry
71 ret void
72}
73
74define void @foo5(i64 %a) nounwind {
75entry:
76 %cmp = icmp eq i64 %a, 1 ; <i1> [#uses=1]
77 br i1 %cmp, label %if.end, label %if.then
78
79if.then: ; preds = %entry
80 tail call void @bar() nounwind
81 ret void
82
83if.end: ; preds = %entry
84 ret void
85}
86
87define void @foo6(i64 %a) nounwind {
88entry:
89 %cmp = icmp slt i64 %a, 1 ; <i1> [#uses=1]
90 br i1 %cmp, label %if.then, label %if.end
91
92if.then: ; preds = %entry
93 tail call void @bar() nounwind
94 ret void
95
96if.end: ; preds = %entry
97 ret void
98}
99
100define void @foo7(i64 %a) nounwind {
101entry:
102 %cmp = icmp sgt i64 %a, 1 ; <i1> [#uses=1]
103 br i1 %cmp, label %if.then, label %if.end
104
105if.then: ; preds = %entry
106 tail call void @bar() nounwind
107 ret void
108
109if.end: ; preds = %entry
110 ret void
111}
112
113define void @foo8(i64 %a) nounwind {
114entry:
115 %cmp = icmp sgt i64 %a, 1 ; <i1> [#uses=1]
116 br i1 %cmp, label %if.end, label %if.then
117
118if.then: ; preds = %entry
119 tail call void @bar() nounwind
120 ret void
121
122if.end: ; preds = %entry
123 ret void
124}
125
126define void @foo9(i64 %a) nounwind {
127entry:
128 %cmp = icmp slt i64 %a, 1 ; <i1> [#uses=1]
129 br i1 %cmp, label %if.end, label %if.then
130
131if.then: ; preds = %entry
132 tail call void @bar() nounwind
133 ret void
134
135if.end: ; preds = %entry
136 ret void
137}