60 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s | FileCheck %s3 4target datalayout = "e-m:o-p:32:32-f64:32:64-v64:32:64-v128:32:128-a:0:32-n32-S32"5target triple = "thumbv7-apple-ios8.0.0"6 7declare void @g(i32)8define void @f(i32 %val) optsize minsize {9; CHECK-LABEL: f:10; CHECK: @ %bb.0:11; CHECK-NEXT: mov r1, r012; CHECK-NEXT: movs r0, #113; CHECK-NEXT: cbz r1, LBB0_614; CHECK-NEXT: @ %bb.1:15; CHECK-NEXT: movw r2, #115416; CHECK-NEXT: cmp r1, r217; CHECK-NEXT: beq LBB0_418; CHECK-NEXT: @ %bb.2:19; CHECK-NEXT: movw r2, #99420; CHECK-NEXT: cmp r1, r221; CHECK-NEXT: beq LBB0_522; CHECK-NEXT: @ %bb.3:23; CHECK-NEXT: cmp r1, #924; CHECK-NEXT: it ne25; CHECK-NEXT: movne r0, #1126; CHECK-NEXT: b LBB0_627; CHECK-NEXT: LBB0_4: @ %four28; CHECK-NEXT: movs r0, #8729; CHECK-NEXT: b LBB0_630; CHECK-NEXT: LBB0_5: @ %three31; CHECK-NEXT: movs r0, #7832; CHECK-NEXT: LBB0_6: @ %common.ret33; CHECK-NEXT: str lr, [sp, #-4]!34; CHECK-NEXT: bl _g35; CHECK-NEXT: ldr lr, [sp], #436; CHECK-NEXT: bx lr37 switch i32 %val, label %def [38 i32 0, label %one39 i32 9, label %two40 i32 994, label %three41 i32 1154, label %four42 ]43 44one:45 call void @g(i32 1)46 ret void47two:48 call void @g(i32 001)49 ret void50three:51 call void @g(i32 78)52 ret void53four:54 call void @g(i32 87)55 ret void56def:57 call void @g(i32 11)58 ret void59}60