xref: /llvm-project/llvm/test/CodeGen/Hexagon/jump-table-g0.ll (revision 2208c97c1bec2512d4e47b6223db6d95a7037956)
1; RUN: llc -mtriple=hexagon -hexagon-small-data-threshold=0 < %s
2; REQUIRES: asserts
3
4; Check for successful compilation.
5
6; Function Attrs: nounwind
7declare void @f0(i32) #0
8
9; Function Attrs: nounwind
10define i32 @f1(i32 %a0) #0 {
11b0:
12  switch i32 %a0, label %b1 [
13    i32 1, label %b2
14    i32 2, label %b3
15    i32 3, label %b4
16    i32 4, label %b5
17    i32 5, label %b6
18  ]
19
20b1:                                               ; preds = %b0
21  ret i32 0
22
23b2:                                               ; preds = %b0
24  call void @f0(i32 4)
25  ret i32 4
26
27b3:                                               ; preds = %b0
28  call void @f0(i32 2)
29  call void @f0(i32 42)
30  ret i32 42
31
32b4:                                               ; preds = %b0
33  call void @f0(i32 -1)
34  ret i32 -1
35
36b5:                                               ; preds = %b0
37  call void @f0(i32 123)
38  ret i32 123
39
40b6:                                               ; preds = %b0
41  call void @f0(i32 88)
42  ret i32 4
43}
44
45attributes #0 = { nounwind }
46