blob: a3991d0fe06418720e01ff4a4a02466190dc50de [file] [log] [blame]
Bob Wilson8d1b7e52010-12-15 22:14:01 +00001@ RUN: llvm-mc -mcpu=cortex-a8 -triple thumb-unknown-unknown -show-encoding < %s | FileCheck %s
Owen Anderson410cb572010-11-11 21:15:47 +00002
3.code 16
4
Jim Grosbach2b852502012-04-23 21:00:42 +00005 vsra.s8 d17, d16, #8
6 vsra.s16 d15, d14, #16
7 vsra.s32 d13, d12, #32
8 vsra.s64 d11, d10, #64
9 vsra.s8 q7, q2, #8
10 vsra.s16 q3, q6, #16
11 vsra.s32 q9, q5, #32
12 vsra.s64 q8, q4, #64
13 vsra.u8 d17, d16, #8
14 vsra.u16 d11, d14, #11
15 vsra.u32 d12, d15, #22
16 vsra.u64 d13, d16, #54
17 vsra.u8 q1, q7, #8
18 vsra.u16 q2, q7, #6
19 vsra.u32 q3, q6, #21
20 vsra.u64 q4, q5, #25
21
22@ CHECK: vsra.s8 d17, d16, #8 @ encoding: [0xc8,0xef,0x30,0x11]
23@ CHECK: vsra.s16 d15, d14, #16 @ encoding: [0x90,0xef,0x1e,0xf1]
24@ CHECK: vsra.s32 d13, d12, #32 @ encoding: [0xa0,0xef,0x1c,0xd1]
25@ CHECK: vsra.s64 d11, d10, #64 @ encoding: [0x80,0xef,0x9a,0xb1]
26@ CHECK: vsra.s8 q7, q2, #8 @ encoding: [0x88,0xef,0x54,0xe1]
27@ CHECK: vsra.s16 q3, q6, #16 @ encoding: [0x90,0xef,0x5c,0x61]
28@ CHECK: vsra.s32 q9, q5, #32 @ encoding: [0xe0,0xef,0x5a,0x21]
29@ CHECK: vsra.s64 q8, q4, #64 @ encoding: [0xc0,0xef,0xd8,0x01]
30@ CHECK: vsra.u8 d17, d16, #8 @ encoding: [0xc8,0xff,0x30,0x11]
31@ CHECK: vsra.u16 d11, d14, #11 @ encoding: [0x95,0xff,0x1e,0xb1]
32@ CHECK: vsra.u32 d12, d15, #22 @ encoding: [0xaa,0xff,0x1f,0xc1]
33@ CHECK: vsra.u64 d13, d16, #54 @ encoding: [0x8a,0xff,0xb0,0xd1]
34@ CHECK: vsra.u8 q1, q7, #8 @ encoding: [0x88,0xff,0x5e,0x21]
35@ CHECK: vsra.u16 q2, q7, #6 @ encoding: [0x9a,0xff,0x5e,0x41]
36@ CHECK: vsra.u32 q3, q6, #21 @ encoding: [0xab,0xff,0x5c,0x61]
37@ CHECK: vsra.u64 q4, q5, #25 @ encoding: [0xa7,0xff,0xda,0x81]
38
39
40 vrsra.s8 d5, d26, #8
41 vrsra.s16 d6, d25, #16
42 vrsra.s32 d7, d24, #32
43 vrsra.s64 d14, d23, #64
44 vrsra.u8 d15, d22, #8
45 vrsra.u16 d16, d21, #16
46 vrsra.u32 d17, d20, #32
47 vrsra.u64 d18, d19, #64
48 vrsra.s8 q1, q2, #8
49 vrsra.s16 q2, q3, #16
50 vrsra.s32 q3, q4, #32
51 vrsra.s64 q4, q5, #64
52 vrsra.u8 q5, q6, #8
53 vrsra.u16 q6, q7, #16
54 vrsra.u32 q7, q8, #32
55 vrsra.u64 q8, q9, #64
56
57@ CHECK: vrsra.s8 d5, d26, #8 @ encoding: [0x88,0xef,0x3a,0x53]
58@ CHECK: vrsra.s16 d6, d25, #16 @ encoding: [0x90,0xef,0x39,0x63]
59@ CHECK: vrsra.s32 d7, d24, #32 @ encoding: [0xa0,0xef,0x38,0x73]
60@ CHECK: vrsra.s64 d14, d23, #64 @ encoding: [0x80,0xef,0xb7,0xe3]
61@ CHECK: vrsra.u8 d15, d22, #8 @ encoding: [0x88,0xff,0x36,0xf3]
62@ CHECK: vrsra.u16 d16, d21, #16 @ encoding: [0xd0,0xff,0x35,0x03]
63@ CHECK: vrsra.u32 d17, d20, #32 @ encoding: [0xe0,0xff,0x34,0x13]
64@ CHECK: vrsra.u64 d18, d19, #64 @ encoding: [0xc0,0xff,0xb3,0x23]
65@ CHECK: vrsra.s8 q1, q2, #8 @ encoding: [0x88,0xef,0x54,0x23]
66@ CHECK: vrsra.s16 q2, q3, #16 @ encoding: [0x90,0xef,0x56,0x43]
67@ CHECK: vrsra.s32 q3, q4, #32 @ encoding: [0xa0,0xef,0x58,0x63]
68@ CHECK: vrsra.s64 q4, q5, #64 @ encoding: [0x80,0xef,0xda,0x83]
69@ CHECK: vrsra.u8 q5, q6, #8 @ encoding: [0x88,0xff,0x5c,0xa3]
70@ CHECK: vrsra.u16 q6, q7, #16 @ encoding: [0x90,0xff,0x5e,0xc3]
71@ CHECK: vrsra.u32 q7, q8, #32 @ encoding: [0xa0,0xff,0x70,0xe3]
Jim Grosbachd91f4e42010-12-03 22:31:40 +000072@ CHECK: vrsra.u64 q8, q9, #64 @ encoding: [0xc0,0xff,0xf2,0x03]
Jim Grosbach2b852502012-04-23 21:00:42 +000073
74
75 vsli.8 d11, d12, #7
76 vsli.16 d12, d13, #15
77 vsli.32 d13, d14, #31
78 vsli.64 d14, d15, #63
79 vsli.8 q1, q8, #7
80 vsli.16 q2, q7, #15
81 vsli.32 q3, q4, #31
82 vsli.64 q4, q5, #63
83 vsri.8 d28, d11, #8
84 vsri.16 d26, d12, #16
85 vsri.32 d24, d13, #32
86 vsri.64 d21, d14, #64
87 vsri.8 q1, q8, #8
88 vsri.16 q5, q2, #16
89 vsri.32 q7, q4, #32
90 vsri.64 q9, q6, #64
91
92@ CHECK: vsli.8 d11, d12, #7 @ encoding: [0x8f,0xff,0x1c,0xb5]
93@ CHECK: vsli.16 d12, d13, #15 @ encoding: [0x9f,0xff,0x1d,0xc5]
94@ CHECK: vsli.32 d13, d14, #31 @ encoding: [0xbf,0xff,0x1e,0xd5]
95@ CHECK: vsli.64 d14, d15, #63 @ encoding: [0xbf,0xff,0x9f,0xe5]
96@ CHECK: vsli.8 q1, q8, #7 @ encoding: [0x8f,0xff,0x70,0x25]
97@ CHECK: vsli.16 q2, q7, #15 @ encoding: [0x9f,0xff,0x5e,0x45]
98@ CHECK: vsli.32 q3, q4, #31 @ encoding: [0xbf,0xff,0x58,0x65]
99@ CHECK: vsli.64 q4, q5, #63 @ encoding: [0xbf,0xff,0xda,0x85]
100@ CHECK: vsri.8 d28, d11, #8 @ encoding: [0xc8,0xff,0x1b,0xc4]
101@ CHECK: vsri.16 d26, d12, #16 @ encoding: [0xd0,0xff,0x1c,0xa4]
102@ CHECK: vsri.32 d24, d13, #32 @ encoding: [0xe0,0xff,0x1d,0x84]
103@ CHECK: vsri.64 d21, d14, #64 @ encoding: [0xc0,0xff,0x9e,0x54]
104@ CHECK: vsri.8 q1, q8, #8 @ encoding: [0x88,0xff,0x70,0x24]
105@ CHECK: vsri.16 q5, q2, #16 @ encoding: [0x90,0xff,0x54,0xa4]
106@ CHECK: vsri.32 q7, q4, #32 @ encoding: [0xa0,0xff,0x58,0xe4]
107@ CHECK: vsri.64 q9, q6, #64 @ encoding: [0xc0,0xff,0xdc,0x24]