[InstCombine] Signed saturation patterns
[llvm-core.git] / test / CodeGen / ARM / switch-minsize.ll
blob92af6b35c3c5d34f251c1ad1b63e5e6f59ccbd5f
1 ; RUN: llc < %s | FileCheck %s
3 target datalayout = "e-m:o-p:32:32-f64:32:64-v64:32:64-v128:32:128-a:0:32-n32-S32"
4 target triple = "thumbv7-apple-ios8.0.0"
6 ; CHECK: beq
7 ; CHECK: beq
8 ; CHECK: beq
9 ; CHECK: cbnz
10 declare void @g(i32)
11 define void @f(i32 %val) optsize minsize {
12   switch i32 %val, label %def [
13     i32 0, label %one
14     i32 9, label %two
15     i32 994, label %three
16     i32 1154, label %four
17   ]
18   
19 one:
20   call void @g(i32 1)
21   ret void
22 two:
23   call void @g(i32 001)
24   ret void
25 three:
26   call void @g(i32 78)
27   ret void
28 four:
29   call void @g(i32 87)
30   ret void
31 def:
32   call void @g(i32 11)
33   ret void