diff options
author | Alon Zakai <alonzakai@gmail.com> | 2014-01-11 18:07:31 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2014-01-11 18:07:31 -0800 |
commit | 0bb7d8093a98b8bd41b9eeeaf8bde671f0b9894e (patch) | |
tree | 19e7dab1a54605a2ac8294f93aba2590fd5a4617 /tests/cases/switch64b_ta2.ll | |
parent | 9f74e557418e58ecdac3c9fc9c82c733bab1f308 (diff) |
more i64 switch tests
Diffstat (limited to 'tests/cases/switch64b_ta2.ll')
-rw-r--r-- | tests/cases/switch64b_ta2.ll | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/cases/switch64b_ta2.ll b/tests/cases/switch64b_ta2.ll new file mode 100644 index 00000000..4364725f --- /dev/null +++ b/tests/cases/switch64b_ta2.ll @@ -0,0 +1,54 @@ +target datalayout = "e-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-p:32:32:32-v128:32:32" +target triple = "le32-unknown-nacl" + +@.str = private constant [18 x i8] c"hello, world: %d\0A\00", align 1 + +declare i32 @printf(i8*, ...) + +define linkonce_odr i32 @main() align 2 { + %a333 = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([18 x i8]* @.str, i32 0, i32 0), i32 5) + %a400 = zext i32 %a333 to i64 + %a444 = udiv i64 %a400, 3 + switch i64 %a444, label %label999 [ + i64 0, label %label9950 + i64 1, label %label9951 + i64 2, label %label9952 + i64 3, label %label9953 + i64 4, label %label9954 + i64 5, label %label9955 + i64 6, label %label9956 + i64 7, label %label9957 + i64 8, label %label9958 + i64 9, label %label9959 + ] + +label9950: + %waka = phi i32 [11000, %0], [10, %label9951], [11, %label9952], [12, %label9953], [13, %label9954], [14, %label9955], [15, %label9956], [16, %label9957], [17, %label9958], [18, %label9959] + %a333b = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([18 x i8]* @.str, i32 0, i32 0), i32 %waka) + br label %label999 + +label9951: + br label %label9950 +label9952: + br label %label9950 +label9953: + br label %label9950 +label9954: + br label %label9950 +label9955: + br label %label9950 +label9956: + br label %label9950 +label9957: + br label %label9950 +label9958: + br label %label9950 +label9959: + br label %label9950 + +label999: ; preds = %555 + %last = phi i32 [1, %0], [2, %label9950] + %a333c = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([18 x i8]* @.str, i32 0, i32 0), i32 %last) + ret i32 0 +} + |