• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
7define i32 @oper(i32 %op, i32 %A, i32 %B) {
8entry:
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        ]
21bb1:
22	%R1 = add i32 %A, %B		; <i32> [#uses=1]
23	ret i32 %R1
24bb2:
25	%R2 = sub i32 %A, %B		; <i32> [#uses=1]
26	ret i32 %R2
27bb3:
28	%R3 = mul i32 %A, %B		; <i32> [#uses=1]
29	ret i32 %R3
30bb4:
31	%R4 = sdiv i32 %A, %B		; <i32> [#uses=1]
32	ret i32 %R4
33bb5:
34	%R5 = udiv i32 %A, %B		; <i32> [#uses=1]
35	ret i32 %R5
36bb6:
37	%R6 = srem i32 %A, %B		; <i32> [#uses=1]
38	ret i32 %R6
39bb7:
40	%R7 = urem i32 %A, %B		; <i32> [#uses=1]
41	ret i32 %R7
42bb8:
43	%R8 = and i32 %A, %B		; <i32> [#uses=1]
44	ret i32 %R8
45bb9:
46	%R9 = or i32 %A, %B		; <i32> [#uses=1]
47	ret i32 %R9
48bb10:
49	%R10 = xor i32 %A, %B		; <i32> [#uses=1]
50	ret i32 %R10
51bbx:
52        ret i32 0
53}
54