[docs] Add LICENSE.txt to the root of the mono-repo
[llvm-project.git] / llvm / test / Bitcode / case-ranges-3.3.ll
blob5d538da9877e6f609703f34a46568219e25f7821
1 ; RUN:  llvm-dis -opaque-pointers=0 < %s.bc| FileCheck %s
2 ; RUN:  llvm-dis -opaque-pointers=1 < %s.bc| FileCheck %s
3 ; RUN:  verify-uselistorder < %s.bc
5 ; case-ranges.ll.bc was generated by passing this file to llvm-as from the 3.3
6 ; release of LLVM. This tests that the bitcode for switches from that release
7 ; can still be read.
9 define i32 @foo(i32 %x) nounwind ssp uwtable {
10 ; CHECK: define i32 @foo
11   %1 = alloca i32, align 4
12   %2 = alloca i32, align 4
13   store i32 %x, i32* %2, align 4
14   %3 = load i32, i32* %2, align 4
15   switch i32 %3, label %9 [
16 ; CHECK: switch i32 %3, label %9
17     i32 -3, label %4
18 ; CHECK-NEXT: i32 -3, label %4
19     i32 -2, label %4
20 ; CHECK-NEXT: i32 -2, label %4
21     i32 -1, label %4
22 ; CHECK-NEXT: i32 -1, label %4
23     i32 0, label %4
24 ; CHECK-NEXT: i32 0, label %4
25     i32 1, label %4
26 ; CHECK-NEXT: i32 1, label %4
27     i32 2, label %4
28 ; CHECK-NEXT: i32 2, label %4
29     i32 4, label %5
30 ; CHECK-NEXT: i32 4, label %5
31     i32 5, label %6
32 ; CHECK-NEXT: i32 5, label %6
33     i32 6, label %7
34 ; CHECK-NEXT: i32 6, label %7
35     i32 7, label %8
36 ; CHECK-NEXT: i32 7, label %8
37   ]
39 ; <label>:4
40   store i32 -1, i32* %1
41   br label %11
43 ; <label>:5
44   store i32 2, i32* %1
45   br label %11
47 ; <label>:6
48   store i32 1, i32* %1
49   br label %11
51 ; <label>:7
52   store i32 4, i32* %1
53   br label %11
55 ; <label>:8
56   store i32 3, i32* %1
57   br label %11
59 ; <label>:9
60   br label %10
62 ; <label>:10
63   store i32 0, i32* %1
64   br label %11
66 ; <label>:11
67   %12 = load i32, i32* %1
68   ret i32 %12