xref: /llvm-project/llvm/test/MC/ARM/mve-bitops.s (revision 2f5188fd5894b873e39e377d488ba22e3f22f084)
1# RUN: not llvm-mc -triple=thumbv8.1m.main-none-eabi -mattr=+mve -show-encoding  < %s \
2# RUN:   | FileCheck --check-prefix=CHECK-NOFP %s
3# RUN: not llvm-mc -triple=thumbv8.1m.main-none-eabi -mattr=+mve.fp,+fp64 -show-encoding  < %s 2>%t \
4# RUN:   | FileCheck --check-prefix=CHECK %s
5# RUN:     FileCheck --check-prefix=ERROR < %t %s
6
7# CHECK: vorr.i16 q0, #0x12  @ encoding: [0x81,0xef,0x52,0x09]
8# CHECK-NOFP: vorr.i16 q0, #0x12  @ encoding: [0x81,0xef,0x52,0x09]
9vorr.i16 q0, #0x12
10
11# CHECK: vorr.i32 q0, #0x1200  @ encoding: [0x81,0xef,0x52,0x03]
12# CHECK-NOFP: vorr.i32 q0, #0x1200  @ encoding: [0x81,0xef,0x52,0x03]
13vorr.i32 q0, #0x1200
14
15# CHECK: vorr.i16 q0, #0xed  @ encoding: [0x86,0xff,0x5d,0x09]
16# CHECK-NOFP: vorr.i16 q0, #0xed  @ encoding: [0x86,0xff,0x5d,0x09]
17vorn.i16 q0, #0xff12
18
19# CHECK: vorr.i32 q0, #0xed00  @ encoding: [0x86,0xff,0x5d,0x03]
20# CHECK-NOFP: vorr.i32 q0, #0xed00  @ encoding: [0x86,0xff,0x5d,0x03]
21vorn.i32 q0, #0xffff12ff
22
23# CHECK: vorr.i32 q0, #0xed0000  @ encoding: [0x86,0xff,0x5d,0x05]
24# CHECK-NOFP: vorr.i32 q0, #0xed0000  @ encoding: [0x86,0xff,0x5d,0x05]
25vorn.i32 q0, #0xff12ffff
26
27# CHECK: vorr.i32 q0, #0xed000000  @ encoding: [0x86,0xff,0x5d,0x07]
28# CHECK-NOFP: vorr.i32 q0, #0xed000000  @ encoding: [0x86,0xff,0x5d,0x07]
29vorn.i32 q0, #0x12ffffff
30
31# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
32vorn.i16 q0, #0xed00
33
34# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
35vorn.i16 q0, #0x00ed
36
37# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
38vorn.i32 q0, #0xed000000
39
40# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
41vorn.i32 q0, #0x00ed0000
42
43# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
44vorn.i32 q0, #0x0000ed00
45
46# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
47vorn.i32 q0, #0x000000ed
48
49# CHECK: vbic.i16 q0, #0x22  @ encoding: [0x82,0xef,0x72,0x09]
50# CHECK-NOFP: vbic.i16 q0, #0x22  @ encoding: [0x82,0xef,0x72,0x09]
51vbic.i16 q0, #0x22
52
53# CHECK: vbic.i32 q0, #0x1100  @ encoding: [0x81,0xef,0x71,0x03]
54# CHECK-NOFP: vbic.i32 q0, #0x1100  @ encoding: [0x81,0xef,0x71,0x03]
55vbic.i32 q0, #0x1100
56
57# CHECK: vbic.i16 q0, #0xdd  @ encoding: [0x85,0xff,0x7d,0x09]
58# CHECK-NOFP: vbic.i16 q0, #0xdd  @ encoding: [0x85,0xff,0x7d,0x09]
59vand.i16 q0, #0xff22
60
61# CHECK: vbic.i16 q0, #0xdd00  @ encoding: [0x85,0xff,0x7d,0x0b]
62# CHECK-NOFP: vbic.i16 q0, #0xdd00  @ encoding: [0x85,0xff,0x7d,0x0b]
63vand.i16 q0, #0x22ff
64
65# CHECK: vbic.i32 q0, #0xee  @ encoding: [0x86,0xff,0x7e,0x01]
66# CHECK-NOFP: vbic.i32 q0, #0xee  @ encoding: [0x86,0xff,0x7e,0x01]
67vand.i32 q0, #0xffffff11
68
69# CHECK: vbic.i32 q0, #0xee00  @ encoding: [0x86,0xff,0x7e,0x03]
70# CHECK-NOFP: vbic.i32 q0, #0xee00  @ encoding: [0x86,0xff,0x7e,0x03]
71vand.i32 q0, #0xffff11ff
72
73# CHECK: vbic.i32 q0, #0xee0000  @ encoding: [0x86,0xff,0x7e,0x05]
74# CHECK-NOFP: vbic.i32 q0, #0xee0000  @ encoding: [0x86,0xff,0x7e,0x05]
75vand.i32 q0, #0xff11ffff
76
77# CHECK: vbic.i32 q0, #0xee000000  @ encoding: [0x86,0xff,0x7e,0x07]
78# CHECK-NOFP: vbic.i32 q0, #0xee000000  @ encoding: [0x86,0xff,0x7e,0x07]
79vand.i32 q0, #0x11ffffff
80
81# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
82vand.i16 q0, #0xed00
83
84# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
85vand.i16 q0, #0x00ed
86
87# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
88vand.i32 q0, #0xed000000
89
90# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
91vand.i32 q0, #0x00ed0000
92
93# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
94vand.i32 q0, #0x0000ed00
95
96# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
97vand.i32 q0, #0x000000ed
98
99# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
100# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
101vbic q0, q1, q7
102
103# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
104# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
105vbic.s8 q0, q1, q7
106
107# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
108# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
109vbic.s16 q0, q1, q7
110
111# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
112# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
113vbic.s32 q0, q1, q7
114
115# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
116# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
117vbic.u8 q0, q1, q7
118
119# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
120# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
121vbic.u16 q0, q1, q7
122
123# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
124# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
125vbic.u32 q0, q1, q7
126
127# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
128# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
129vbic.i8 q0, q1, q7
130
131# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
132# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
133vbic.i16 q0, q1, q7
134
135# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
136# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
137vbic.i32 q0, q1, q7
138
139# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
140# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
141vbic.f16 q0, q1, q7
142
143# CHECK: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
144# CHECK-NOFP: vbic q0, q1, q7  @ encoding: [0x12,0xef,0x5e,0x01]
145vbic.f32 q0, q1, q7
146
147# CHECK: vrev64.8 q0, q4  @ encoding: [0xb0,0xff,0x48,0x00]
148# CHECK-NOFP: vrev64.8 q0, q4  @ encoding: [0xb0,0xff,0x48,0x00]
149vrev64.8 q0, q4
150
151# CHECK: vrev64.16 q1, q3  @ encoding: [0xb4,0xff,0x46,0x20]
152# CHECK-NOFP: vrev64.16 q1, q3  @ encoding: [0xb4,0xff,0x46,0x20]
153vrev64.16 q1, q3
154
155# CHECK: vrev64.32 q0, q2  @ encoding: [0xb8,0xff,0x44,0x00]
156# CHECK-NOFP: vrev64.32 q0, q2  @ encoding: [0xb8,0xff,0x44,0x00]
157vrev64.32 q0, q2
158
159# CHECK: vrev32.8 q0, q1  @ encoding: [0xb0,0xff,0xc2,0x00]
160# CHECK-NOFP: vrev32.8 q0, q1  @ encoding: [0xb0,0xff,0xc2,0x00]
161vrev32.8 q0, q1
162
163# CHECK: vrev32.16 q0, q5  @ encoding: [0xb4,0xff,0xca,0x00]
164# CHECK-NOFP: vrev32.16 q0, q5  @ encoding: [0xb4,0xff,0xca,0x00]
165vrev32.16 q0, q5
166
167# CHECK: vrev16.8 q0, q2  @ encoding: [0xb0,0xff,0x44,0x01]
168# CHECK-NOFP: vrev16.8 q0, q2  @ encoding: [0xb0,0xff,0x44,0x01]
169vrev16.8 q0, q2
170
171# CHECK: vmvn q0, q2  @ encoding: [0xb0,0xff,0xc4,0x05]
172# CHECK-NOFP: vmvn q0, q2  @ encoding: [0xb0,0xff,0xc4,0x05]
173vmvn q0, q2
174
175# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
176# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
177veor q2, q1, q7
178
179# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
180# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
181veor.s8 q2, q1, q7
182
183# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
184# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
185veor.s16 q2, q1, q7
186
187# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
188# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
189veor.s32 q2, q1, q7
190
191# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
192# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
193veor.u8 q2, q1, q7
194
195# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
196# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
197veor.u16 q2, q1, q7
198
199# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
200# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
201veor.u32 q2, q1, q7
202
203# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
204# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
205veor.i8 q2, q1, q7
206
207# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
208# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
209veor.i16 q2, q1, q7
210
211# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
212# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
213veor.i32 q2, q1, q7
214
215# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
216# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
217veor.f16 q2, q1, q7
218
219# CHECK: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
220# CHECK-NOFP: veor q2, q1, q7  @ encoding: [0x02,0xff,0x5e,0x41]
221veor.f32 q2, q1, q7
222
223# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
224# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
225vorn q0, q3, q2
226
227# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
228# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
229vorn.s8 q0, q3, q2
230
231# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
232# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
233vorn.s16 q0, q3, q2
234
235# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
236# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
237vorn.s32 q0, q3, q2
238
239# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
240# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
241vorn.u8 q0, q3, q2
242
243# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
244# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
245vorn.u16 q0, q3, q2
246
247# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
248# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
249vorn.u32 q0, q3, q2
250
251# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
252# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
253vorn.i8 q0, q3, q2
254
255# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
256# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
257vorn.i16 q0, q3, q2
258
259# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
260# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
261vorn.i32 q0, q3, q2
262
263# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
264# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
265vorn.f16 q0, q3, q2
266
267# CHECK: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
268# CHECK-NOFP: vorn q0, q3, q2  @ encoding: [0x36,0xef,0x54,0x01]
269vorn.f32 q0, q3, q2
270
271# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
272# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
273vorr q1, q2, q1
274
275# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
276# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
277vorr.s8 q1, q2, q1
278
279# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
280# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
281vorr.s16 q1, q2, q1
282
283# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
284# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
285vorr.s32 q1, q2, q1
286
287# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
288# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
289vorr.u8 q1, q2, q1
290
291# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
292# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
293vorr.u16 q1, q2, q1
294
295# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
296# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
297vorr.u32 q1, q2, q1
298
299# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
300# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
301vorr.i8 q1, q2, q1
302
303# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
304# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
305vorr.i16 q1, q2, q1
306
307# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
308# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
309vorr.i32 q1, q2, q1
310
311# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
312# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
313vorr.f16 q1, q2, q1
314
315# CHECK: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
316# CHECK-NOFP: vorr q1, q2, q1  @ encoding: [0x24,0xef,0x52,0x21]
317vorr.f32 q1, q2, q1
318
319# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
320# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
321vand q0, q2, q0
322
323# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
324# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
325vand.s8 q0, q2, q0
326
327# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
328# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
329vand.s16 q0, q2, q0
330
331# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
332# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
333vand.s32 q0, q2, q0
334
335# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
336# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
337vand.u8 q0, q2, q0
338
339# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
340# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
341vand.u16 q0, q2, q0
342
343# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
344# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
345vand.u32 q0, q2, q0
346
347# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
348# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
349vand.i8 q0, q2, q0
350
351# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
352# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
353vand.i16 q0, q2, q0
354
355# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
356# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
357vand.i32 q0, q2, q0
358
359# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
360# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
361vand.f16 q0, q2, q0
362
363# CHECK: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
364# CHECK-NOFP: vand q0, q2, q0  @ encoding: [0x04,0xef,0x50,0x01]
365vand.f32 q0, q2, q0
366
367# CHECK: vmov.8 q0[1], r8  @ encoding: [0x40,0xee,0x30,0x8b]
368# CHECK-NOFP: vmov.8 q0[1], r8  @ encoding: [0x40,0xee,0x30,0x8b]
369vmov.8 q0[1], r8
370
371# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
372vmov.8 q0[16], r8
373
374# CHECK: vmov.16 q0[2], r5  @ encoding: [0x20,0xee,0x30,0x5b]
375# CHECK-NOFP: vmov.16 q0[2], r5  @ encoding: [0x20,0xee,0x30,0x5b]
376vmov.16 q0[2], r5
377
378# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
379vmov.16 q0[8], r5
380
381# CHECK: vmov.32 q6[3], r11  @ encoding: [0x2d,0xee,0x10,0xbb]
382# CHECK-NOFP: vmov.32 q6[3], r11  @ encoding: [0x2d,0xee,0x10,0xbb]
383vmov.32 q6[3], r11
384
385# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
386vmov.32 q6[4], r11
387
388# CHECK: vmov.32 r0, q1[0]  @ encoding: [0x12,0xee,0x10,0x0b]
389# CHECK-NOFP: vmov.32 r0, q1[0]  @ encoding: [0x12,0xee,0x10,0x0b]
390vmov.32 r0, q1[0]
391
392# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
393vmov.32 r0, q1[4]
394
395# CHECK: vmov.s16 r1, q2[7]  @ encoding: [0x35,0xee,0x70,0x1b]
396# CHECK-NOFP: vmov.s16 r1, q2[7]  @ encoding: [0x35,0xee,0x70,0x1b]
397vmov.s16 r1, q2[7]
398
399# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
400vmov.s16 r1, q2[8]
401
402# CHECK: vmov.s8 r0, q4[13]  @ encoding: [0x79,0xee,0x30,0x0b]
403# CHECK-NOFP: vmov.s8 r0, q4[13]  @ encoding: [0x79,0xee,0x30,0x0b]
404vmov.s8 r0, q4[13]
405
406# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
407vmov.s8 r0, q4[16]
408
409# CHECK: vmov.u16 r0, q1[4]  @ encoding: [0x93,0xee,0x30,0x0b]
410# CHECK-NOFP: vmov.u16 r0, q1[4]  @ encoding: [0x93,0xee,0x30,0x0b]
411vmov.u16 r0, q1[4]
412
413# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
414vmov.u16 r0, q1[8]
415
416# CHECK: vmov.u8 r0, q5[7]  @ encoding: [0xfa,0xee,0x70,0x0b]
417# CHECK-NOFP: vmov.u8 r0, q5[7]  @ encoding: [0xfa,0xee,0x70,0x0b]
418vmov.u8 r0, q5[7]
419
420# ERROR: [[@LINE+1]]:{{[0-9]+}}: {{error|note}}: invalid operand for instruction
421vmov.u8 r0, q5[16]
422
423vpste
424vmvnt q0, q1
425vmvne q0, q1
426# CHECK: vpste @ encoding: [0x71,0xfe,0x4d,0x8f]
427# CHECK-NOFP: vpste @ encoding: [0x71,0xfe,0x4d,0x8f]
428# CHECK: vmvnt q0, q1 @ encoding: [0xb0,0xff,0xc2,0x05]
429# CHECK-NOFP: vmvnt q0, q1 @ encoding: [0xb0,0xff,0xc2,0x05]
430# CHECK: vmvne q0, q1 @ encoding: [0xb0,0xff,0xc2,0x05]
431# CHECK-NOFP: vmvne q0, q1 @ encoding: [0xb0,0xff,0xc2,0x05]
432
433vpste
434vornt.s8 q0, q1, q2
435vorne.s8 q0, q1, q2
436# CHECK: vpste @ encoding: [0x71,0xfe,0x4d,0x8f]
437# CHECK-NOFP: vpste @ encoding: [0x71,0xfe,0x4d,0x8f]
438# CHECK: vornt q0, q1, q2 @ encoding: [0x32,0xef,0x54,0x01]
439# CHECK-NOFP: vornt q0, q1, q2 @ encoding: [0x32,0xef,0x54,0x01]
440# CHECK: vorne q0, q1, q2 @ encoding: [0x32,0xef,0x54,0x01]
441# CHECK-NOFP: vorne q0, q1, q2 @ encoding: [0x32,0xef,0x54,0x01]
442