diff options
Diffstat (limited to 'test/CodeGen/CellSPU/jumptable.ll')
-rw-r--r-- | test/CodeGen/CellSPU/jumptable.ll | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/CodeGen/CellSPU/jumptable.ll b/test/CodeGen/CellSPU/jumptable.ll new file mode 100644 index 0000000..d7d1ef4 --- /dev/null +++ b/test/CodeGen/CellSPU/jumptable.ll @@ -0,0 +1,21 @@ +;RUN: llc --march=cellspu %s -o - | FileCheck %s +; This is to check that emitting jumptables doesn't crash llc +define i32 @test(i32 %param) { +entry: +;CHECK: ai $4, $3, -1 +;CHECK: clgti $5, $4, 3 +;CHECK: brnz $5,.LBB0_2 + switch i32 %param, label %bb1 [ + i32 1, label %bb3 + i32 2, label %bb2 + i32 3, label %bb3 + i32 4, label %bb1 + ] + +bb1: + ret i32 1 +bb2: + ret i32 2 +bb3: + ret i32 3 +} |