brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · 7cd1b75 Raw
58 lines · plain
1; RUN: llc < %s | FileCheck %s2 3target datalayout = "e-p:16:16:16-i8:8:8-i16:16:16-i32:16:32-n8:16"4target triple = "msp430---elf"5 6; Function Attrs: nounwind7define i16 @test(i16 %i) #0 {8entry:9; CHECK-LABEL: test:10; CHECK:      sub   #4, r111; CHECK:      mov   r12, 0(r1)12; CHECK-NEXT: cmp   #4, r1213; CHECK-NEXT: jhs     .LBB0_314  %retval = alloca i16, align 215  %i.addr = alloca i16, align 216  store i16 %i, ptr %i.addr, align 217  %0 = load i16, ptr %i.addr, align 218; CHECK:      add   r12, r1219; CHECK-NEXT: br .LJTI0_0(r12)20  switch i16 %0, label %sw.default [21    i16 0, label %sw.bb22    i16 1, label %sw.bb123    i16 2, label %sw.bb224    i16 3, label %sw.bb325  ]26 27sw.bb:                                            ; preds = %entry28  store i16 0, ptr %retval29  br label %return30 31sw.bb1:                                           ; preds = %entry32  store i16 1, ptr %retval33  br label %return34 35sw.bb2:                                           ; preds = %entry36  store i16 2, ptr %retval37  br label %return38 39sw.bb3:                                           ; preds = %entry40  store i16 3, ptr %retval41  br label %return42 43sw.default:                                       ; preds = %entry44  store i16 2, ptr %retval45  br label %return46 47return:                                           ; preds = %sw.default, %sw.bb3, %sw.bb2, %sw.bb1, %sw.bb48  %1 = load i16, ptr %retval49  ret i16 %150; CHECK: ret51}52 53; CHECK: .LJTI0_0:54; CHECK-NEXT: .short .LBB0_255; CHECK-NEXT: .short .LBB0_456; CHECK-NEXT: .short .LBB0_357; CHECK-NEXT: .short .LBB0_558