1 ; RUN: llc < %s -march=bfin -verify-machineinstrs | FileCheck %s 2 3 ; CHECK: .section .rodata 4 ; CHECK: JTI0_0: 5 ; CHECK: .long .BB0_1 6 7 define i32 @oper(i32 %op, i32 %A, i32 %B) { 8 entry: 9 switch i32 %op, label %bbx [ 10 i32 1 , label %bb1 11 i32 2 , label %bb2 12 i32 3 , label %bb3 13 i32 4 , label %bb4 14 i32 5 , label %bb5 15 i32 6 , label %bb6 16 i32 7 , label %bb7 17 i32 8 , label %bb8 18 i32 9 , label %bb9 19 i32 10, label %bb10 20 ] 21 bb1: 22 %R1 = add i32 %A, %B ; <i32> [#uses=1] 23 ret i32 %R1 24 bb2: 25 %R2 = sub i32 %A, %B ; <i32> [#uses=1] 26 ret i32 %R2 27 bb3: 28 %R3 = mul i32 %A, %B ; <i32> [#uses=1] 29 ret i32 %R3 30 bb4: 31 %R4 = sdiv i32 %A, %B ; <i32> [#uses=1] 32 ret i32 %R4 33 bb5: 34 %R5 = udiv i32 %A, %B ; <i32> [#uses=1] 35 ret i32 %R5 36 bb6: 37 %R6 = srem i32 %A, %B ; <i32> [#uses=1] 38 ret i32 %R6 39 bb7: 40 %R7 = urem i32 %A, %B ; <i32> [#uses=1] 41 ret i32 %R7 42 bb8: 43 %R8 = and i32 %A, %B ; <i32> [#uses=1] 44 ret i32 %R8 45 bb9: 46 %R9 = or i32 %A, %B ; <i32> [#uses=1] 47 ret i32 %R9 48 bb10: 49 %R10 = xor i32 %A, %B ; <i32> [#uses=1] 50 ret i32 %R10 51 bbx: 52 ret i32 0 53 } 54