1# RUN: llvm-mc -triple armv7-unknown-unknown -mcpu=cortex-a9 -disassemble < %s | FileCheck %s
2
30x20 0x03 0xf1 0xf3
4# CHECK: vabs.s8	d16, d16
50x20 0x03 0xf5 0xf3
6# CHECK: vabs.s16	d16, d16
70x20 0x03 0xf9 0xf3
8# CHECK: vabs.s32	d16, d16
90x20 0x07 0xf9 0xf3
10# CHECK: vabs.f32	d16, d16
110x60 0x03 0xf1 0xf3
12# CHECK: vabs.s8	q8, q8
130x60 0x03 0xf5 0xf3
14# CHECK: vabs.s16	q8, q8
150x60 0x03 0xf9 0xf3
16# CHECK: vabs.s32	q8, q8
170x60 0x07 0xf9 0xf3
18# CHECK: vabs.f32	q8, q8
19
200x20 0x07 0xf0 0xf3
21# CHECK: vqabs.s8	d16, d16
220x20 0x07 0xf4 0xf3
23# CHECK: vqabs.s16	d16, d16
240x20 0x07 0xf8 0xf3
25# CHECK: vqabs.s32	d16, d16
260x60 0x07 0xf0 0xf3
27# CHECK: vqabs.s8	q8, q8
280x60 0x07 0xf4 0xf3
29# CHECK: vqabs.s16	q8, q8
300x60 0x07 0xf8 0xf3
31# CHECK: vqabs.s32	q8, q8
32
330xa1 0x07 0x40 0xf2
34# CHECK: vabd.s8	d16, d16, d17
350xa1 0x07 0x50 0xf2
36# CHECK: vabd.s16	d16, d16, d17
370xa1 0x07 0x60 0xf2
38# CHECK: vabd.s32	d16, d16, d17
390xa1 0x07 0x40 0xf3
40# CHECK: vabd.u8	d16, d16, d17
410xa1 0x07 0x50 0xf3
42# CHECK: vabd.u16	d16, d16, d17
43  0xa1 0x07 0x60 0xf3
44# CHECK: vabd.u32	d16, d16, d17
450xa1 0x0d 0x60 0xf3
46# CHECK: vabd.f32	d16, d16, d17
470xe2 0x07 0x40 0xf2
48# CHECK: vabd.s8	q8, q8, q9
490xe2 0x07 0x50 0xf2
50# CHECK: vabd.s16	q8, q8, q9
510xe2 0x07 0x60 0xf2
52# CHECK: vabd.s32	q8, q8, q9
530xe2 0x07 0x40 0xf3
54# CHECK: vabd.u8	q8, q8, q9
550xe2 0x07 0x50 0xf3
56# CHECK: vabd.u16	q8, q8, q9
570xe2 0x07 0x60 0xf3
58# CHECK: vabd.u32	q8, q8, q9
590xe2 0x0d 0x60 0xf3
60# CHECK: vabd.f32	q8, q8, q9
61
620xa1 0x07 0xc0 0xf2
63# CHECK: vabdl.s8	q8, d16, d17
640xa1 0x07 0xd0 0xf2
65# CHECK: vabdl.s16	q8, d16, d17
660xa1 0x07 0xe0 0xf2
67# CHECK: vabdl.s32	q8, d16, d17
680xa1 0x07 0xc0 0xf3
69# CHECK: vabdl.u8	q8, d16, d17
700xa1 0x07 0xd0 0xf3
71# CHECK: vabdl.u16	q8, d16, d17
720xa1 0x07 0xe0 0xf3
73# CHECK: vabdl.u32	q8, d16, d17
74
750xb1 0x07 0x42 0xf2
76# CHECK: vaba.s8	d16, d18, d17
770xb1 0x07 0x52 0xf2
78# CHECK: vaba.s16	d16, d18, d17
790xb1 0x07 0x62 0xf2
80# CHECK: vaba.s32	d16, d18, d17
810xb1 0x07 0x42 0xf3
82# CHECK: vaba.u8	d16, d18, d17
830xb1 0x07 0x52 0xf3
84# CHECK: vaba.u16	d16, d18, d17
850xb1 0x07 0x62 0xf3
86# CHECK: vaba.u32	d16, d18, d17
870xf4 0x27 0x40 0xf2
88# CHECK: vaba.s8	q9, q8, q10
890xf4 0x27 0x50 0xf2
90# CHECK: vaba.s16	q9, q8, q10
910xf4 0x27 0x60 0xf2
92# CHECK: vaba.s32	q9, q8, q10
930xf4 0x27 0x40 0xf3
94# CHECK: vaba.u8	q9, q8, q10
950xf4 0x27 0x50 0xf3
96# CHECK: vaba.u16	q9, q8, q10
970xf4 0x27 0x60 0xf3
98# CHECK: vaba.u32	q9, q8, q10
99
1000xa2 0x05 0xc3 0xf2
101# CHECK: vabal.s8	q8, d19, d18
1020xa2 0x05 0xd3 0xf2
103# CHECK: vabal.s16	q8, d19, d18
1040xa2 0x05 0xe3 0xf2
105# CHECK: vabal.s32	q8, d19, d18
1060xa2 0x05 0xc3 0xf3
107# CHECK: vabal.u8	q8, d19, d18
1080xa2 0x05 0xd3 0xf3
109# CHECK: vabal.u16	q8, d19, d18
1100xa2 0x05 0xe3 0xf3
111# CHECK: vabal.u32	q8, d19, d18
112
113
114
115
1160xa0 0x08 0x41 0xf2
117# CHECK: vadd.i8	d16, d17, d16
1180xa0 0x08 0x51 0xf2
119# CHECK: vadd.i16	d16, d17, d16
1200xa0 0x08 0x71 0xf2
121# CHECK: vadd.i64	d16, d17, d16
1220xa0 0x08 0x61 0xf2
123# CHECK: vadd.i32	d16, d17, d16
1240xa1 0x0d 0x40 0xf2
125# CHECK: vadd.f32	d16, d16, d17
1260xe2 0x0d 0x40 0xf2
127# CHECK: vadd.f32	q8, q8, q9
128
1290xa0 0x00 0xc1 0xf2
130# CHECK: vaddl.s8	q8, d17, d16
1310xa0 0x00 0xd1 0xf2
132# CHECK: vaddl.s16	q8, d17, d16
1330xa0 0x00 0xe1 0xf2
134# CHECK: vaddl.s32	q8, d17, d16
1350xa0 0x00 0xc1 0xf3
136# CHECK: vaddl.u8	q8, d17, d16
1370xa0 0x00 0xd1 0xf3
138# CHECK: vaddl.u16	q8, d17, d16
1390xa0 0x00 0xe1 0xf3
140# CHECK: vaddl.u32	q8, d17, d16
141
1420xa2 0x01 0xc0 0xf2
143# CHECK: vaddw.s8	q8, q8, d18
1440xa2 0x01 0xd0 0xf2
145# CHECK: vaddw.s16	q8, q8, d18
1460xa2 0x01 0xe0 0xf2
147# CHECK: vaddw.s32	q8, q8, d18
1480xa2 0x01 0xc0 0xf3
149# CHECK: vaddw.u8	q8, q8, d18
1500xa2 0x01 0xd0 0xf3
151# CHECK: vaddw.u16	q8, q8, d18
1520xa2 0x01 0xe0 0xf3
153# CHECK: vaddw.u32	q8, q8, d18
154
1550xa1 0x00 0x40 0xf2
156# CHECK: vhadd.s8	d16, d16, d17
1570xa1 0x00 0x50 0xf2
158# CHECK: vhadd.s16	d16, d16, d17
1590xa1 0x00 0x60 0xf2
160# CHECK: vhadd.s32	d16, d16, d17
1610xa1 0x00 0x40 0xf3
162# CHECK: vhadd.u8	d16, d16, d17
1630xa1 0x00 0x50 0xf3
164# CHECK: vhadd.u16	d16, d16, d17
1650xa1 0x00 0x60 0xf3
166# CHECK: vhadd.u32	d16, d16, d17
1670xe2 0x00 0x40 0xf2
168# CHECK: vhadd.s8	q8, q8, q9
1690xe2 0x00 0x50 0xf2
170# CHECK: vhadd.s16	q8, q8, q9
1710xe2 0x00 0x60 0xf2
172# CHECK: vhadd.s32	q8, q8, q9
173  0xe2 0x00 0x40 0xf3
174# CHECK: vhadd.u8	q8, q8, q9
1750xe2 0x00 0x50 0xf3
176# CHECK: vhadd.u16	q8, q8, q9
1770xe2 0x00 0x60 0xf3
178# CHECK: vhadd.u32	q8, q8, q9
179
1800xa1 0x01 0x40 0xf2
181# CHECK: vrhadd.s8	d16, d16, d17
1820xa1 0x01 0x50 0xf2
183# CHECK: vrhadd.s16	d16, d16, d17
1840xa1 0x01 0x60 0xf2
185# CHECK: vrhadd.s32	d16, d16, d17
1860xa1 0x01 0x40 0xf3
187# CHECK: vrhadd.u8	d16, d16, d17
1880xa1 0x01 0x50 0xf3
189# CHECK: vrhadd.u16	d16, d16, d17
1900xa1 0x01 0x60 0xf3
191# CHECK: vrhadd.u32	d16, d16, d17
1920xe2 0x01 0x40 0xf2
193# CHECK: vrhadd.s8	q8, q8, q9
1940xe2 0x01 0x50 0xf2
195# CHECK: vrhadd.s16	q8, q8, q9
1960xe2 0x01 0x60 0xf2
197# CHECK: vrhadd.s32	q8, q8, q9
1980xe2 0x01 0x40 0xf3
199# CHECK: vrhadd.u8	q8, q8, q9
2000xe2 0x01 0x50 0xf3
201# CHECK: vrhadd.u16	q8, q8, q9
2020xe2 0x01 0x60 0xf3
203# CHECK: vrhadd.u32	q8, q8, q9
204
2050xb1 0x00 0x40 0xf2
206# CHECK: vqadd.s8	d16, d16, d17
2070xb1 0x00 0x50 0xf2
208# CHECK: vqadd.s16	d16, d16, d17
2090xb1 0x00 0x60 0xf2
210# CHECK: vqadd.s32	d16, d16, d17
2110xb1 0x00 0x70 0xf2
212# CHECK: vqadd.s64	d16, d16, d17
2130xb1 0x00 0x40 0xf3
214# CHECK: vqadd.u8	d16, d16, d17
2150xb1 0x00 0x50 0xf3
216# CHECK: vqadd.u16	d16, d16, d17
2170xb1 0x00 0x60 0xf3
218# CHECK: vqadd.u32	d16, d16, d17
2190xb1 0x00 0x70 0xf3
220# CHECK: vqadd.u64	d16, d16, d17
2210xf2 0x00 0x40 0xf2
222# CHECK: vqadd.s8	q8, q8, q9
2230xf2 0x00 0x50 0xf2
224# CHECK: vqadd.s16	q8, q8, q9
2250xf2 0x00 0x60 0xf2
226# CHECK: vqadd.s32	q8, q8, q9
2270xf2 0x00 0x70 0xf2
228# CHECK: vqadd.s64	q8, q8, q9
2290xf2 0x00 0x40 0xf3
230# CHECK: vqadd.u8	q8, q8, q9
2310xf2 0x00 0x50 0xf3
232# CHECK: vqadd.u16	q8, q8, q9
2330xf2 0x00 0x60 0xf3
234# CHECK: vqadd.u32	q8, q8, q9
2350xf2 0x00 0x70 0xf3
236# CHECK: vqadd.u64	q8, q8, q9
237
2380xa2 0x04 0xc0 0xf2
239# CHECK: vaddhn.i16	d16, q8, q9
2400xa2 0x04 0xd0 0xf2
241# CHECK: vaddhn.i32	d16, q8, q9
2420xa2 0x04 0xe0 0xf2
243# CHECK: vaddhn.i64	d16, q8, q9
2440xa2 0x04 0xc0 0xf3
245# CHECK: vraddhn.i16	d16, q8, q9
2460xa2 0x04 0xd0 0xf3
247# CHECK: vraddhn.i32	d16, q8, q9
2480xa2 0x04 0xe0 0xf3
249# CHECK: vraddhn.i64	d16, q8, q9
250
251
2520x20 0x05 0xf0 0xf3
253# CHECK: vcnt.8	d16, d16
2540x60 0x05 0xf0 0xf3
255# CHECK: vcnt.8	q8, q8
2560xa0 0x04 0xf0 0xf3
257# CHECK: vclz.i8	d16, d16
2580xa0 0x04 0xf4 0xf3
259# CHECK: vclz.i16	d16, d16
2600xa0 0x04 0xf8 0xf3
261# CHECK: vclz.i32	d16, d16
2620xe0 0x04 0xf0 0xf3
263# CHECK: vclz.i8	q8, q8
2640xe0 0x04 0xf4 0xf3
265# CHECK: vclz.i16	q8, q8
2660xe0 0x04 0xf8 0xf3
267# CHECK: vclz.i32	q8, q8
2680x20 0x04 0xf0 0xf3
269# CHECK: vcls.s8	d16, d16
2700x20 0x04 0xf4 0xf3
271# CHECK: vcls.s16	d16, d16
2720x20 0x04 0xf8 0xf3
273# CHECK: vcls.s32	d16, d16
2740x60 0x04 0xf0 0xf3
275# CHECK: vcls.s8	q8, q8
2760x60 0x04 0xf4 0xf3
277# CHECK: vcls.s16	q8, q8
2780x60 0x04 0xf8 0xf3
279# CHECK: vcls.s32	q8, q8
280
281
282
283
2840xb0 0x01 0x41 0xf2
285# CHECK: vand	d16, d17, d16
2860xf2 0x01 0x40 0xf2
287# CHECK: vand	q8, q8, q9
288
2890xb0 0x01 0x41 0xf3
290# CHECK: veor	d16, d17, d16
2910xf2 0x01 0x40 0xf3
292# CHECK: veor	q8, q8, q9
293
2940xb0 0x01 0x61 0xf2
295# CHECK: vorr	d16, d17, d16
2960xf2 0x01 0x60 0xf2
297# CHECK: vorr	q8, q8, q9
2980x11 0x07 0xc0 0xf2
299# CHECK: vorr.i32	d16, #0x1000000
3000x51 0x07 0xc0 0xf2
301# CHECK: vorr.i32	q8, #0x1000000
3020x50 0x01 0xc0 0xf2
303# CHECK: vorr.i32	q8, #0x0
304
3050xb0 0x01 0x51 0xf2
306# CHECK: vbic	d16, d17, d16
3070xf2 0x01 0x50 0xf2
308# CHECK: vbic	q8, q8, q9
3090x3f 0x07 0xc7 0xf3
310# CHECK: vbic.i32	d16, #0xff000000
3110x7f 0x07 0xc7 0xf3
312# CHECK: vbic.i32	q8, #0xff000000
313
3140xb0 0x01 0x71 0xf2
315# CHECK: vorn	d16, d17, d16
3160xf2 0x01 0x70 0xf2
317# CHECK: vorn	q8, q8, q9
318
3190xa0 0x05 0xf0 0xf3
320# CHECK: vmvn	d16, d16
3210xe0 0x05 0xf0 0xf3
322# CHECK: vmvn	q8, q8
323
3240xb0 0x21 0x51 0xf3
325# CHECK: vbsl	d18, d17, d16
3260xf2 0x01 0x54 0xf3
327# CHECK: vbsl	q8, q10, q9
328
329
330# CHECK: vceq.i8	d16, d16, d17
331# CHECK: vceq.i16	d16, d16, d17
332# CHECK: vceq.i32	d16, d16, d17
333# CHECK: vceq.f32	d16, d16, d17
334# CHECK: vceq.i8	q8, q8, q9
335# CHECK: vceq.i16	q8, q8, q9
336# CHECK: vceq.i32	q8, q8, q9
337# CHECK: vceq.f32	q8, q8, q9
338
3390xb1 0x08 0x40 0xf3
3400xb1 0x08 0x50 0xf3
3410xb1 0x08 0x60 0xf3
3420xa1 0x0e 0x40 0xf2
3430xf2 0x08 0x40 0xf3
3440xf2 0x08 0x50 0xf3
3450xf2 0x08 0x60 0xf3
3460xe2 0x0e 0x40 0xf2
347
348# CHECK: vcge.s8	d16, d16, d17
349# CHECK: vcge.s16	d16, d16, d17
350# CHECK: vcge.s32	d16, d16, d17
351# CHECK: vcge.u8	d16, d16, d17
352# CHECK: vcge.u16	d16, d16, d17
353# CHECK: vcge.u32	d16, d16, d17
354# CHECK: vcge.f32	d16, d16, d17
355# CHECK: vcge.s8	q8, q8, q9
356# CHECK: vcge.s16	q8, q8, q9
357# CHECK: vcge.s32	q8, q8, q9
358# CHECK: vcge.u8	q8, q8, q9
359# CHECK: vcge.u16	q8, q8, q9
360# CHECK: vcge.u32	q8, q8, q9
361# CHECK: vcge.f32	q8, q8, q9
362# CHECK: vacge.f32	d16, d16, d17
363# CHECK: vacge.f32	q8, q8, q9
364
3650xb1 0x03 0x40 0xf2
3660xb1 0x03 0x50 0xf2
3670xb1 0x03 0x60 0xf2
3680xb1 0x03 0x40 0xf3
3690xb1 0x03 0x50 0xf3
3700xb1 0x03 0x60 0xf3
3710xa1 0x0e 0x40 0xf3
3720xf2 0x03 0x40 0xf2
3730xf2 0x03 0x50 0xf2
3740xf2 0x03 0x60 0xf2
3750xf2 0x03 0x40 0xf3
3760xf2 0x03 0x50 0xf3
3770xf2 0x03 0x60 0xf3
3780xe2 0x0e 0x40 0xf3
3790xb1 0x0e 0x40 0xf3
3800xf2 0x0e 0x40 0xf3
381
382# CHECK: vcgt.s8	d16, d16, d17
383# CHECK: vcgt.s16	d16, d16, d17
384# CHECK: vcgt.s32	d16, d16, d17
385# CHECK: vcgt.u8	d16, d16, d17
386# CHECK: vcgt.u16	d16, d16, d17
387# CHECK: vcgt.u32	d16, d16, d17
388# CHECK: vcgt.f32	d16, d16, d17
389# CHECK: vcgt.s8	q8, q8, q9
390# CHECK: vcgt.s16	q8, q8, q9
391# CHECK: vcgt.s32	q8, q8, q9
392# CHECK: vcgt.u8	q8, q8, q9
393# CHECK: vcgt.u16	q8, q8, q9
394# CHECK: vcgt.u32	q8, q8, q9
395# CHECK: vcgt.f32	q8, q8, q9
396# CHECK: vacgt.f32	d16, d16, d17
397# CHECK: vacgt.f32	q8, q8, q9
398
3990xa1 0x03 0x40 0xf2
4000xa1 0x03 0x50 0xf2
4010xa1 0x03 0x60 0xf2
4020xa1 0x03 0x40 0xf3
4030xa1 0x03 0x50 0xf3
4040xa1 0x03 0x60 0xf3
4050xa1 0x0e 0x60 0xf3
4060xe2 0x03 0x40 0xf2
4070xe2 0x03 0x50 0xf2
4080xe2 0x03 0x60 0xf2
4090xe2 0x03 0x40 0xf3
4100xe2 0x03 0x50 0xf3
4110xe2 0x03 0x60 0xf3
4120xe2 0x0e 0x60 0xf3
4130xb1 0x0e 0x60 0xf3
4140xf2 0x0e 0x60 0xf3
415
416# CHECK: vtst.8	d16, d16, d17
417# CHECK: vtst.16	d16, d16, d17
418# CHECK: vtst.32	d16, d16, d17
419# CHECK: vtst.8	q8, q8, q9
420# CHECK: vtst.16	q8, q8, q9
421# CHECK: vtst.32	q8, q8, q9
422
4230xb1 0x08 0x40 0xf2
4240xb1 0x08 0x50 0xf2
4250xb1 0x08 0x60 0xf2
4260xf2 0x08 0x40 0xf2
4270xf2 0x08 0x50 0xf2
4280xf2 0x08 0x60 0xf2
429
430# CHECK: vceq.i8	d16, d16, #0
431# CHECK: vcge.s8	d16, d16, #0
432# CHECK: vcle.s8	d16, d16, #0
433# CHECK: vcgt.s8	d16, d16, #0
434# CHECK: vclt.s8	d16, d16, #0
435
4360x20 0x01 0xf1 0xf3
4370xa0 0x00 0xf1 0xf3
4380xa0 0x01 0xf1 0xf3
4390x20 0x00 0xf1 0xf3
4400x20 0x02 0xf1 0xf3
441
442
4430x20 0x07 0xfb 0xf3
444# CHECK: vcvt.s32.f32	d16, d16
4450xa0 0x07 0xfb 0xf3
446# CHECK: vcvt.u32.f32	d16, d16
4470x20 0x06 0xfb 0xf3
448# CHECK: vcvt.f32.s32	d16, d16
4490xa0 0x06 0xfb 0xf3
450# CHECK: vcvt.f32.u32	d16, d16
4510x60 0x07 0xfb 0xf3
452# CHECK: vcvt.s32.f32	q8, q8
4530xe0 0x07 0xfb 0xf3
454# CHECK: vcvt.u32.f32	q8, q8
4550x60 0x06 0xfb 0xf3
456# CHECK: vcvt.f32.s32	q8, q8
4570xe0 0x06 0xfb 0xf3
458# CHECK: vcvt.f32.u32	q8, q8
4590x30 0x0f 0xff 0xf2
460# CHECK: vcvt.s32.f32	d16, d16, #1
4610x30 0x0f 0xff 0xf3
462# CHECK: vcvt.u32.f32	d16, d16, #1
4630x30 0x0e 0xff 0xf2
464# CHECK: vcvt.f32.s32	d16, d16, #1
4650x30 0x0e 0xff 0xf3
466# CHECK: vcvt.f32.u32	d16, d16, #1
4670x70 0x0f 0xff 0xf2
468# CHECK: vcvt.s32.f32	q8, q8, #1
4690x70 0x0f 0xff 0xf3
470# CHECK: vcvt.u32.f32	q8, q8, #1
4710x70 0x0e 0xff 0xf2
472# CHECK: vcvt.f32.s32	q8, q8, #1
4730x70 0x0e 0xff 0xf3
474# CHECK: vcvt.f32.u32	q8, q8, #1
4750x20 0x07 0xf6 0xf3
476# CHECK: vcvt.f32.f16	q8, d16
4770x20 0x06 0xf6 0xf3
478# CHECK: vcvt.f16.f32	d16, q8
479
480
481
482
483# CHECK: vdup.8	d16, r0
484# CHECK: vdup.16	d16, r0
485# CHECK: vdup.32	d16, r0
486
4870x90 0x0b 0xc0 0xee
4880xb0 0x0b 0x80 0xee
4890x90 0x0b 0x80 0xee
490
491# CHECK: vdup.8	q8, r0
492# CHECK: vdup.16	q8, r0
493# CHECK: vdup.32	q8, r0
494
4950x90 0x0b 0xe0 0xee
4960xb0 0x0b 0xa0 0xee
4970x90 0x0b 0xa0 0xee
498
499# CHECK: vdup.8	d16, d16[1
500# CHECK: vdup.16	d16, d16[1
501# CHECK: vdup.32	d16, d16[1
502
5030x20 0x0c 0xf3 0xf3
5040x20 0x0c 0xf6 0xf3
5050x20 0x0c 0xfc 0xf3
506
507# CHECK: vdup.8	q8, d16[1
508# CHECK: vdup.16	q8, d16[1
509# CHECK: vdup.32	q8, d16[1
510
5110x60 0x0c 0xf3 0xf3
5120x60 0x0c 0xf6 0xf3
5130x60 0x0c 0xfc 0xf3
514
515
5160xb1 0x06 0x40 0xf2
517# CHECK: vmin.s8	d16, d16, d17
5180xb1 0x06 0x50 0xf2
519# CHECK: vmin.s16	d16, d16, d17
5200xb1 0x06 0x60 0xf2
521# CHECK: vmin.s32	d16, d16, d17
5220xb1 0x06 0x40 0xf3
523# CHECK: vmin.u8	d16, d16, d17
5240xb1 0x06 0x50 0xf3
525# CHECK: vmin.u16	d16, d16, d17
5260xb1 0x06 0x60 0xf3
527# CHECK: vmin.u32	d16, d16, d17
5280xa1 0x0f 0x60 0xf2
529# CHECK: vmin.f32	d16, d16, d17
5300xf2 0x06 0x40 0xf2
531# CHECK: vmin.s8	q8, q8, q9
5320xf2 0x06 0x50 0xf2
533# CHECK: vmin.s16	q8, q8, q9
5340xf2 0x06 0x60 0xf2
535# CHECK: vmin.s32	q8, q8, q9
5360xf2 0x06 0x40 0xf3
537# CHECK: vmin.u8	q8, q8, q9
5380xf2 0x06 0x50 0xf3
539# CHECK: vmin.u16	q8, q8, q9
5400xf2 0x06 0x60 0xf3
541# CHECK: vmin.u32	q8, q8, q9
5420xe2 0x0f 0x60 0xf2
543# CHECK: vmin.f32	q8, q8, q9
5440xa1 0x06 0x40 0xf2
545# CHECK: vmax.s8	d16, d16, d17
5460xa1 0x06 0x50 0xf2
547# CHECK: vmax.s16	d16, d16, d17
5480xa1 0x06 0x60 0xf2
549# CHECK: vmax.s32	d16, d16, d17
5500xa1 0x06 0x40 0xf3
551# CHECK: vmax.u8	d16, d16, d17
5520xa1 0x06 0x50 0xf3
553# CHECK: vmax.u16	d16, d16, d17
5540xa1 0x06 0x60 0xf3
555# CHECK: vmax.u32	d16, d16, d17
5560xa1 0x0f 0x40 0xf2
557# CHECK: vmax.f32	d16, d16, d17
5580xe2 0x06 0x40 0xf2
559# CHECK: vmax.s8	q8, q8, q9
5600xe2 0x06 0x50 0xf2
561# CHECK: vmax.s16	q8, q8, q9
5620xe2 0x06 0x60 0xf2
563# CHECK: vmax.s32	q8, q8, q9
5640xe2 0x06 0x40 0xf3
565# CHECK: vmax.u8	q8, q8, q9
5660xe2 0x06 0x50 0xf3
567# CHECK: vmax.u16	q8, q8, q9
5680xe2 0x06 0x60 0xf3
569# CHECK: vmax.u32	q8, q8, q9
5700xe2 0x0f 0x40 0xf2
571# CHECK: vmax.f32	q8, q8, q9
572
573
574
5750x18 0x0e 0xc0 0xf2
576# CHECK: vmov.i8	d16, #0x8
5770x10 0x08 0xc1 0xf2
578# CHECK: vmov.i16	d16, #0x10
5790x10 0x0a 0xc1 0xf2
580# CHECK: vmov.i16	d16, #0x1000
5810x10 0x00 0xc2 0xf2
582# CHECK: vmov.i32	d16, #0x20
5830x10 0x02 0xc2 0xf2
584# CHECK: vmov.i32	d16, #0x2000
5850x10 0x04 0xc2 0xf2
586# CHECK: vmov.i32	d16, #0x200000
5870x10 0x06 0xc2 0xf2
588# CHECK: vmov.i32	d16, #0x20000000
5890x10 0x0c 0xc2 0xf2
590# CHECK: vmov.i32	d16, #0x20ff
5910x10 0x0d 0xc2 0xf2
592# CHECK: vmov.i32	d16, #0x20ffff
5930x33 0x0e 0xc1 0xf3
594# CHECK: vmov.i64	d16, #0xff0000ff0000ffff
5950x58 0x0e 0xc0 0xf2
596# CHECK: vmov.i8	q8, #0x8
5970x50 0x08 0xc1 0xf2
598# CHECK: vmov.i16	q8, #0x10
5990x50 0x0a 0xc1 0xf2
600# CHECK: vmov.i16	q8, #0x1000
6010x50 0x00 0xc2 0xf2
602# CHECK: vmov.i32	q8, #0x20
6030x50 0x02 0xc2 0xf2
604# CHECK: vmov.i32	q8, #0x2000
6050x50 0x04 0xc2 0xf2
606# CHECK: vmov.i32	q8, #0x200000
6070x50 0x06 0xc2 0xf2
608# CHECK: vmov.i32	q8, #0x20000000
6090x50 0x0c 0xc2 0xf2
610# CHECK: vmov.i32	q8, #0x20ff
6110x50 0x0d 0xc2 0xf2
612# CHECK: vmov.i32	q8, #0x20ffff
6130x73 0x0e 0xc1 0xf3
614# CHECK: vmov.i64	q8, #0xff0000ff0000ffff
6150x30 0x08 0xc1 0xf2
616# CHECK: vmvn.i16	d16, #0x10
6170x30 0x0a 0xc1 0xf2
618# CHECK: vmvn.i16	d16, #0x1000
6190x30 0x00 0xc2 0xf2
620# CHECK: vmvn.i32	d16, #0x20
6210x30 0x02 0xc2 0xf2
622# CHECK: vmvn.i32	d16, #0x2000
6230x30 0x04 0xc2 0xf2
624# CHECK: vmvn.i32	d16, #0x200000
6250x30 0x06 0xc2 0xf2
626# CHECK: vmvn.i32	d16, #0x20000000
6270x30 0x0c 0xc2 0xf2
628# CHECK: vmvn.i32	d16, #0x20ff
6290x30 0x0d 0xc2 0xf2
630# CHECK: vmvn.i32	d16, #0x20ffff
6310x30 0x0a 0xc8 0xf2
632# CHECK: vmovl.s8	q8, d16
6330x30 0x0a 0xd0 0xf2
634# CHECK: vmovl.s16	q8, d16
6350x30 0x0a 0xe0 0xf2
636# CHECK: vmovl.s32	q8, d16
6370x30 0x0a 0xc8 0xf3
638# CHECK: vmovl.u8	q8, d16
6390x30 0x0a 0xd0 0xf3
640# CHECK: vmovl.u16	q8, d16
6410x30 0x0a 0xe0 0xf3
642# CHECK: vmovl.u32	q8, d16
6430x20 0x02 0xf2 0xf3
644# CHECK: vmovn.i16	d16, q8
6450x20 0x02 0xf6 0xf3
646# CHECK: vmovn.i32	d16, q8
6470x20 0x02 0xfa 0xf3
648# CHECK: vmovn.i64	d16, q8
6490xa0 0x02 0xf2 0xf3
650# CHECK: vqmovn.s16	d16, q8
6510xa0 0x02 0xf6 0xf3
652# CHECK: vqmovn.s32	d16, q8
6530xa0 0x02 0xfa 0xf3
654# CHECK: vqmovn.s64	d16, q8
6550xe0 0x02 0xf2 0xf3
656# CHECK: vqmovn.u16	d16, q8
6570xe0 0x02 0xf6 0xf3
658# CHECK: vqmovn.u32	d16, q8
6590xe0 0x02 0xfa 0xf3
660# CHECK: vqmovn.u64	d16, q8
6610x60 0x02 0xf2 0xf3
662# CHECK: vqmovun.s16	d16, q8
6630x60 0x02 0xf6 0xf3
664# CHECK: vqmovun.s32	d16, q8
6650x60 0x02 0xfa 0xf3
666# CHECK: vqmovun.s64	d16, q8
6670xb0 0x0b 0x50 0xee
668# CHECK: vmov.s8	r0, d16[1
6690xf0 0x0b 0x10 0xee
670# CHECK: vmov.s16	r0, d16[1
6710xb0 0x0b 0xd0 0xee
672# CHECK: vmov.u8	r0, d16[1
6730xf0 0x0b 0x90 0xee
674# CHECK: vmov.u16	r0, d16[1
6750x90 0x0b 0x30 0xee
676# CHECK: vmov.32	r0, d16[1
6770xb0 0x1b 0x40 0xee
678# CHECK: vmov.8	d16[1], r1
6790xf0 0x1b 0x00 0xee
680# CHECK: vmov.16	d16[1], r1
6810x90 0x1b 0x20 0xee
682# CHECK: vmov.32	d16[1], r1
6830xb0 0x1b 0x42 0xee
684# CHECK: vmov.8	d18[1], r1
6850xf0 0x1b 0x02 0xee
686# CHECK: vmov.16	d18[1], r1
6870x90 0x1b 0x22 0xee
688# CHECK: vmov.32	d18[1], r1
689
690
691
6920xa1 0x09 0x42 0xf2
693# CHECK: vmla.i8	d16, d18, d17
6940xa1 0x09 0x52 0xf2
695# CHECK: vmla.i16	d16, d18, d17
6960xa1 0x09 0x62 0xf2
697# CHECK: vmla.i32	d16, d18, d17
6980xb1 0x0d 0x42 0xf2
699# CHECK: vmla.f32	d16, d18, d17
7000xe4 0x29 0x40 0xf2
701# CHECK: vmla.i8	q9, q8, q10
7020xe4 0x29 0x50 0xf2
703# CHECK: vmla.i16	q9, q8, q10
7040xe4 0x29 0x60 0xf2
705# CHECK: vmla.i32	q9, q8, q10
7060xf4 0x2d 0x40 0xf2
707# CHECK: vmla.f32	q9, q8, q10
7080xa2 0x08 0xc3 0xf2
709# CHECK: vmlal.s8	q8, d19, d18
7100xa2 0x08 0xd3 0xf2
711# CHECK: vmlal.s16	q8, d19, d18
7120xa2 0x08 0xe3 0xf2
713# CHECK: vmlal.s32	q8, d19, d18
7140xa2 0x08 0xc3 0xf3
715# CHECK: vmlal.u8	q8, d19, d18
7160xa2 0x08 0xd3 0xf3
717# CHECK: vmlal.u16	q8, d19, d18
7180xa2 0x08 0xe3 0xf3
719# CHECK: vmlal.u32	q8, d19, d18
7200xa2 0x09 0xd3 0xf2
721# CHECK: vqdmlal.s16	q8, d19, d18
7220xa2 0x09 0xe3 0xf2
723# CHECK: vqdmlal.s32	q8, d19, d18
7240xa1 0x09 0x42 0xf3
725# CHECK: vmls.i8	d16, d18, d17
7260xa1 0x09 0x52 0xf3
727# CHECK: vmls.i16	d16, d18, d17
7280xa1 0x09 0x62 0xf3
729# CHECK: vmls.i32	d16, d18, d17
7300xb1 0x0d 0x62 0xf2
731# CHECK: vmls.f32	d16, d18, d17
7320xe4 0x29 0x40 0xf3
733# CHECK: vmls.i8	q9, q8, q10
7340xe4 0x29 0x50 0xf3
735# CHECK: vmls.i16	q9, q8, q10
7360xe4 0x29 0x60 0xf3
737# CHECK: vmls.i32	q9, q8, q10
7380xf4 0x2d 0x60 0xf2
739# CHECK: vmls.f32	q9, q8, q10
7400xa2 0x0a 0xc3 0xf2
741# CHECK: vmlsl.s8	q8, d19, d18
7420xa2 0x0a 0xd3 0xf2
743# CHECK: vmlsl.s16	q8, d19, d18
7440xa2 0x0a 0xe3 0xf2
745# CHECK: vmlsl.s32	q8, d19, d18
7460xa2 0x0a 0xc3 0xf3
747# CHECK: vmlsl.u8	q8, d19, d18
7480xa2 0x0a 0xd3 0xf3
749# CHECK: vmlsl.u16	q8, d19, d18
7500xa2 0x0a 0xe3 0xf3
751# CHECK: vmlsl.u32	q8, d19, d18
7520xa2 0x0b 0xd3 0xf2
753# CHECK: vqdmlsl.s16	q8, d19, d18
7540xa2 0x0b 0xe3 0xf2
755# CHECK: vqdmlsl.s32	q8, d19, d18
756
757
7580xb1 0x09 0x40 0xf2
759# CHECK: vmul.i8	d16, d16, d17
7600xb1 0x09 0x50 0xf2
761# CHECK: vmul.i16	d16, d16, d17
7620xb1 0x09 0x60 0xf2
763# CHECK: vmul.i32	d16, d16, d17
7640xb1 0x0d 0x40 0xf3
765# CHECK: vmul.f32	d16, d16, d17
7660xf2 0x09 0x40 0xf2
767# CHECK: vmul.i8	q8, q8, q9
7680xf2 0x09 0x50 0xf2
769# CHECK: vmul.i16	q8, q8, q9
7700xf2 0x09 0x60 0xf2
771# CHECK: vmul.i32	q8, q8, q9
7720xf2 0x0d 0x40 0xf3
773# CHECK: vmul.f32	q8, q8, q9
7740xb1 0x09 0x40 0xf3
775# CHECK: vmul.p8	d16, d16, d17
7760xf2 0x09 0x40 0xf3
777# CHECK: vmul.p8	q8, q8, q9
7780xa1 0x0b 0x50 0xf2
779# CHECK: vqdmulh.s16	d16, d16, d17
7800xa1 0x0b 0x60 0xf2
781# CHECK: vqdmulh.s32	d16, d16, d17
7820xe2 0x0b 0x50 0xf2
783# CHECK: vqdmulh.s16	q8, q8, q9
7840xe2 0x0b 0x60 0xf2
785# CHECK: vqdmulh.s32	q8, q8, q9
7860xa1 0x0b 0x50 0xf3
787# CHECK: vqrdmulh.s16	d16, d16, d17
7880xa1 0x0b 0x60 0xf3
789# CHECK: vqrdmulh.s32	d16, d16, d17
7900xe2 0x0b 0x50 0xf3
791# CHECK: vqrdmulh.s16	q8, q8, q9
7920xe2 0x0b 0x60 0xf3
793# CHECK: vqrdmulh.s32	q8, q8, q9
7940xa1 0x0c 0xc0 0xf2
795# CHECK: vmull.s8	q8, d16, d17
7960xa1 0x0c 0xd0 0xf2
797# CHECK: vmull.s16	q8, d16, d17
7980xa1 0x0c 0xe0 0xf2
799# CHECK: vmull.s32	q8, d16, d17
8000xa1 0x0c 0xc0 0xf3
801# CHECK: vmull.u8	q8, d16, d17
8020xa1 0x0c 0xd0 0xf3
803# CHECK: vmull.u16	q8, d16, d17
8040xa1 0x0c 0xe0 0xf3
805# CHECK: vmull.u32	q8, d16, d17
8060xa1 0x0e 0xc0 0xf2
807# CHECK: vmull.p8	q8, d16, d17
8080xa1 0x0d 0xd0 0xf2
809# CHECK: vqdmull.s16	q8, d16, d17
8100xa1 0x0d 0xe0 0xf2
811# CHECK: vqdmull.s32	q8, d16, d17
812
813
8140xa0 0x03 0xf1 0xf3
815# CHECK: vneg.s8	d16, d16
8160xa0 0x03 0xf5 0xf3
817# CHECK: vneg.s16	d16, d16
8180xa0 0x03 0xf9 0xf3
819# CHECK: vneg.s32	d16, d16
8200xa0 0x07 0xf9 0xf3
821# CHECK: vneg.f32	d16, d16
8220xe0 0x03 0xf1 0xf3
823# CHECK: vneg.s8	q8, q8
8240xe0 0x03 0xf5 0xf3
825# CHECK: vneg.s16	q8, q8
8260xe0 0x03 0xf9 0xf3
827# CHECK: vneg.s32	q8, q8
8280xe0 0x07 0xf9 0xf3
829# CHECK: vneg.f32	q8, q8
8300xa0 0x07 0xf0 0xf3
831# CHECK: vqneg.s8	d16, d16
8320xa0 0x07 0xf4 0xf3
833# CHECK: vqneg.s16	d16, d16
8340xa0 0x07 0xf8 0xf3
835# CHECK: vqneg.s32	d16, d16
8360xe0 0x07 0xf0 0xf3
837# CHECK: vqneg.s8	q8, q8
8380xe0 0x07 0xf4 0xf3
839# CHECK: vqneg.s16	q8, q8
8400xe0 0x07 0xf8 0xf3
841# CHECK: vqneg.s32	q8, q8
842
843
8440xb0 0x0b 0x41 0xf2
845# CHECK: vpadd.i8	d16, d17, d16
8460xb0 0x0b 0x51 0xf2
847# CHECK: vpadd.i16	d16, d17, d16
8480xb0 0x0b 0x61 0xf2
849# CHECK: vpadd.i32	d16, d17, d16
8500xa1 0x0d 0x40 0xf3
851# CHECK: vpadd.f32	d16, d16, d17
8520x20 0x02 0xf0 0xf3
853# CHECK: vpaddl.s8	d16, d16
8540x20 0x02 0xf4 0xf3
855# CHECK: vpaddl.s16	d16, d16
8560x20 0x02 0xf8 0xf3
857# CHECK: vpaddl.s32	d16, d16
8580xa0 0x02 0xf0 0xf3
859# CHECK: vpaddl.u8	d16, d16
8600xa0 0x02 0xf4 0xf3
861# CHECK: vpaddl.u16	d16, d16
8620xa0 0x02 0xf8 0xf3
863# CHECK: vpaddl.u32	d16, d16
8640x60 0x02 0xf0 0xf3
865# CHECK: vpaddl.s8	q8, q8
8660x60 0x02 0xf4 0xf3
867# CHECK: vpaddl.s16	q8, q8
8680x60 0x02 0xf8 0xf3
869# CHECK: vpaddl.s32	q8, q8
8700xe0 0x02 0xf0 0xf3
871# CHECK: vpaddl.u8	q8, q8
8720xe0 0x02 0xf4 0xf3
873# CHECK: vpaddl.u16	q8, q8
8740xe0 0x02 0xf8 0xf3
875# CHECK: vpaddl.u32	q8, q8
8760x21 0x06 0xf0 0xf3
877# CHECK: vpadal.s8	d16, d17
8780x21 0x06 0xf4 0xf3
879# CHECK: vpadal.s16	d16, d17
8800x21 0x06 0xf8 0xf3
881# CHECK: vpadal.s32	d16, d17
8820xa1 0x06 0xf0 0xf3
883# CHECK: vpadal.u8	d16, d17
8840xa1 0x06 0xf4 0xf3
885# CHECK: vpadal.u16	d16, d17
8860xa1 0x06 0xf8 0xf3
887# CHECK: vpadal.u32	d16, d17
8880x60 0x26 0xf0 0xf3
889# CHECK: vpadal.s8	q9, q8
8900x60 0x26 0xf4 0xf3
891# CHECK: vpadal.s16	q9, q8
8920x60 0x26 0xf8 0xf3
893# CHECK: vpadal.s32	q9, q8
8940xe0 0x26 0xf0 0xf3
895# CHECK: vpadal.u8	q9, q8
8960xe0 0x26 0xf4 0xf3
897# CHECK: vpadal.u16	q9, q8
8980xe0 0x26 0xf8 0xf3
899# CHECK: vpadal.u32	q9, q8
9000xb1 0x0a 0x40 0xf2
901# CHECK: vpmin.s8	d16, d16, d17
9020xb1 0x0a 0x50 0xf2
903# CHECK: vpmin.s16	d16, d16, d17
9040xb1 0x0a 0x60 0xf2
905# CHECK: vpmin.s32	d16, d16, d17
9060xb1 0x0a 0x40 0xf3
907# CHECK: vpmin.u8	d16, d16, d17
9080xb1 0x0a 0x50 0xf3
909# CHECK: vpmin.u16	d16, d16, d17
9100xb1 0x0a 0x60 0xf3
911# CHECK: vpmin.u32	d16, d16, d17
9120xa1 0x0f 0x60 0xf3
913# CHECK: vpmin.f32	d16, d16, d17
9140xa1 0x0a 0x40 0xf2
915# CHECK: vpmax.s8	d16, d16, d17
9160xa1 0x0a 0x50 0xf2
917# CHECK: vpmax.s16	d16, d16, d17
9180xa1 0x0a 0x60 0xf2
919# CHECK: vpmax.s32	d16, d16, d17
9200xa1 0x0a 0x40 0xf3
921# CHECK: vpmax.u8	d16, d16, d17
9220xa1 0x0a 0x50 0xf3
923# CHECK: vpmax.u16	d16, d16, d17
9240xa1 0x0a 0x60 0xf3
925# CHECK: vpmax.u32	d16, d16, d17
9260xa1 0x0f 0x40 0xf3
927# CHECK: vpmax.f32	d16, d16, d17
928
929
9300x20 0x04 0xfb 0xf3
931# CHECK: vrecpe.u32	d16, d16
9320x60 0x04 0xfb 0xf3
933# CHECK: vrecpe.u32	q8, q8
9340x20 0x05 0xfb 0xf3
935# CHECK: vrecpe.f32	d16, d16
9360x60 0x05 0xfb 0xf3
937# CHECK: vrecpe.f32	q8, q8
9380xb1 0x0f 0x40 0xf2
939# CHECK: vrecps.f32	d16, d16, d17
9400xf2 0x0f 0x40 0xf2
941# CHECK: vrecps.f32	q8, q8, q9
9420xa0 0x04 0xfb 0xf3
943# CHECK: vrsqrte.u32	d16, d16
9440xe0 0x04 0xfb 0xf3
945# CHECK: vrsqrte.u32	q8, q8
9460xa0 0x05 0xfb 0xf3
947# CHECK: vrsqrte.f32	d16, d16
9480xe0 0x05 0xfb 0xf3
949# CHECK: vrsqrte.f32	q8, q8
9500xb1 0x0f 0x60 0xf2
951# CHECK: vrsqrts.f32	d16, d16, d17
9520xf2 0x0f 0x60 0xf2
953# CHECK: vrsqrts.f32	q8, q8, q9
954
955
9560x20 0x00 0xf0 0xf3
957# CHECK: vrev64.8	d16, d16
9580x20 0x00 0xf4 0xf3
959# CHECK: vrev64.16	d16, d16
9600x20 0x00 0xf8 0xf3
961# CHECK: vrev64.32	d16, d16
9620x60 0x00 0xf0 0xf3
963# CHECK: vrev64.8	q8, q8
9640x60 0x00 0xf4 0xf3
965# CHECK: vrev64.16	q8, q8
9660x60 0x00 0xf8 0xf3
967# CHECK: vrev64.32	q8, q8
9680xa0 0x00 0xf0 0xf3
969# CHECK: vrev32.8	d16, d16
9700xa0 0x00 0xf4 0xf3
971# CHECK: vrev32.16	d16, d16
9720xe0 0x00 0xf0 0xf3
973# CHECK: vrev32.8	q8, q8
9740xe0 0x00 0xf4 0xf3
975# CHECK: vrev32.16	q8, q8
9760x20 0x01 0xf0 0xf3
977# CHECK: vrev16.8	d16, d16
9780x60 0x01 0xf0 0xf3
979# CHECK: vrev16.8	q8, q8
980
981
9820xb0 0x04 0x41 0xf2
983# CHECK: vqshl.s8	d16, d16, d17
9840xb0 0x04 0x51 0xf2
985# CHECK: vqshl.s16	d16, d16, d17
9860xb0 0x04 0x61 0xf2
987# CHECK: vqshl.s32	d16, d16, d17
9880xb0 0x04 0x71 0xf2
989# CHECK: vqshl.s64	d16, d16, d17
9900xb0 0x04 0x41 0xf3
991# CHECK: vqshl.u8	d16, d16, d17
9920xb0 0x04 0x51 0xf3
993# CHECK: vqshl.u16	d16, d16, d17
9940xb0 0x04 0x61 0xf3
995# CHECK: vqshl.u32	d16, d16, d17
9960xb0 0x04 0x71 0xf3
997# CHECK: vqshl.u64	d16, d16, d17
9980xf0 0x04 0x42 0xf2
999# CHECK: vqshl.s8	q8, q8, q9
10000xf0 0x04 0x52 0xf2
1001# CHECK: vqshl.s16	q8, q8, q9
10020xf0 0x04 0x62 0xf2
1003# CHECK: vqshl.s32	q8, q8, q9
10040xf0 0x04 0x72 0xf2
1005# CHECK: vqshl.s64	q8, q8, q9
10060xf0 0x04 0x42 0xf3
1007# CHECK: vqshl.u8	q8, q8, q9
10080xf0 0x04 0x52 0xf3
1009# CHECK: vqshl.u16	q8, q8, q9
10100xf0 0x04 0x62 0xf3
1011# CHECK: vqshl.u32	q8, q8, q9
10120xf0 0x04 0x72 0xf3
1013# CHECK: vqshl.u64	q8, q8, q9
10140x30 0x07 0xcf 0xf2
1015# CHECK: vqshl.s8	d16, d16, #7
10160x30 0x07 0xdf 0xf2
1017# CHECK: vqshl.s16	d16, d16, #15
10180x30 0x07 0xff 0xf2
1019# CHECK: vqshl.s32	d16, d16, #31
10200xb0 0x07 0xff 0xf2
1021# CHECK: vqshl.s64	d16, d16, #63
10220x30 0x07 0xcf 0xf3
1023# CHECK: vqshl.u8	d16, d16, #7
10240x30 0x07 0xdf 0xf3
1025# CHECK: vqshl.u16	d16, d16, #15
10260x30 0x07 0xff 0xf3
1027# CHECK: vqshl.u32	d16, d16, #31
10280xb0 0x07 0xff 0xf3
1029# CHECK: vqshl.u64	d16, d16, #63
10300x30 0x06 0xcf 0xf3
1031# CHECK: vqshlu.s8	d16, d16, #7
10320x30 0x06 0xdf 0xf3
1033# CHECK: vqshlu.s16	d16, d16, #15
10340x30 0x06 0xff 0xf3
1035# CHECK: vqshlu.s32	d16, d16, #31
10360xb0 0x06 0xff 0xf3
1037# CHECK: vqshlu.s64	d16, d16, #63
10380x70 0x07 0xcf 0xf2
1039# CHECK: vqshl.s8	q8, q8, #7
10400x70 0x07 0xdf 0xf2
1041# CHECK: vqshl.s16	q8, q8, #15
10420x70 0x07 0xff 0xf2
1043# CHECK: vqshl.s32	q8, q8, #31
10440xf0 0x07 0xff 0xf2
1045# CHECK: vqshl.s64	q8, q8, #63
10460x70 0x07 0xcf 0xf3
1047# CHECK: vqshl.u8	q8, q8, #7
10480x70 0x07 0xdf 0xf3
1049# CHECK: vqshl.u16	q8, q8, #15
10500x70 0x07 0xff 0xf3
1051# CHECK: vqshl.u32	q8, q8, #31
10520xf0 0x07 0xff 0xf3
1053# CHECK: vqshl.u64	q8, q8, #63
10540x70 0x06 0xcf 0xf3
1055# CHECK: vqshlu.s8	q8, q8, #7
10560x70 0x06 0xdf 0xf3
1057# CHECK: vqshlu.s16	q8, q8, #15
10580x70 0x06 0xff 0xf3
1059# CHECK: vqshlu.s32	q8, q8, #31
10600xf0 0x06 0xff 0xf3
1061# CHECK: vqshlu.s64	q8, q8, #63
10620xb0 0x05 0x41 0xf2
1063# CHECK: vqrshl.s8	d16, d16, d17
10640xb0 0x05 0x51 0xf2
1065# CHECK: vqrshl.s16	d16, d16, d17
10660xb0 0x05 0x61 0xf2
1067# CHECK: vqrshl.s32	d16, d16, d17
10680xb0 0x05 0x71 0xf2
1069# CHECK: vqrshl.s64	d16, d16, d17
10700xb0 0x05 0x41 0xf3
1071# CHECK: vqrshl.u8	d16, d16, d17
10720xb0 0x05 0x51 0xf3
1073# CHECK: vqrshl.u16	d16, d16, d17
10740xb0 0x05 0x61 0xf3
1075# CHECK: vqrshl.u32	d16, d16, d17
10760xb0 0x05 0x71 0xf3
1077# CHECK: vqrshl.u64	d16, d16, d17
10780xf0 0x05 0x42 0xf2
1079# CHECK: vqrshl.s8	q8, q8, q9
10800xf0 0x05 0x52 0xf2
1081# CHECK: vqrshl.s16	q8, q8, q9
10820xf0 0x05 0x62 0xf2
1083# CHECK: vqrshl.s32	q8, q8, q9
10840xf0 0x05 0x72 0xf2
1085# CHECK: vqrshl.s64	q8, q8, q9
10860xf0 0x05 0x42 0xf3
1087# CHECK: vqrshl.u8	q8, q8, q9
10880xf0 0x05 0x52 0xf3
1089# CHECK: vqrshl.u16	q8, q8, q9
10900xf0 0x05 0x62 0xf3
1091# CHECK: vqrshl.u32	q8, q8, q9
10920xf0 0x05 0x72 0xf3
1093# CHECK: vqrshl.u64	q8, q8, q9
10940x30 0x09 0xc8 0xf2
1095# CHECK: vqshrn.s16	d16, q8, #8
10960x30 0x09 0xd0 0xf2
1097# CHECK: vqshrn.s32	d16, q8, #16
10980x30 0x09 0xe0 0xf2
1099# CHECK: vqshrn.s64	d16, q8, #32
11000x30 0x09 0xc8 0xf3
1101# CHECK: vqshrn.u16	d16, q8, #8
11020x30 0x09 0xd0 0xf3
1103# CHECK: vqshrn.u32	d16, q8, #16
11040x30 0x09 0xe0 0xf3
1105# CHECK: vqshrn.u64	d16, q8, #32
11060x30 0x08 0xc8 0xf3
1107# CHECK: vqshrun.s16	d16, q8, #8
11080x30 0x08 0xd0 0xf3
1109# CHECK: vqshrun.s32	d16, q8, #16
11100x30 0x08 0xe0 0xf3
1111# CHECK: vqshrun.s64	d16, q8, #32
11120x70 0x09 0xc8 0xf2
1113# CHECK: vqrshrn.s16	d16, q8, #8
11140x70 0x09 0xd0 0xf2
1115# CHECK: vqrshrn.s32	d16, q8, #16
11160x70 0x09 0xe0 0xf2
1117# CHECK: vqrshrn.s64	d16, q8, #32
11180x70 0x09 0xc8 0xf3
1119# CHECK: vqrshrn.u16	d16, q8, #8
11200x70 0x09 0xd0 0xf3
1121# CHECK: vqrshrn.u32	d16, q8, #16
11220x70 0x09 0xe0 0xf3
1123# CHECK: vqrshrn.u64	d16, q8, #32
11240x70 0x08 0xc8 0xf3
1125# CHECK: vqrshrun.s16	d16, q8, #8
11260x70 0x08 0xd0 0xf3
1127# CHECK: vqrshrun.s32	d16, q8, #16
11280x70 0x08 0xe0 0xf3
1129# CHECK: vqrshrun.s64	d16, q8, #32
1130
1131
11320xa1 0x04 0x40 0xf3
1133# CHECK: vshl.u8	d16, d17, d16
11340xa1 0x04 0x50 0xf3
1135# CHECK: vshl.u16	d16, d17, d16
11360xa1 0x04 0x60 0xf3
1137# CHECK: vshl.u32	d16, d17, d16
11380xa1 0x04 0x70 0xf3
1139# CHECK: vshl.u64	d16, d17, d16
11400x30 0x05 0xcf 0xf2
1141# CHECK: vshl.i8	d16, d16, #7
11420x30 0x05 0xdf 0xf2
1143# CHECK: vshl.i16	d16, d16, #15
11440x30 0x05 0xff 0xf2
1145# CHECK: vshl.i32	d16, d16, #31
11460xb0 0x05 0xff 0xf2
1147# CHECK: vshl.i64	d16, d16, #63
11480xe2 0x04 0x40 0xf3
1149# CHECK: vshl.u8	q8, q9, q8
11500xe2 0x04 0x50 0xf3
1151# CHECK: vshl.u16	q8, q9, q8
11520xe2 0x04 0x60 0xf3
1153# CHECK: vshl.u32	q8, q9, q8
11540xe2 0x04 0x70 0xf3
1155# CHECK: vshl.u64	q8, q9, q8
11560x70 0x05 0xcf 0xf2
1157# CHECK: vshl.i8	q8, q8, #7
11580x70 0x05 0xdf 0xf2
1159# CHECK: vshl.i16	q8, q8, #15
11600x70 0x05 0xff 0xf2
1161# CHECK: vshl.i32	q8, q8, #31
11620xf0 0x05 0xff 0xf2
1163# CHECK: vshl.i64	q8, q8, #63
11640x30 0x00 0xc9 0xf3
1165# CHECK: vshr.u8	d16, d16, #7
11660x30 0x00 0xd1 0xf3
1167# CHECK: vshr.u16	d16, d16, #15
11680x30 0x00 0xe1 0xf3
1169# CHECK: vshr.u32	d16, d16, #31
11700xb0 0x00 0xc1 0xf3
1171# CHECK: vshr.u64	d16, d16, #63
11720x70 0x00 0xc9 0xf3
1173# CHECK: vshr.u8	q8, q8, #7
11740x70 0x00 0xd1 0xf3
1175# CHECK: vshr.u16	q8, q8, #15
11760x70 0x00 0xe1 0xf3
1177# CHECK: vshr.u32	q8, q8, #31
11780xf0 0x00 0xc1 0xf3
1179# CHECK: vshr.u64	q8, q8, #63
11800x30 0x00 0xc9 0xf2
1181# CHECK: vshr.s8	d16, d16, #7
11820x30 0x00 0xd1 0xf2
1183# CHECK: vshr.s16	d16, d16, #15
11840x30 0x00 0xe1 0xf2
1185# CHECK: vshr.s32	d16, d16, #31
11860xb0 0x00 0xc1 0xf2
1187# CHECK: vshr.s64	d16, d16, #63
11880x70 0x00 0xc9 0xf2
1189# CHECK: vshr.s8	q8, q8, #7
11900x70 0x00 0xd1 0xf2
1191# CHECK: vshr.s16	q8, q8, #15
11920x70 0x00 0xe1 0xf2
1193# CHECK: vshr.s32	q8, q8, #31
11940xf0 0x00 0xc1 0xf2
1195# CHECK: vshr.s64	q8, q8, #63
11960x30 0x01 0xc9 0xf3
1197# CHECK: vsra.u8   d16, d16, #7
11980x30 0x01 0xd1 0xf3
1199# CHECK: vsra.u16  d16, d16, #15
12000x30 0x01 0xe1 0xf3
1201# CHECK: vsra.u32  d16, d16, #31
12020xb0 0x01 0xc1 0xf3
1203# CHECK: vsra.u64  d16, d16, #63
12040x70 0x01 0xc9 0xf3
1205# CHECK: vsra.u8   q8, q8, #7
12060x70 0x01 0xd1 0xf3
1207# CHECK: vsra.u16  q8, q8, #15
12080x70 0x01 0xe1 0xf3
1209# CHECK: vsra.u32  q8, q8, #31
12100xf0 0x01 0xc1 0xf3
1211# CHECK: vsra.u64  q8, q8, #63
12120x30 0x01 0xc9 0xf2
1213# CHECK: vsra.s8   d16, d16, #7
12140x30 0x01 0xd1 0xf2
1215# CHECK: vsra.s16  d16, d16, #15
12160x30 0x01 0xe1 0xf2
1217# CHECK: vsra.s32  d16, d16, #31
12180xb0 0x01 0xc1 0xf2
1219# CHECK: vsra.s64  d16, d16, #63
12200x70 0x01 0xc9 0xf2
1221# CHECK: vsra.s8   q8, q8, #7
12220x70 0x01 0xd1 0xf2
1223# CHECK: vsra.s16  q8, q8, #15
12240x70 0x01 0xe1 0xf2
1225# CHECK: vsra.s32  q8, q8, #31
12260xf0 0x01 0xc1 0xf2
1227# CHECK: vsra.s64  q8, q8, #63
12280x30 0x04 0xc9 0xf3
1229# CHECK: vsri.8   d16, d16, #7
12300x30 0x04 0xd1 0xf3
1231# CHECK: vsri.16  d16, d16, #15
12320x30 0x04 0xe1 0xf3
1233# CHECK: vsri.32  d16, d16, #31
12340xb0 0x04 0xc1 0xf3
1235# CHECK: vsri.64  d16, d16, #63
12360x70 0x04 0xc9 0xf3
1237# CHECK: vsri.8   q8, q8, #7
12380x70 0x04 0xd1 0xf3
1239# CHECK: vsri.16  q8, q8, #15
12400x70 0x04 0xe1 0xf3
1241# CHECK: vsri.32  q8, q8, #31
12420xf0 0x04 0xc1 0xf3
1243# CHECK: vsri.64  q8, q8, #63
12440x30 0x05 0xcf 0xf3
1245# CHECK: vsli.8   d16, d16, #7
12460x30 0x05 0xdf 0xf3
1247# CHECK: vsli.16  d16, d16, #15
12480x30 0x05 0xff 0xf3
1249# CHECK: vsli.32  d16, d16, #31
12500xb0 0x05 0xff 0xf3
1251# CHECK: vsli.64  d16, d16, #63
12520x70 0x05 0xcf 0xf3
1253# CHECK: vsli.8   q8, q8, #7
12540x70 0x05 0xdf 0xf3
1255# CHECK: vsli.16  q8, q8, #15
12560x70 0x05 0xff 0xf3
1257# CHECK: vsli.32  q8, q8, #31
12580xf0 0x05 0xff 0xf3
1259# CHECK: vsli.64  q8, q8, #63
12600x30 0x0a 0xcf 0xf2
1261# CHECK: vshll.s8	q8, d16, #7
12620x30 0x0a 0xdf 0xf2
1263# CHECK: vshll.s16	q8, d16, #15
12640x30 0x0a 0xff 0xf2
1265# CHECK: vshll.s32	q8, d16, #31
12660x30 0x0a 0xcf 0xf3
1267# CHECK: vshll.u8	q8, d16, #7
12680x30 0x0a 0xdf 0xf3
1269# CHECK: vshll.u16	q8, d16, #15
12700x30 0x0a 0xff 0xf3
1271# CHECK: vshll.u32	q8, d16, #31
12720x20 0x03 0xf2 0xf3
1273# CHECK: vshll.i8	q8, d16, #8
12740x20 0x03 0xf6 0xf3
1275# CHECK: vshll.i16	q8, d16, #16
12760x20 0x03 0xfa 0xf3
1277# CHECK: vshll.i32	q8, d16, #32
12780x30 0x08 0xc8 0xf2
1279# CHECK: vshrn.i16	d16, q8, #8
12800x30 0x08 0xd0 0xf2
1281# CHECK: vshrn.i32	d16, q8, #16
12820x30 0x08 0xe0 0xf2
1283# CHECK: vshrn.i64	d16, q8, #32
12840xa1 0x05 0x40 0xf2
1285# CHECK: vrshl.s8	d16, d17, d16
12860xa1 0x05 0x50 0xf2
1287# CHECK: vrshl.s16	d16, d17, d16
12880xa1 0x05 0x60 0xf2
1289# CHECK: vrshl.s32	d16, d17, d16
12900xa1 0x05 0x70 0xf2
1291# CHECK: vrshl.s64	d16, d17, d16
12920xa1 0x05 0x40 0xf3
1293# CHECK: vrshl.u8	d16, d17, d16
12940xa1 0x05 0x50 0xf3
1295# CHECK: vrshl.u16	d16, d17, d16
12960xa1 0x05 0x60 0xf3
1297# CHECK: vrshl.u32	d16, d17, d16
12980xa1 0x05 0x70 0xf3
1299# CHECK: vrshl.u64	d16, d17, d16
13000xe2 0x05 0x40 0xf2
1301# CHECK: vrshl.s8	q8, q9, q8
13020xe2 0x05 0x50 0xf2
1303# CHECK: vrshl.s16	q8, q9, q8
13040xe2 0x05 0x60 0xf2
1305# CHECK: vrshl.s32	q8, q9, q8
13060xe2 0x05 0x70 0xf2
1307# CHECK: vrshl.s64	q8, q9, q8
13080xe2 0x05 0x40 0xf3
1309# CHECK: vrshl.u8	q8, q9, q8
13100xe2 0x05 0x50 0xf3
1311# CHECK: vrshl.u16	q8, q9, q8
13120xe2 0x05 0x60 0xf3
1313# CHECK: vrshl.u32	q8, q9, q8
13140xe2 0x05 0x70 0xf3
1315# CHECK: vrshl.u64	q8, q9, q8
13160x30 0x02 0xc8 0xf2
1317# CHECK: vrshr.s8	d16, d16, #8
13180x30 0x02 0xd0 0xf2
1319# CHECK: vrshr.s16	d16, d16, #16
13200x30 0x02 0xe0 0xf2
1321# CHECK: vrshr.s32	d16, d16, #32
13220xb0 0x02 0xc0 0xf2
1323# CHECK: vrshr.s64	d16, d16, #64
13240x30 0x02 0xc8 0xf3
1325# CHECK: vrshr.u8	d16, d16, #8
13260x30 0x02 0xd0 0xf3
1327# CHECK: vrshr.u16	d16, d16, #16
13280x30 0x02 0xe0 0xf3
1329# CHECK: vrshr.u32	d16, d16, #32
13300xb0 0x02 0xc0 0xf3
1331# CHECK: vrshr.u64	d16, d16, #64
13320x70 0x02 0xc8 0xf2
1333# CHECK: vrshr.s8	q8, q8, #8
13340x70 0x02 0xd0 0xf2
1335# CHECK: vrshr.s16	q8, q8, #16
13360x70 0x02 0xe0 0xf2
1337# CHECK: vrshr.s32	q8, q8, #32
13380xf0 0x02 0xc0 0xf2
1339# CHECK: vrshr.s64	q8, q8, #64
13400x70 0x02 0xc8 0xf3
1341# CHECK: vrshr.u8	q8, q8, #8
13420x70 0x02 0xd0 0xf3
1343# CHECK: vrshr.u16	q8, q8, #16
13440x70 0x02 0xe0 0xf3
1345# CHECK: vrshr.u32	q8, q8, #32
13460xf0 0x02 0xc0 0xf3
1347# CHECK: vrshr.u64	q8, q8, #64
13480x70 0x08 0xc8 0xf2
1349# CHECK: vrshrn.i16	d16, q8, #8
13500x70 0x08 0xd0 0xf2
1351# CHECK: vrshrn.i32	d16, q8, #16
13520x70 0x08 0xe0 0xf2
1353# CHECK: vrshrn.i64	d16, q8, #32
13540x70 0x09 0xcc 0xf2
1355# CHECK: vqrshrn.s16	d16, q8, #4
13560x70 0x09 0xd3 0xf2
1357# CHECK: vqrshrn.s32	d16, q8, #13
13580x70 0x09 0xf3 0xf2
1359# CHECK: vqrshrn.s64	d16, q8, #13
13600x70 0x09 0xcc 0xf3
1361# CHECK: vqrshrn.u16	d16, q8, #4
13620x70 0x09 0xd3 0xf3
1363# CHECK: vqrshrn.u32	d16, q8, #13
13640x70 0x09 0xf3 0xf3
1365# CHECK: vqrshrn.u64	d16, q8, #13
1366
1367
13680x30 0x11 0xc8 0xf2
1369# CHECK: vsra.s8	d17, d16, #8
13700x30 0x11 0xd0 0xf2
1371# CHECK: vsra.s16	d17, d16, #16
13720x30 0x11 0xe0 0xf2
1373# CHECK: vsra.s32	d17, d16, #32
13740xb0 0x11 0xc0 0xf2
1375# CHECK: vsra.s64	d17, d16, #64
13760x72 0x01 0xc8 0xf2
1377# CHECK: vsra.s8	q8, q9, #8
13780x72 0x01 0xd0 0xf2
1379# CHECK: vsra.s16	q8, q9, #16
13800x72 0x01 0xe0 0xf2
1381# CHECK: vsra.s32	q8, q9, #32
13820xf2 0x01 0xc0 0xf2
1383# CHECK: vsra.s64	q8, q9, #64
13840x30 0x11 0xc8 0xf3
1385# CHECK: vsra.u8	d17, d16, #8
13860x30 0x11 0xd0 0xf3
1387# CHECK: vsra.u16	d17, d16, #16
13880x30 0x11 0xe0 0xf3
1389# CHECK: vsra.u32	d17, d16, #32
13900xb0 0x11 0xc0 0xf3
1391# CHECK: vsra.u64	d17, d16, #64
13920x72 0x01 0xc8 0xf3
1393# CHECK: vsra.u8	q8, q9, #8
13940x72 0x01 0xd0 0xf3
1395# CHECK: vsra.u16	q8, q9, #16
13960x72 0x01 0xe0 0xf3
1397# CHECK: vsra.u32	q8, q9, #32
13980xf2 0x01 0xc0 0xf3
1399# CHECK: vsra.u64	q8, q9, #64
14000x30 0x13 0xc8 0xf2
1401# CHECK: vrsra.s8	d17, d16, #8
14020x30 0x13 0xd0 0xf2
1403# CHECK: vrsra.s16	d17, d16, #16
14040x30 0x13 0xe0 0xf2
1405# CHECK: vrsra.s32	d17, d16, #32
14060xb0 0x13 0xc0 0xf2
1407# CHECK: vrsra.s64	d17, d16, #64
14080x30 0x13 0xc8 0xf3
1409# CHECK: vrsra.u8	d17, d16, #8
14100x30 0x13 0xd0 0xf3
1411# CHECK: vrsra.u16	d17, d16, #16
14120x30 0x13 0xe0 0xf3
1413# CHECK: vrsra.u32	d17, d16, #32
14140xb0 0x13 0xc0 0xf3
1415# CHECK: vrsra.u64	d17, d16, #64
14160x72 0x03 0xc8 0xf2
1417# CHECK: vrsra.s8	q8, q9, #8
14180x72 0x03 0xd0 0xf2
1419# CHECK: vrsra.s16	q8, q9, #16
14200x72 0x03 0xe0 0xf2
1421# CHECK: vrsra.s32	q8, q9, #32
14220xf2 0x03 0xc0 0xf2
1423# CHECK: vrsra.s64	q8, q9, #64
14240x72 0x03 0xc8 0xf3
1425# CHECK: vrsra.u8	q8, q9, #8
14260x72 0x03 0xd0 0xf3
1427# CHECK: vrsra.u16	q8, q9, #16
14280x72 0x03 0xe0 0xf3
1429# CHECK: vrsra.u32	q8, q9, #32
14300xf2 0x03 0xc0 0xf3
1431# CHECK: vrsra.u64	q8, q9, #64
14320x30 0x15 0xcf 0xf3
1433# CHECK: vsli.8	d17, d16, #7
14340x30 0x15 0xdf 0xf3
1435# CHECK: vsli.16	d17, d16, #15
14360x30 0x15 0xff 0xf3
1437# CHECK: vsli.32	d17, d16, #31
14380xb0 0x15 0xff 0xf3
1439# CHECK: vsli.64	d17, d16, #63
14400x70 0x25 0xcf 0xf3
1441# CHECK: vsli.8	q9, q8, #7
14420x70 0x25 0xdf 0xf3
1443# CHECK: vsli.16	q9, q8, #15
14440x70 0x25 0xff 0xf3
1445# CHECK: vsli.32	q9, q8, #31
14460xf0 0x25 0xff 0xf3
1447# CHECK: vsli.64	q9, q8, #63
14480x30 0x14 0xc8 0xf3
1449# CHECK: vsri.8	d17, d16, #8
14500x30 0x14 0xd0 0xf3
1451# CHECK: vsri.16	d17, d16, #16
14520x30 0x14 0xe0 0xf3
1453# CHECK: vsri.32	d17, d16, #32
14540xb0 0x14 0xc0 0xf3
1455# CHECK: vsri.64	d17, d16, #64
14560x70 0x24 0xc8 0xf3
1457# CHECK: vsri.8	q9, q8, #8
14580x70 0x24 0xd0 0xf3
1459# CHECK: vsri.16	q9, q8, #16
14600x70 0x24 0xe0 0xf3
1461# CHECK: vsri.32	q9, q8, #32
14620xf0 0x24 0xc0 0xf3
1463# CHECK: vsri.64	q9, q8, #64
1464
1465
14660xa0 0x03 0xf1 0xf2
1467# CHECK: vext.8	d16, d17, d16, #3
14680xa0 0x05 0xf1 0xf2
1469# CHECK: vext.8	d16, d17, d16, #5
14700xe0 0x03 0xf2 0xf2
1471# CHECK: vext.8	q8, q9, q8, #3
14720xe0 0x07 0xf2 0xf2
1473# CHECK: vext.8	q8, q9, q8, #7
14740xa0 0x06 0xf1 0xf2
1475# CHECK: vext.16	d16, d17, d16, #3
14760xe0 0x0c 0xf2 0xf2
1477# CHECK: vext.32	q8, q9, q8, #3
14780xa0 0x10 0xf2 0xf3
1479# CHECK: vtrn.8	d17, d16
14800xa0 0x10 0xf6 0xf3
1481# CHECK: vtrn.16	d17, d16
14820xa0 0x10 0xfa 0xf3
1483# CHECK: vtrn.32	d17, d16
14840xe0 0x20 0xf2 0xf3
1485# CHECK: vtrn.8	q9, q8
14860xe0 0x20 0xf6 0xf3
1487# CHECK: vtrn.16	q9, q8
14880xe0 0x20 0xfa 0xf3
1489# CHECK: vtrn.32	q9, q8
14900x20 0x11 0xf2 0xf3
1491# CHECK: vuzp.8	d17, d16
14920x20 0x11 0xf6 0xf3
1493# CHECK: vuzp.16	d17, d16
14940x60 0x21 0xf2 0xf3
1495# CHECK: vuzp.8	q9, q8
14960x60 0x21 0xf6 0xf3
1497# CHECK: vuzp.16	q9, q8
14980x60 0x21 0xfa 0xf3
1499# CHECK: vuzp.32	q9, q8
15000xa0 0x11 0xf2 0xf3
1501# CHECK: vzip.8	d17, d16
15020xa0 0x11 0xf6 0xf3
1503# CHECK: vzip.16	d17, d16
15040xe0 0x21 0xf2 0xf3
1505# CHECK: vzip.8	q9, q8
15060xe0 0x21 0xf6 0xf3
1507# CHECK: vzip.16	q9, q8
15080xe0 0x21 0xfa 0xf3
1509# CHECK: vzip.32	q9, q8
1510
1511
15120xa0 0x08 0x41 0xf3
1513# CHECK: vsub.i8	d16, d17, d16
15140xa0 0x08 0x51 0xf3
1515# CHECK: vsub.i16	d16, d17, d16
15160xa0 0x08 0x61 0xf3
1517# CHECK: vsub.i32	d16, d17, d16
15180xa0 0x08 0x71 0xf3
1519# CHECK: vsub.i64	d16, d17, d16
15200xa1 0x0d 0x60 0xf2
1521# CHECK: vsub.f32	d16, d16, d17
15220xe2 0x08 0x40 0xf3
1523# CHECK: vsub.i8	q8, q8, q9
15240xe2 0x08 0x50 0xf3
1525# CHECK: vsub.i16	q8, q8, q9
15260xe2 0x08 0x60 0xf3
1527# CHECK: vsub.i32	q8, q8, q9
15280xe2 0x08 0x70 0xf3
1529# CHECK: vsub.i64	q8, q8, q9
15300xe2 0x0d 0x60 0xf2
1531# CHECK: vsub.f32	q8, q8, q9
15320xa0 0x02 0xc1 0xf2
1533# CHECK: vsubl.s8	q8, d17, d16
15340xa0 0x02 0xd1 0xf2
1535# CHECK: vsubl.s16	q8, d17, d16
15360xa0 0x02 0xe1 0xf2
1537# CHECK: vsubl.s32	q8, d17, d16
15380xa0 0x02 0xc1 0xf3
1539# CHECK: vsubl.u8	q8, d17, d16
15400xa0 0x02 0xd1 0xf3
1541# CHECK: vsubl.u16	q8, d17, d16
15420xa0 0x02 0xe1 0xf3
1543# CHECK: vsubl.u32	q8, d17, d16
15440xa2 0x03 0xc0 0xf2
1545# CHECK: vsubw.s8	q8, q8, d18
15460xa2 0x03 0xd0 0xf2
1547# CHECK: vsubw.s16	q8, q8, d18
15480xa2 0x03 0xe0 0xf2
1549# CHECK: vsubw.s32	q8, q8, d18
15500xa2 0x03 0xc0 0xf3
1551# CHECK: vsubw.u8	q8, q8, d18
15520xa2 0x03 0xd0 0xf3
1553# CHECK: vsubw.u16	q8, q8, d18
15540xa2 0x03 0xe0 0xf3
1555# CHECK: vsubw.u32	q8, q8, d18
15560xa1 0x02 0x40 0xf2
1557# CHECK: vhsub.s8	d16, d16, d17
15580xa1 0x02 0x50 0xf2
1559# CHECK: vhsub.s16	d16, d16, d17
15600xa1 0x02 0x60 0xf2
1561# CHECK: vhsub.s32	d16, d16, d17
15620xa1 0x02 0x40 0xf3
1563# CHECK: vhsub.u8	d16, d16, d17
15640xa1 0x02 0x50 0xf3
1565# CHECK: vhsub.u16	d16, d16, d17
15660xa1 0x02 0x60 0xf3
1567# CHECK: vhsub.u32	d16, d16, d17
15680xe2 0x02 0x40 0xf2
1569# CHECK: vhsub.s8	q8, q8, q9
15700xe2 0x02 0x50 0xf2
1571# CHECK: vhsub.s16	q8, q8, q9
15720xe2 0x02 0x60 0xf2
1573# CHECK: vhsub.s32	q8, q8, q9
15740xb1 0x02 0x40 0xf2
1575# CHECK: vqsub.s8	d16, d16, d17
15760xb1 0x02 0x50 0xf2
1577# CHECK: vqsub.s16	d16, d16, d17
15780xb1 0x02 0x60 0xf2
1579# CHECK: vqsub.s32	d16, d16, d17
15800xb1 0x02 0x70 0xf2
1581# CHECK: vqsub.s64	d16, d16, d17
15820xb1 0x02 0x40 0xf3
1583# CHECK: vqsub.u8	d16, d16, d17
15840xb1 0x02 0x50 0xf3
1585# CHECK: vqsub.u16	d16, d16, d17
15860xb1 0x02 0x60 0xf3
1587# CHECK: vqsub.u32	d16, d16, d17
15880xb1 0x02 0x70 0xf3
1589# CHECK: vqsub.u64	d16, d16, d17
15900xf2 0x02 0x40 0xf2
1591# CHECK: vqsub.s8	q8, q8, q9
15920xf2 0x02 0x50 0xf2
1593# CHECK: vqsub.s16	q8, q8, q9
15940xf2 0x02 0x60 0xf2
1595# CHECK: vqsub.s32	q8, q8, q9
15960xf2 0x02 0x70 0xf2
1597# CHECK: vqsub.s64	q8, q8, q9
15980xf2 0x02 0x40 0xf3
1599# CHECK: vqsub.u8	q8, q8, q9
16000xf2 0x02 0x50 0xf3
1601# CHECK: vqsub.u16	q8, q8, q9
16020xf2 0x02 0x60 0xf3
1603# CHECK: vqsub.u32	q8, q8, q9
16040xf2 0x02 0x70 0xf3
1605# CHECK: vqsub.u64	q8, q8, q9
16060xa2 0x06 0xc0 0xf2
1607# CHECK: vsubhn.i16	d16, q8, q9
16080xa2 0x06 0xd0 0xf2
1609# CHECK: vsubhn.i32	d16, q8, q9
16100xa2 0x06 0xe0 0xf2
1611# CHECK: vsubhn.i64	d16, q8, q9
16120xa2 0x06 0xc0 0xf3
1613# CHECK: vrsubhn.i16	d16, q8, q9
16140xa2 0x06 0xd0 0xf3
1615# CHECK: vrsubhn.i32	d16, q8, q9
16160xa2 0x06 0xe0 0xf3
1617# CHECK: vrsubhn.i64	d16, q8, q9
1618
1619
1620
16210xa0 0x08 0xf1 0xf3
1622# CHECK: vtbl.8	d16, {d17}, d16
16230xa2 0x09 0xf0 0xf3
1624# CHECK: vtbl.8	d16, {d16, d17}, d18
16250xa4 0x0a 0xf0 0xf3
1626# CHECK: vtbl.8	d16, {d16, d17, d18}, d20
16270xa4 0x0b 0xf0 0xf3
1628# CHECK: vtbl.8	d16, {d16, d17, d18, d19}, d20
16290xe1 0x28 0xf0 0xf3
1630# CHECK: vtbx.8	d18, {d16}, d17
16310xe2 0x39 0xf0 0xf3
1632# CHECK: vtbx.8	d19, {d16, d17}, d18
16330xe5 0x4a 0xf0 0xf3
1634# CHECK: vtbx.8	d20, {d16, d17, d18}, d21
16350xe5 0x4b 0xf0 0xf3
1636# CHECK: vtbx.8	d20, {d16, d17, d18, d19}, d21
1637
1638
1639
16400x1f 0x07 0x60 0xf4
1641# CHECK: vld1.8	{d16}, [r0:64]
16420x4f 0x07 0x60 0xf4
1643# CHECK: vld1.16	{d16}, [r0]
16440x8f 0x07 0x60 0xf4
1645# CHECK: vld1.32	{d16}, [r0]
16460xcf 0x07 0x60 0xf4
1647# CHECK: vld1.64	{d16}, [r0]
16480x1f 0x0a 0x60 0xf4
1649# CHECK: vld1.8	{d16, d17}, [r0:64]
16500x6f 0x0a 0x60 0xf4
1651# CHECK: vld1.16	{d16, d17}, [r0:128]
16520x8f 0x0a 0x60 0xf4
1653# CHECK: vld1.32	{d16, d17}, [r0]
16540xcf 0x0a 0x60 0xf4
1655# CHECK: vld1.64	{d16, d17}, [r0]
1656
16570x1f 0x08 0x60 0xf4
1658# CHECK: vld2.8	{d16, d17}, [r0:64]
16590x6f 0x08 0x60 0xf4
1660# CHECK: vld2.16	{d16, d17}, [r0:128]
16610x8f 0x08 0x60 0xf4
1662# CHECK: vld2.32	{d16, d17}, [r0]
16630x1f 0x03 0x60 0xf4
1664# CHECK: vld2.8	{d16, d17, d18, d19}, [r0:64]
16650x6f 0x03 0x60 0xf4
1666# CHECK: vld2.16	{d16, d17, d18, d19}, [r0:128]
16670xbf 0x03 0x60 0xf4
1668# CHECK: vld2.32	{d16, d17, d18, d19}, [r0:256]
1669
16700x1f 0x04 0x60 0xf4
1671# CHECK: vld3.8	{d16, d17, d18}, [r0:64]
16720x4f 0x04 0x60 0xf4
1673# CHECK: vld3.16	{d16, d17, d18}, [r0]
16740x8f 0x04 0x60 0xf4
1675# CHECK: vld3.32	{d16, d17, d18}, [r0]
16760x1d 0x05 0x60 0xf4
1677# CHECK: vld3.8	{d16, d18, d20}, [r0:64]!
16780x1d 0x15 0x60 0xf4
1679# CHECK: vld3.8	{d17, d19, d21}, [r0:64]!
16800x4d 0x05 0x60 0xf4
1681# CHECK: vld3.16	{d16, d18, d20}, [r0]!
16820x4d 0x15 0x60 0xf4
1683# CHECK: vld3.16	{d17, d19, d21}, [r0]!
16840x8d 0x05 0x60 0xf4
1685# CHECK: vld3.32	{d16, d18, d20}, [r0]!
16860x8d 0x15 0x60 0xf4
1687# CHECK: vld3.32	{d17, d19, d21}, [r0]!
1688
16890x1f 0x00 0x60 0xf4
1690# CHECK: vld4.8	{d16, d17, d18, d19}, [r0:64]
16910x6f 0x00 0x60 0xf4
1692# CHECK: vld4.16	{d16, d17, d18, d19}, [r0:128]
16930xbf 0x00 0x60 0xf4
1694# CHECK: vld4.32	{d16, d17, d18, d19}, [r0:256]
16950x3d 0x01 0x60 0xf4
1696# CHECK: vld4.8	{d16, d18, d20, d22}, [r0:256]!
16970x3d 0x11 0x60 0xf4
1698# CHECK: vld4.8	{d17, d19, d21, d23}, [r0:256]!
16990x4d 0x01 0x60 0xf4
1700# CHECK: vld4.16	{d16, d18, d20, d22}, [r0]!
17010x4d 0x11 0x60 0xf4
1702# CHECK: vld4.16	{d17, d19, d21, d23}, [r0]!
17030x8d 0x01 0x60 0xf4
1704# CHECK: vld4.32	{d16, d18, d20, d22}, [r0]!
17050x8d 0x11 0x60 0xf4
1706# CHECK: vld4.32	{d17, d19, d21, d23}, [r0]!
1707
17080x6f 0x00 0xe0 0xf4
1709# CHECK: vld1.8	{d16[3]}, [r0]
17100x9f 0x04 0xe0 0xf4
1711# CHECK: vld1.16	{d16[2]}, [r0:16]
17120xbf 0x08 0xe0 0xf4
1713# CHECK: vld1.32	{d16[1]}, [r0:32]
1714
17150x3f 0x01 0xe0 0xf4
1716# CHECK: vld2.8	{d16[1], d17[1]}, [r0:16]
17170x5f 0x05 0xe0 0xf4
1718# CHECK: vld2.16	{d16[1], d17[1]}, [r0:32]
17190x8f 0x09 0xe0 0xf4
1720# CHECK: vld2.32	{d16[1], d17[1]}, [r0]
17210x6f 0x15 0xe0 0xf4
1722# CHECK: vld2.16	{d17[1], d19[1]}, [r0]
17230x5f 0x19 0xe0 0xf4
1724# CHECK: vld2.32	{d17[0], d19[0]}, [r0:64]
1725
17260x2f 0x02 0xe0 0xf4
1727# CHECK: vld3.8	{d16[1], d17[1], d18[1]}, [r0]
17280x4f 0x06 0xe0 0xf4
1729# CHECK: vld3.16	{d16[1], d17[1], d18[1]}, [r0]
17300x8f 0x0a 0xe0 0xf4
1731# CHECK: vld3.32	{d16[1], d17[1], d18[1]}, [r0]
17320x6f 0x06 0xe0 0xf4
1733# CHECK: vld3.16	{d16[1], d18[1], d20[1]}, [r0]
17340xcf 0x1a 0xe0 0xf4
1735# CHECK: vld3.32	{d17[1], d19[1], d21[1]}, [r0]
1736
1737# CHECK: vld3.8	{d0[], d1[], d2[]}, [r4]
17380x0f 0x0e 0xa4 0xf4
1739# CHECK: vld3.8	{d0[], d1[], d2[]}, [r4]!
17400x0d 0x0e 0xa4 0xf4
1741# CHECK: vld3.8	{d0[], d2[], d4[]}, [r4], r5
17420x25 0x0e 0xa4 0xf4
1743# CHECK: vld3.16	{d0[], d2[], d4[]}, [r4]
17440x6f 0x0e 0xa4 0xf4
1745# CHECK: vld3.16	{d0[], d1[], d2[]}, [r4]!
17460x4d 0x0e 0xa4 0xf4
1747# CHECK: vld3.16	{d0[], d2[], d4[]}, [r4], r5
17480x65 0x0e 0xa4 0xf4
1749# CHECK: vld3.32	{d0[], d1[], d2[]}, [r4]
17500x8f 0x0e 0xa4 0xf4
1751# CHECK: vld3.32	{d0[], d1[], d2[]}, [r4]!
17520x8d 0x0e 0xa4 0xf4
1753# CHECK: vld3.32	{d0[], d2[], d4[]}, [r4], r5
17540xa5 0x0e 0xa4 0xf4
1755
17560x3f 0x03 0xe0 0xf4
1757# CHECK: vld4.8	{d16[1], d17[1], d18[1], d19[1]}, [r0:32]
17580x4f 0x07 0xe0 0xf4
1759# CHECK: vld4.16	{d16[1], d17[1], d18[1], d19[1]}, [r0]
17600xaf 0x0b 0xe0 0xf4
1761# CHECK: vld4.32	{d16[1], d17[1], d18[1], d19[1]}, [r0:128]
17620x7f 0x07 0xe0 0xf4
1763# CHECK: vld4.16	{d16[1], d18[1], d20[1], d22[1]}, [r0:64]
17640x4f 0x1b 0xe0 0xf4
1765# CHECK: vld4.32	{d17[0], d19[0], d21[0], d23[0]}, [r0]
1766
17670x0f 0x0f 0xa4 0xf4
1768# CHECK: vld4.8	{d0[], d1[], d2[], d3[]}, [r4]
17690x3f 0x0f 0xa4 0xf4
1770# CHECK: vld4.8	{d0[], d2[], d4[], d6[]}, [r4:32]
17710x1d 0x0f 0xa4 0xf4
1772# CHECK: vld4.8	{d0[], d1[], d2[], d3[]}, [r4:32]!
17730x35 0x0f 0xa4 0xf4
1774# CHECK: vld4.8	{d0[], d2[], d4[], d6[]}, [r4:32], r5
17750x4f 0x0f 0xa4 0xf4
1776# CHECK: vld4.16	{d0[], d1[], d2[], d3[]}, [r4]
17770x7f 0x0f 0xa4 0xf4
1778# CHECK: vld4.16	{d0[], d2[], d4[], d6[]}, [r4:64]
17790x5d 0x0f 0xa4 0xf4
1780# CHECK: vld4.16	{d0[], d1[], d2[], d3[]}, [r4:64]!
17810x75 0x0f 0xa4 0xf4
1782# CHECK: vld4.16	{d0[], d2[], d4[], d6[]}, [r4:64], r5
17830x8f 0x0f 0xa4 0xf4
1784# CHECK: vld4.32	{d0[], d1[], d2[], d3[]}, [r4]
17850xbf 0x0f 0xa4 0xf4
1786# CHECK: vld4.32	{d0[], d2[], d4[], d6[]}, [r4:64]
17870xdd 0x0f 0xa4 0xf4
1788# CHECK: vld4.32	{d0[], d1[], d2[], d3[]}, [r4:128]!
17890xf5 0x0f 0xa4 0xf4
1790# CHECK: vld4.32	{d0[], d2[], d4[], d6[]}, [r4:128], r5
1791
1792
17930x1f 0x07 0x40 0xf4
1794# CHECK: vst1.8	{d16}, [r0:64]
17950x4f 0x07 0x40 0xf4
1796# CHECK: vst1.16	{d16}, [r0]
17970x8f 0x07 0x40 0xf4
1798# CHECK: vst1.32	{d16}, [r0]
17990xcf 0x07 0x40 0xf4
1800# CHECK: vst1.64	{d16}, [r0]
18010x1f 0x0a 0x40 0xf4
1802# CHECK: vst1.8	{d16, d17}, [r0:64]
18030x6f 0x0a 0x40 0xf4
1804# CHECK: vst1.16	{d16, d17}, [r0:128]
18050x8f 0x0a 0x40 0xf4
1806# CHECK: vst1.32	{d16, d17}, [r0]
18070xcf 0x0a 0x40 0xf4
1808# CHECK: vst1.64	{d16, d17}, [r0]
1809
18100x1f 0x08 0x40 0xf4
1811# CHECK: vst2.8	{d16, d17}, [r0:64]
18120x6f 0x08 0x40 0xf4
1813# CHECK: vst2.16	{d16, d17}, [r0:128]
18140x8f 0x08 0x40 0xf4
1815# CHECK: vst2.32	{d16, d17}, [r0]
18160x1f 0x03 0x40 0xf4
1817# CHECK: vst2.8	{d16, d17, d18, d19}, [r0:64]
18180x6f 0x03 0x40 0xf4
1819# CHECK: vst2.16	{d16, d17, d18, d19}, [r0:128]
18200xbf 0x03 0x40 0xf4
1821# CHECK: vst2.32	{d16, d17, d18, d19}, [r0:256]
1822
18230x1f 0x04 0x40 0xf4
1824# CHECK: vst3.8	{d16, d17, d18}, [r0:64]
18250x4f 0x04 0x40 0xf4
1826# CHECK: vst3.16	{d16, d17, d18}, [r0]
18270x8f 0x04 0x40 0xf4
1828# CHECK: vst3.32	{d16, d17, d18}, [r0]
18290x1d 0x05 0x40 0xf4
1830# CHECK: vst3.8	{d16, d18, d20}, [r0:64]!
18310x1d 0x15 0x40 0xf4
1832# CHECK: vst3.8	{d17, d19, d21}, [r0:64]!
18330x4d 0x05 0x40 0xf4
1834# CHECK: vst3.16	{d16, d18, d20}, [r0]!
18350x4d 0x15 0x40 0xf4
1836# CHECK: vst3.16	{d17, d19, d21}, [r0]!
18370x8d 0x05 0x40 0xf4
1838# CHECK: vst3.32	{d16, d18, d20}, [r0]!
18390x8d 0x15 0x40 0xf4
1840# CHECK: vst3.32	{d17, d19, d21}, [r0]!
1841
18420x1f 0x00 0x40 0xf4
1843# CHECK: vst4.8	{d16, d17, d18, d19}, [r0:64]
18440x6f 0x00 0x40 0xf4
1845# CHECK: vst4.16	{d16, d17, d18, d19}, [r0:128]
18460x3d 0x01 0x40 0xf4
1847# CHECK: vst4.8	{d16, d18, d20, d22}, [r0:256]!
18480x3d 0x11 0x40 0xf4
1849# CHECK: vst4.8	{d17, d19, d21, d23}, [r0:256]!
18500x4d 0x01 0x40 0xf4
1851# CHECK: vst4.16	{d16, d18, d20, d22}, [r0]!
18520x4d 0x11 0x40 0xf4
1853# CHECK: vst4.16	{d17, d19, d21, d23}, [r0]!
18540x8d 0x01 0x40 0xf4
1855# CHECK: vst4.32	{d16, d18, d20, d22}, [r0]!
18560x8d 0x11 0x40 0xf4
1857# CHECK: vst4.32	{d17, d19, d21, d23}, [r0]!
1858
18590x3f 0x01 0xc0 0xf4
1860# CHECK: vst2.8	{d16[1], d17[1]}, [r0:16]
18610x5f 0x05 0xc0 0xf4
1862# CHECK: vst2.16	{d16[1], d17[1]}, [r0:32]
18630x8f 0x09 0xc0 0xf4
1864# CHECK: vst2.32	{d16[1], d17[1]}, [r0]
18650x6f 0x15 0xc0 0xf4
1866# CHECK: vst2.16	{d17[1], d19[1]}, [r0]
18670x5f 0x19 0xc0 0xf4
1868# CHECK: vst2.32	{d17[0], d19[0]}, [r0:64]
1869
18700x2f 0x02 0xc0 0xf4
1871# CHECK: vst3.8	{d16[1], d17[1], d18[1]}, [r0]
18720x4f 0x06 0xc0 0xf4
1873# CHECK: vst3.16	{d16[1], d17[1], d18[1]}, [r0]
18740x8f 0x0a 0xc0 0xf4
1875# CHECK: vst3.32	{d16[1], d17[1], d18[1]}, [r0]
18760xaf 0x16 0xc0 0xf4
1877# CHECK: vst3.16	{d17[2], d19[2], d21[2]}, [r0]
18780x4f 0x0a 0xc0 0xf4
1879# CHECK: vst3.32	{d16[0], d18[0], d20[0]}, [r0]
1880
18810x3f 0x03 0xc0 0xf4
1882# CHECK: vst4.8	{d16[1], d17[1], d18[1], d19[1]}, [r0:32]
18830x4f 0x07 0xc0 0xf4
1884# CHECK: vst4.16	{d16[1], d17[1], d18[1], d19[1]}, [r0]
18850xaf 0x0b 0xc0 0xf4
1886# CHECK: vst4.32	{d16[1], d17[1], d18[1], d19[1]}, [r0:128]
18870xff 0x17 0xc0 0xf4
1888# CHECK: vst4.16	{d17[3], d19[3], d21[3], d23[3]}, [r0:64]
18890x4f 0x1b 0xc0 0xf4
1890# CHECK: vst4.32	{d17[0], d19[0], d21[0], d23[0]}, [r0]
1891
18920x0 0xc 0xa0 0xf4
1893# CHECK: vld1.8	{d0[]}, [r0], r0
18940x0d 0x03 0x80 0xf4
1895# CHECK: vst4.8	{d0[0], d1[0], d2[0], d3[0]}, [r0]!
1896
18970x3d 0x2a 0x5e 0x6c
1898# CHECK: vmovvs	r2, lr, s27, s28
1899
19000x31 0x1a 0x42 0xec
19010x11 0x1a 0x42 0xec
19020x31 0x1a 0x52 0xec
19030x11 0x1a 0x52 0xec
1904# CHECK: vmov s3, s4, r1, r2
1905# CHECK: vmov s2, s3, r1, r2
1906# CHECK: vmov r1, r2, s3, s4
1907# CHECK: vmov r1, r2, s2, s3
1908
19090x1f 0x1b 0x42 0xec
19100x30 0x1b 0x42 0xec
19110x1f 0x1b 0x52 0xec
19120x30 0x1b 0x52 0xec
1913# CHECK: vmov d15, r1, r2
1914# CHECK: vmov d16, r1, r2
1915# CHECK: vmov r1, r2, d15
1916# CHECK: vmov r1, r2, d16
1917
1918
19190xe9 0x1a 0xb2 0x4e
1920# CHECK: vcvttmi.f32.f16	s2, s19
1921
19220x1d 0x76 0x66 0xf4
1923# CHECK: vld1.8	{d23, d24, d25}, [r6:64]!
19240x9d 0x62 0x6f 0xf4
1925# CHECK: vld1.32	{d22, d23, d24, d25}, [pc:64]!
19260x9d 0xaa 0x41 0xf4
1927# CHECK: vst1.32	{d26, d27}, [r1:64]!
1928
19290x10 0x0f 0x83 0xf2
19300x50 0x0f 0x83 0xf2
1931# CHECK: vmov.f32	d0, #1.600000e+01
1932# CHECK: vmov.f32	q0, #1.600000e+01
1933
1934# rdar://11034702
19350x0d 0x87 0x04 0xf4
1936# CHECK: vst1.8	{d8}, [r4]!
19370x4d 0x87 0x04 0xf4
1938# CHECK: vst1.16	{d8}, [r4]!
19390x8d 0x87 0x04 0xf4
1940# CHECK: vst1.32	{d8}, [r4]!
19410xcd 0x87 0x04 0xf4
1942# CHECK: vst1.64	{d8}, [r4]!
19430x06 0x87 0x04 0xf4
1944# CHECK: vst1.8	{d8}, [r4], r6
19450x46 0x87 0x04 0xf4
1946# CHECK: vst1.16	{d8}, [r4], r6
19470x86 0x87 0x04 0xf4
1948# CHECK: vst1.32	{d8}, [r4], r6
19490xc6 0x87 0x04 0xf4
1950# CHECK: vst1.64	{d8}, [r4], r6
1951
19520x0d 0x8a 0x04 0xf4
1953# CHECK: vst1.8	{d8, d9}, [r4]!
19540x4d 0x8a 0x04 0xf4
1955# CHECK: vst1.16	{d8, d9}, [r4]!
19560x8d 0x8a 0x04 0xf4
1957# CHECK: vst1.32	{d8, d9}, [r4]!
19580xcd 0x8a 0x04 0xf4
1959# CHECK: vst1.64	{d8, d9}, [r4]!
19600x06 0x8a 0x04 0xf4
1961# CHECK: vst1.8	{d8, d9}, [r4], r6
19620x46 0x8a 0x04 0xf4
1963# CHECK: vst1.16	{d8, d9}, [r4], r6
19640x86 0x8a 0x04 0xf4
1965# CHECK: vst1.32	{d8, d9}, [r4], r6
19660xc6 0x8a 0x04 0xf4
1967# CHECK: vst1.64	{d8, d9}, [r4], r6
1968
19690x0d 0x86 0x04 0xf4
1970# CHECK: vst1.8	{d8, d9, d10}, [r4]!
19710x4d 0x86 0x04 0xf4
1972# CHECK: vst1.16	{d8, d9, d10}, [r4]!
19730x8d 0x86 0x04 0xf4
1974# CHECK: vst1.32	{d8, d9, d10}, [r4]!
19750xcd 0x86 0x04 0xf4
1976# CHECK: vst1.64	{d8, d9, d10}, [r4]!
19770x06 0x86 0x04 0xf4
1978# CHECK: vst1.8	{d8, d9, d10}, [r4], r6
19790x46 0x86 0x04 0xf4
1980# CHECK: vst1.16	{d8, d9, d10}, [r4], r6
19810x86 0x86 0x04 0xf4
1982# CHECK: vst1.32	{d8, d9, d10}, [r4], r6
19830xc6 0x86 0x04 0xf4
1984# CHECK: vst1.64	{d8, d9, d10}, [r4], r6
1985
19860x0d 0x82 0x04 0xf4
1987# CHECK: vst1.8	{d8, d9, d10, d11}, [r4]!
19880x4d 0x82 0x04 0xf4
1989# CHECK: vst1.16	{d8, d9, d10, d11}, [r4]!
19900x8d 0x82 0x04 0xf4
1991# CHECK: vst1.32	{d8, d9, d10, d11}, [r4]!
19920xcd 0x82 0x04 0xf4
1993# CHECK: vst1.64	{d8, d9, d10, d11}, [r4]!
19940x06 0x82 0x04 0xf4
1995# CHECK: vst1.8	{d8, d9, d10, d11}, [r4], r6
19960x46 0x82 0x04 0xf4
1997# CHECK: vst1.16	{d8, d9, d10, d11}, [r4], r6
19980x86 0x82 0x04 0xf4
1999# CHECK: vst1.32	{d8, d9, d10, d11}, [r4], r6
20000xc6 0x82 0x04 0xf4
2001# CHECK: vst1.64	{d8, d9, d10, d11}, [r4], r6
2002
20030x0d 0x88 0x04 0xf4
2004# CHECK: vst2.8	{d8, d9}, [r4]!
20050x4d 0x88 0x04 0xf4
2006# CHECK: vst2.16	{d8, d9}, [r4]!
20070x8d 0x88 0x04 0xf4
2008# CHECK: vst2.32	{d8, d9}, [r4]!
20090x06 0x88 0x04 0xf4
2010# CHECK: vst2.8	{d8, d9}, [r4], r6
20110x46 0x88 0x04 0xf4
2012# CHECK: vst2.16	{d8, d9}, [r4], r6
20130x86 0x88 0x04 0xf4
2014# CHECK: vst2.32	{d8, d9}, [r4], r6
2015
20160x0d 0x89 0x04 0xf4
2017# CHECK: vst2.8	{d8, d10}, [r4]!
20180x4d 0x89 0x04 0xf4
2019# CHECK: vst2.16	{d8, d10}, [r4]!
20200x8d 0x89 0x04 0xf4
2021# CHECK: vst2.32	{d8, d10}, [r4]!
20220x06 0x89 0x04 0xf4
2023# CHECK: vst2.8	{d8, d10}, [r4], r6
20240x46 0x89 0x04 0xf4
2025# CHECK: vst2.16	{d8, d10}, [r4], r6
20260x86 0x89 0x04 0xf4
2027# CHECK: vst2.32	{d8, d10}, [r4], r6
2028
20290x0d 0x84 0x04 0xf4
2030# CHECK: vst3.8	{d8, d9, d10}, [r4]!
20310x4d 0x84 0x04 0xf4
2032# CHECK: vst3.16	{d8, d9, d10}, [r4]!
20330x8d 0x84 0x04 0xf4
2034# CHECK: vst3.32	{d8, d9, d10}, [r4]!
20350x06 0x85 0x04 0xf4
2036# CHECK: vst3.8	{d8, d10, d12}, [r4], r6
20370x46 0x85 0x04 0xf4
2038# CHECK: vst3.16	{d8, d10, d12}, [r4], r6
20390x86 0x85 0x04 0xf4
2040# CHECK: vst3.32	{d8, d10, d12}, [r4], r6
2041
20420x0d 0x80 0x04 0xf4
2043# CHECK: vst4.8	{d8, d9, d10, d11}, [r4]!
20440x4d 0x80 0x04 0xf4
2045# CHECK: vst4.16	{d8, d9, d10, d11}, [r4]!
20460x8d 0x80 0x04 0xf4
2047# CHECK: vst4.32	{d8, d9, d10, d11}, [r4]!
20480x06 0x81 0x04 0xf4
2049# CHECK: vst4.8	{d8, d10, d12, d14}, [r4], r6
20500x46 0x81 0x04 0xf4
2051# CHECK: vst4.16	{d8, d10, d12, d14}, [r4], r6
20520x86 0x81 0x04 0xf4
2053# CHECK: vst4.32	{d8, d10, d12, d14}, [r4], r6
2054
20550x4f 0x8a 0x04 0xf4
2056# CHECK: vst1.16	{d8, d9}, [r4]
20570x8f 0x8a 0x04 0xf4
2058# CHECK: vst1.32	{d8, d9}, [r4]
20590xcf 0x8a 0x04 0xf4
2060# CHECK: vst1.64	{d8, d9}, [r4]
20610x0f 0x8a 0x04 0xf4
2062# CHECK: vst1.8	{d8, d9}, [r4]
2063
20640x4f 0x88 0x04 0xf4
2065# CHECK: vst2.16	{d8, d9}, [r4]
20660x8f 0x88 0x04 0xf4
2067# CHECK: vst2.32	{d8, d9}, [r4]
20680x0f 0x88 0x04 0xf4
2069# CHECK: vst2.8	{d8, d9}, [r4]
2070
20710x4d 0x88 0x04 0xf4
2072# CHECK: vst2.16	{d8, d9}, [r4]!
20730x46 0x88 0x04 0xf4
2074# CHECK: vst2.16	{d8, d9}, [r4], r6
20750x8d 0x88 0x04 0xf4
2076# CHECK: vst2.32	{d8, d9}, [r4]!
20770x86 0x88 0x04 0xf4
2078# CHECK: vst2.32	{d8, d9}, [r4], r6
20790x0d 0x88 0x04 0xf4
2080# CHECK: vst2.8	{d8, d9}, [r4]!
20810x06 0x88 0x04 0xf4
2082# CHECK: vst2.8	{d8, d9}, [r4], r6
2083
20840x4f 0x89 0x04 0xf4
2085# CHECK: vst2.16	{d8, d10}, [r4]
20860x8f 0x89 0x04 0xf4
2087# CHECK: vst2.32	{d8, d10}, [r4]
20880x0f 0x89 0x04 0xf4
2089# CHECK: vst2.8	{d8, d10}, [r4]
2090
20910x0f 0x84 0x04 0xf4
2092# CHECK: vst3.8	{d8, d9, d10}, [r4]
20930x4f 0x84 0x04 0xf4
2094# CHECK: vst3.16	{d8, d9, d10}, [r4]
20950x8f 0x84 0x04 0xf4
2096# CHECK: vst3.32	{d8, d9, d10}, [r4]
2097
20980x0f 0x80 0x04 0xf4
2099# CHECK: vst4.8	{d8, d9, d10, d11}, [r4]
21000x4f 0x80 0x04 0xf4
2101# CHECK: vst4.16	{d8, d9, d10, d11}, [r4]
21020x8f 0x80 0x04 0xf4
2103# CHECK: vst4.32	{d8, d9, d10, d11}, [r4]
2104
21050x0f 0x85 0x04 0xf4
2106# CHECK: vst3.8	{d8, d10, d12}, [r4]
21070x4f 0x85 0x04 0xf4
2108# CHECK: vst3.16	{d8, d10, d12}, [r4]
21090x8f 0x85 0x04 0xf4
2110# CHECK: vst3.32	{d8, d10, d12}, [r4]
2111
21120x0f 0x81 0x04 0xf4
2113# CHECK: vst4.8	{d8, d10, d12, d14}, [r4]
21140x4f 0x81 0x04 0xf4
2115# CHECK: vst4.16	{d8, d10, d12, d14}, [r4]
21160x8f 0x81 0x04 0xf4
2117# CHECK: vst4.32	{d8, d10, d12, d14}, [r4]
2118
2119# rdar://11204059
21200x0d 0x87 0x24 0xf4
2121# CHECK: vld1.8	{d8}, [r4]!
21220x4d 0x87 0x24 0xf4
2123# CHECK: vld1.16	{d8}, [r4]!
21240x8d 0x87 0x24 0xf4
2125# CHECK: vld1.32	{d8}, [r4]!
21260xcd 0x87 0x24 0xf4
2127# CHECK: vld1.64	{d8}, [r4]!
21280x06 0x87 0x24 0xf4
2129# CHECK: vld1.8	{d8}, [r4], r6
21300x46 0x87 0x24 0xf4
2131# CHECK: vld1.16	{d8}, [r4], r6
21320x86 0x87 0x24 0xf4
2133# CHECK: vld1.32	{d8}, [r4], r6
21340xc6 0x87 0x24 0xf4
2135# CHECK: vld1.64	{d8}, [r4], r6
21360x0d 0x8a 0x24 0xf4
2137# CHECK: vld1.8	{d8, d9}, [r4]!
21380x4d 0x8a 0x24 0xf4
2139# CHECK: vld1.16	{d8, d9}, [r4]!
21400x8d 0x8a 0x24 0xf4
2141# CHECK: vld1.32	{d8, d9}, [r4]!
21420xcd 0x8a 0x24 0xf4
2143# CHECK: vld1.64	{d8, d9}, [r4]!
21440x06 0x8a 0x24 0xf4
2145# CHECK: vld1.8	{d8, d9}, [r4], r6
21460x46 0x8a 0x24 0xf4
2147# CHECK: vld1.16	{d8, d9}, [r4], r6
21480x86 0x8a 0x24 0xf4
2149# CHECK: vld1.32	{d8, d9}, [r4], r6
21500xc6 0x8a 0x24 0xf4
2151# CHECK: vld1.64	{d8, d9}, [r4], r6
21520x0d 0x86 0x24 0xf4
2153# CHECK: vld1.8	{d8, d9, d10}, [r4]!
21540x4d 0x86 0x24 0xf4
2155# CHECK: vld1.16	{d8, d9, d10}, [r4]!
21560x8d 0x86 0x24 0xf4
2157# CHECK: vld1.32	{d8, d9, d10}, [r4]!
21580xcd 0x86 0x24 0xf4
2159# CHECK: vld1.64	{d8, d9, d10}, [r4]!
21600x06 0x86 0x24 0xf4
2161# CHECK: vld1.8	{d8, d9, d10}, [r4], r6
21620x46 0x86 0x24 0xf4
2163# CHECK: vld1.16	{d8, d9, d10}, [r4], r6
21640x86 0x86 0x24 0xf4
2165# CHECK: vld1.32	{d8, d9, d10}, [r4], r6
21660xc6 0x86 0x24 0xf4
2167# CHECK: vld1.64	{d8, d9, d10}, [r4], r6
21680x0d 0x82 0x24 0xf4
2169# CHECK: vld1.8	{d8, d9, d10, d11}, [r4]!
21700x4d 0x82 0x24 0xf4
2171# CHECK: vld1.16	{d8, d9, d10, d11}, [r4]!
21720x8d 0x82 0x24 0xf4
2173# CHECK: vld1.32	{d8, d9, d10, d11}, [r4]!
21740xcd 0x82 0x24 0xf4
2175# CHECK: vld1.64	{d8, d9, d10, d11}, [r4]!
21760x06 0x82 0x24 0xf4
2177# CHECK: vld1.8	{d8, d9, d10, d11}, [r4], r6
21780x46 0x82 0x24 0xf4
2179# CHECK: vld1.16	{d8, d9, d10, d11}, [r4], r6
21800x86 0x82 0x24 0xf4
2181# CHECK: vld1.32	{d8, d9, d10, d11}, [r4], r6
21820xc6 0x82 0x24 0xf4
2183# CHECK: vld1.64	{d8, d9, d10, d11}, [r4], r6
21840x0d 0x88 0x24 0xf4
2185# CHECK: vld2.8	{d8, d9}, [r4]!
21860x4d 0x88 0x24 0xf4
2187# CHECK: vld2.16	{d8, d9}, [r4]!
21880x8d 0x88 0x24 0xf4
2189# CHECK: vld2.32	{d8, d9}, [r4]!
21900x06 0x88 0x24 0xf4
2191# CHECK: vld2.8	{d8, d9}, [r4], r6
21920x46 0x88 0x24 0xf4
2193# CHECK: vld2.16	{d8, d9}, [r4], r6
21940x86 0x88 0x24 0xf4
2195# CHECK: vld2.32	{d8, d9}, [r4], r6
21960x0d 0x89 0x24 0xf4
2197# CHECK: vld2.8	{d8, d10}, [r4]!
21980x4d 0x89 0x24 0xf4
2199# CHECK: vld2.16	{d8, d10}, [r4]!
22000x8d 0x89 0x24 0xf4
2201# CHECK: vld2.32	{d8, d10}, [r4]!
22020x06 0x89 0x24 0xf4
2203# CHECK: vld2.8	{d8, d10}, [r4], r6
22040x46 0x89 0x24 0xf4
2205# CHECK: vld2.16	{d8, d10}, [r4], r6
22060x86 0x89 0x24 0xf4
2207# CHECK: vld2.32	{d8, d10}, [r4], r6
22080x0d 0x84 0x24 0xf4
2209# CHECK: vld3.8	{d8, d9, d10}, [r4]!
22100x4d 0x84 0x24 0xf4
2211# CHECK: vld3.16	{d8, d9, d10}, [r4]!
22120x8d 0x84 0x24 0xf4
2213# CHECK: vld3.32	{d8, d9, d10}, [r4]!
22140x06 0x85 0x24 0xf4
2215# CHECK: vld3.8	{d8, d10, d12}, [r4], r6
22160x46 0x85 0x24 0xf4
2217# CHECK: vld3.16	{d8, d10, d12}, [r4], r6
22180x86 0x85 0x24 0xf4
2219# CHECK: vld3.32	{d8, d10, d12}, [r4], r6
22200x0d 0x80 0x24 0xf4
2221# CHECK: vld4.8	{d8, d9, d10, d11}, [r4]!
22220x4d 0x80 0x24 0xf4
2223# CHECK: vld4.16	{d8, d9, d10, d11}, [r4]!
22240x8d 0x80 0x24 0xf4
2225# CHECK: vld4.32	{d8, d9, d10, d11}, [r4]!
22260x06 0x81 0x24 0xf4
2227# CHECK: vld4.8	{d8, d10, d12, d14}, [r4], r6
22280x46 0x81 0x24 0xf4
2229# CHECK: vld4.16	{d8, d10, d12, d14}, [r4], r6
22300x86 0x81 0x24 0xf4
2231# CHECK: vld4.32	{d8, d10, d12, d14}, [r4], r6
22320x4f 0x8a 0x24 0xf4
2233# CHECK: vld1.16	{d8, d9}, [r4]
22340x8f 0x8a 0x24 0xf4
2235# CHECK: vld1.32	{d8, d9}, [r4]
22360xcf 0x8a 0x24 0xf4
2237# CHECK: vld1.64	{d8, d9}, [r4]
22380x0f 0x8a 0x24 0xf4
2239# CHECK: vld1.8	{d8, d9}, [r4]
22400x4f 0x88 0x24 0xf4
2241# CHECK: vld2.16	{d8, d9}, [r4]
22420x8f 0x88 0x24 0xf4
2243# CHECK: vld2.32	{d8, d9}, [r4]
22440x0f 0x88 0x24 0xf4
2245# CHECK: vld2.8	{d8, d9}, [r4]
22460x4d 0x88 0x24 0xf4
2247# CHECK: vld2.16	{d8, d9}, [r4]!
22480x46 0x88 0x24 0xf4
2249# CHECK: vld2.16	{d8, d9}, [r4], r6
22500x8d 0x88 0x24 0xf4
2251# CHECK: vld2.32	{d8, d9}, [r4]!
22520x86 0x88 0x24 0xf4
2253# CHECK: vld2.32	{d8, d9}, [r4], r6
22540x0d 0x88 0x24 0xf4
2255# CHECK: vld2.8	{d8, d9}, [r4]!
22560x06 0x88 0x24 0xf4
2257# CHECK: vld2.8	{d8, d9}, [r4], r6
22580x4f 0x89 0x24 0xf4
2259# CHECK: vld2.16	{d8, d10}, [r4]
22600x8f 0x89 0x24 0xf4
2261# CHECK: vld2.32	{d8, d10}, [r4]
22620x0f 0x89 0x24 0xf4
2263# CHECK: vld2.8	{d8, d10}, [r4]
22640x4d 0x83 0x24 0xf4
2265# CHECK: vld2.16	{d8, d9, d10, d11}, [r4]!
22660x46 0x83 0x24 0xf4
2267# CHECK: vld2.16	{d8, d9, d10, d11}, [r4], r6
22680x8d 0x83 0x24 0xf4
2269# CHECK: vld2.32	{d8, d9, d10, d11}, [r4]!
22700x86 0x83 0x24 0xf4
2271# CHECK: vld2.32	{d8, d9, d10, d11}, [r4], r6
22720x0d 0x83 0x24 0xf4
2273# CHECK: vld2.8	{d8, d9, d10, d11}, [r4]!
22740x06 0x83 0x24 0xf4
2275# CHECK: vld2.8	{d8, d9, d10, d11}, [r4], r6
22760x0f 0x84 0x24 0xf4
2277# CHECK: vld3.8	{d8, d9, d10}, [r4]
22780x4f 0x84 0x24 0xf4
2279# CHECK: vld3.16	{d8, d9, d10}, [r4]
22800x8f 0x84 0x24 0xf4
2281# CHECK: vld3.32	{d8, d9, d10}, [r4]
22820x0f 0x80 0x24 0xf4
2283# CHECK: vld4.8	{d8, d9, d10, d11}, [r4]
22840x4f 0x80 0x24 0xf4
2285# CHECK: vld4.16	{d8, d9, d10, d11}, [r4]
22860x8f 0x80 0x24 0xf4
2287# CHECK: vld4.32	{d8, d9, d10, d11}, [r4]
22880x0f 0x85 0x24 0xf4
2289# CHECK: vld3.8	{d8, d10, d12}, [r4]
22900x4f 0x85 0x24 0xf4
2291# CHECK: vld3.16	{d8, d10, d12}, [r4]
22920x8f 0x85 0x24 0xf4
2293# CHECK: vld3.32	{d8, d10, d12}, [r4]
22940x0f 0x81 0x24 0xf4
2295# CHECK: vld4.8	{d8, d10, d12, d14}, [r4]
22960x4f 0x81 0x24 0xf4
2297# CHECK: vld4.16	{d8, d10, d12, d14}, [r4]
22980x8f 0x81 0x24 0xf4
2299# CHECK: vld4.32	{d8, d10, d12, d14}, [r4]
2300
2301# rdar://11256967
23020x0f 0x0d 0xa2 0xf4
2303# CHECK: vld2.8	{d0[], d1[]}, [r2]
23040x4f 0x0d 0xa2 0xf4
2305# CHECK: vld2.16	{d0[], d1[]}, [r2]
23060x8f 0x0d 0xa2 0xf4
2307# CHECK: vld2.32	{d0[], d1[]}, [r2]
23080x0d 0x0d 0xa2 0xf4
2309# CHECK: vld2.8	{d0[], d1[]}, [r2]!
23100x4d 0x0d 0xa2 0xf4
2311# CHECK: vld2.16	{d0[], d1[]}, [r2]!
23120x8d 0x0d 0xa2 0xf4
2313# CHECK: vld2.32	{d0[], d1[]}, [r2]!
23140x03 0x0d 0xa2 0xf4
2315# CHECK: vld2.8	{d0[], d1[]}, [r2], r3
23160x43 0x0d 0xa2 0xf4
2317# CHECK: vld2.16	{d0[], d1[]}, [r2], r3
23180x83 0x0d 0xa2 0xf4
2319# CHECK: vld2.32	{d0[], d1[]}, [r2], r3
23200x2f 0x0d 0xa3 0xf4
2321# CHECK: vld2.8	{d0[], d2[]}, [r3]
23220x6f 0x0d 0xa3 0xf4
2323# CHECK: vld2.16	{d0[], d2[]}, [r3]
23240xaf 0x0d 0xa3 0xf4
2325# CHECK: vld2.32	{d0[], d2[]}, [r3]
23260x2d 0x0d 0xa3 0xf4
2327# CHECK: vld2.8	{d0[], d2[]}, [r3]!
23280x6d 0x0d 0xa3 0xf4
2329# CHECK: vld2.16	{d0[], d2[]}, [r3]!
23300xad 0x0d 0xa3 0xf4
2331# CHECK: vld2.32	{d0[], d2[]}, [r3]!
23320x24 0x0d 0xa3 0xf4
2333# CHECK: vld2.8	{d0[], d2[]}, [r3], r4
23340x64 0x0d 0xa3 0xf4
23350xa4 0x0d 0xa3 0xf4
2336# CHECK: vld2.32	{d0[], d2[]}, [r3], r4
2337