xref: /llvm-project/llvm/test/CodeGen/Generic/switch-lower-feature.ll (revision 534e1667a0544a8f3f04a636b35bcfa5a842eece)
1*534e1667SChris Lattner; RUN: llc < %s
26e300082SAnton Korobeynikov
3*534e1667SChris Lattnerdefine i32 @test(i32 %tmp158) {
46e300082SAnton Korobeynikoventry:
56e300082SAnton Korobeynikov        switch i32 %tmp158, label %bb336 [
66e300082SAnton Korobeynikov	         i32 120, label %bb338
76e300082SAnton Korobeynikov	         i32 121, label %bb338
86e300082SAnton Korobeynikov                 i32 122, label %bb338
96e300082SAnton Korobeynikov                 i32 123, label %bb338
106e300082SAnton Korobeynikov                 i32 124, label %bb338
116e300082SAnton Korobeynikov                 i32 125, label %bb338
126e300082SAnton Korobeynikov                 i32 126, label %bb338
136e300082SAnton Korobeynikov		 i32 1024, label %bb338
146e300082SAnton Korobeynikov                 i32 0, label %bb338
156e300082SAnton Korobeynikov                 i32 1, label %bb338
166e300082SAnton Korobeynikov                 i32 2, label %bb338
176e300082SAnton Korobeynikov                 i32 3, label %bb338
186e300082SAnton Korobeynikov                 i32 4, label %bb338
196e300082SAnton Korobeynikov		 i32 5, label %bb338
206e300082SAnton Korobeynikov        ]
216e300082SAnton Korobeynikovbb336:
226e300082SAnton Korobeynikov  ret i32 10
236e300082SAnton Korobeynikovbb338:
246e300082SAnton Korobeynikov  ret i32 11
256e300082SAnton Korobeynikov}
26*534e1667SChris Lattner
27*534e1667SChris Lattnerdefine i32 @test2(i32 %tmp158) {
28*534e1667SChris Lattnerentry:
29*534e1667SChris Lattner        switch i32 %tmp158, label %bb336 [
30*534e1667SChris Lattner	         i32 -2147483648, label %bb338
31*534e1667SChris Lattner		 i32 -2147483647, label %bb338
32*534e1667SChris Lattner		 i32 -2147483646, label %bb338
33*534e1667SChris Lattner	         i32 120, label %bb338
34*534e1667SChris Lattner	         i32 121, label %bb339
35*534e1667SChris Lattner                 i32 122, label %bb340
36*534e1667SChris Lattner                 i32 123, label %bb341
37*534e1667SChris Lattner                 i32 124, label %bb342
38*534e1667SChris Lattner                 i32 125, label %bb343
39*534e1667SChris Lattner                 i32 126, label %bb336
40*534e1667SChris Lattner		 i32 1024, label %bb338
41*534e1667SChris Lattner                 i32 0, label %bb338
42*534e1667SChris Lattner                 i32 1, label %bb338
43*534e1667SChris Lattner                 i32 2, label %bb338
44*534e1667SChris Lattner                 i32 3, label %bb338
45*534e1667SChris Lattner                 i32 4, label %bb338
46*534e1667SChris Lattner		 i32 5, label %bb338
47*534e1667SChris Lattner        ]
48*534e1667SChris Lattnerbb336:
49*534e1667SChris Lattner  ret i32 10
50*534e1667SChris Lattnerbb338:
51*534e1667SChris Lattner  ret i32 11
52*534e1667SChris Lattnerbb339:
53*534e1667SChris Lattner  ret i32 12
54*534e1667SChris Lattnerbb340:
55*534e1667SChris Lattner  ret i32 13
56*534e1667SChris Lattnerbb341:
57*534e1667SChris Lattner  ret i32 14
58*534e1667SChris Lattnerbb342:
59*534e1667SChris Lattner  ret i32 15
60*534e1667SChris Lattnerbb343:
61*534e1667SChris Lattner  ret i32 18
62*534e1667SChris Lattner
63*534e1667SChris Lattner}
64