Clean up ConstantRange a bit:
[llvm.git] / test / CodeGen / SystemZ / 07-CmpImm.ll
blob4d0ebda0c0351ca0035fb04351fc6749d556e082
1 ; RUN: llc < %s | grep cgfi | count 8
2 ; RUN: llc < %s | grep clgfi | count 2
4 target 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"
5 target triple = "s390x-unknown-linux-gnu"
7 define void @foo(i64 %a, i64 %b) nounwind {
8 entry:
9         %cmp = icmp eq i64 %a, 0                ; <i1> [#uses=1]
10         br i1 %cmp, label %if.then, label %if.end
12 if.then:                ; preds = %entry
13         tail call void @bar() nounwind
14         ret void
16 if.end:         ; preds = %entry
17         ret void
20 declare void @bar()
22 define void @foo1(i64 %a, i64 %b) nounwind {
23 entry:
24         %cmp = icmp ugt i64 %a, 1               ; <i1> [#uses=1]
25         br i1 %cmp, label %if.then, label %if.end
27 if.then:                ; preds = %entry
28         tail call void @bar() nounwind
29         ret void
31 if.end:         ; preds = %entry
32         ret void
35 define void @foo2(i64 %a, i64 %b) nounwind {
36 entry:
37         %cmp = icmp ugt i64 %a, 1               ; <i1> [#uses=1]
38         br i1 %cmp, label %if.end, label %if.then
40 if.then:                ; preds = %entry
41         tail call void @bar() nounwind
42         ret void
44 if.end:         ; preds = %entry
45         ret void
48 define void @foo3(i64 %a) nounwind {
49 entry:
50         %cmp = icmp eq i64 %a, 0                ; <i1> [#uses=1]
51         br i1 %cmp, label %if.end, label %if.then
53 if.then:                ; preds = %entry
54         tail call void @bar() nounwind
55         ret void
57 if.end:         ; preds = %entry
58         ret void
61 define void @foo4(i64 %a) nounwind {
62 entry:
63         %cmp = icmp eq i64 %a, 1                ; <i1> [#uses=1]
64         br i1 %cmp, label %if.then, label %if.end
66 if.then:                ; preds = %entry
67         tail call void @bar() nounwind
68         ret void
70 if.end:         ; preds = %entry
71         ret void
74 define void @foo5(i64 %a) nounwind {
75 entry:
76         %cmp = icmp eq i64 %a, 1                ; <i1> [#uses=1]
77         br i1 %cmp, label %if.end, label %if.then
79 if.then:                ; preds = %entry
80         tail call void @bar() nounwind
81         ret void
83 if.end:         ; preds = %entry
84         ret void
87 define void @foo6(i64 %a) nounwind {
88 entry:
89         %cmp = icmp slt i64 %a, 1               ; <i1> [#uses=1]
90         br i1 %cmp, label %if.then, label %if.end
92 if.then:                ; preds = %entry
93         tail call void @bar() nounwind
94         ret void
96 if.end:         ; preds = %entry
97         ret void
100 define void @foo7(i64 %a) nounwind {
101 entry:
102         %cmp = icmp sgt i64 %a, 1               ; <i1> [#uses=1]
103         br i1 %cmp, label %if.then, label %if.end
105 if.then:                ; preds = %entry
106         tail call void @bar() nounwind
107         ret void
109 if.end:         ; preds = %entry
110         ret void
113 define void @foo8(i64 %a) nounwind {
114 entry:
115         %cmp = icmp sgt i64 %a, 1               ; <i1> [#uses=1]
116         br i1 %cmp, label %if.end, label %if.then
118 if.then:                ; preds = %entry
119         tail call void @bar() nounwind
120         ret void
122 if.end:         ; preds = %entry
123         ret void
126 define void @foo9(i64 %a) nounwind {
127 entry:
128         %cmp = icmp slt i64 %a, 1               ; <i1> [#uses=1]
129         br i1 %cmp, label %if.end, label %if.then
131 if.then:                ; preds = %entry
132         tail call void @bar() nounwind
133         ret void
135 if.end:         ; preds = %entry
136         ret void