arm_neon_intrinsics.c revision 267fad813b763a68947a1c2fbc469a7ff82c141a
1267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// RUN: %clang_cc1 -triple thumbv7s-apple-darwin -target-abi apcs-gnu\
2267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// RUN:  -target-cpu swift -ffreestanding -Os -S -o - %s\
3267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// RUN:  | FileCheck %s
4267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// REQUIRES: long_tests
6267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman#include <arm_neon.h>
8267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaba_s8
10267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vaba_s8(int8x8_t a, int8x8_t b, int8x8_t c) {
12267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaba_s8(a, b, c);
13267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
14267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
15267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaba_s16
16267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
17267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vaba_s16(int16x4_t a, int16x4_t b, int16x4_t c) {
18267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaba_s16(a, b, c);
19267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
20267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
21267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaba_s32
22267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
23267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vaba_s32(int32x2_t a, int32x2_t b, int32x2_t c) {
24267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaba_s32(a, b, c);
25267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
26267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
27267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaba_u8
28267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
29267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vaba_u8(uint8x8_t a, uint8x8_t b, uint8x8_t c) {
30267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaba_u8(a, b, c);
31267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
32267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
33267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaba_u16
34267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
35267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vaba_u16(uint16x4_t a, uint16x4_t b, uint16x4_t c) {
36267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaba_u16(a, b, c);
37267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
38267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
39267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaba_u32
40267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
41267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vaba_u32(uint32x2_t a, uint32x2_t b, uint32x2_t c) {
42267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaba_u32(a, b, c);
43267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
44267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
45267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabaq_s8
46267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
47267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vabaq_s8(int8x16_t a, int8x16_t b, int8x16_t c) {
48267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabaq_s8(a, b, c);
49267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
50267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
51267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabaq_s16
52267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
53267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vabaq_s16(int16x8_t a, int16x8_t b, int16x8_t c) {
54267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabaq_s16(a, b, c);
55267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
56267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
57267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabaq_s32
58267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
59267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vabaq_s32(int32x4_t a, int32x4_t b, int32x4_t c) {
60267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabaq_s32(a, b, c);
61267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
62267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
63267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabaq_u8
64267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
65267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vabaq_u8(uint8x16_t a, uint8x16_t b, uint8x16_t c) {
66267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabaq_u8(a, b, c);
67267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
68267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
69267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabaq_u16
70267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
71267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vabaq_u16(uint16x8_t a, uint16x8_t b, uint16x8_t c) {
72267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabaq_u16(a, b, c);
73267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
74267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
75267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabaq_u32
76267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaba.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
77267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vabaq_u32(uint32x4_t a, uint32x4_t b, uint32x4_t c) {
78267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabaq_u32(a, b, c);
79267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
80267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
81267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
82267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabal_s8
83267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabal.s8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
84267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vabal_s8(int16x8_t a, int8x8_t b, int8x8_t c) {
85267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabal_s8(a, b, c);
86267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
87267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
88267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabal_s16
89267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabal.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
90267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vabal_s16(int32x4_t a, int16x4_t b, int16x4_t c) {
91267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabal_s16(a, b, c);
92267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
93267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
94267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabal_s32
95267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabal.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
96267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vabal_s32(int64x2_t a, int32x2_t b, int32x2_t c) {
97267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabal_s32(a, b, c);
98267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
99267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabal_u8
101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabal.u8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vabal_u8(uint16x8_t a, uint8x8_t b, uint8x8_t c) {
103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabal_u8(a, b, c);
104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabal_u16
107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabal.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vabal_u16(uint32x4_t a, uint16x4_t b, uint16x4_t c) {
109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabal_u16(a, b, c);
110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabal_u32
113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabal.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vabal_u32(uint64x2_t a, uint32x2_t b, uint32x2_t c) {
115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabal_u32(a, b, c);
116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabd_s8
120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vabd_s8(int8x8_t a, int8x8_t b) {
122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabd_s8(a, b);
123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabd_s16
126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vabd_s16(int16x4_t a, int16x4_t b) {
128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabd_s16(a, b);
129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabd_s32
132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vabd_s32(int32x2_t a, int32x2_t b) {
134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabd_s32(a, b);
135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabd_u8
138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vabd_u8(uint8x8_t a, uint8x8_t b) {
140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabd_u8(a, b);
141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabd_u16
144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vabd_u16(uint16x4_t a, uint16x4_t b) {
146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabd_u16(a, b);
147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabd_u32
150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vabd_u32(uint32x2_t a, uint32x2_t b) {
152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabd_u32(a, b);
153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabd_f32
156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vabd_f32(float32x2_t a, float32x2_t b) {
158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabd_f32(a, b);
159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdq_s8
162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vabdq_s8(int8x16_t a, int8x16_t b) {
164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdq_s8(a, b);
165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdq_s16
168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vabdq_s16(int16x8_t a, int16x8_t b) {
170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdq_s16(a, b);
171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdq_s32
174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vabdq_s32(int32x4_t a, int32x4_t b) {
176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdq_s32(a, b);
177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdq_u8
180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vabdq_u8(uint8x16_t a, uint8x16_t b) {
182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdq_u8(a, b);
183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdq_u16
186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vabdq_u16(uint16x8_t a, uint16x8_t b) {
188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdq_u16(a, b);
189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdq_u32
192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vabdq_u32(uint32x4_t a, uint32x4_t b) {
194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdq_u32(a, b);
195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdq_f32
198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabd.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vabdq_f32(float32x4_t a, float32x4_t b) {
200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdq_f32(a, b);
201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdl_s8
205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabdl.s8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vabdl_s8(int8x8_t a, int8x8_t b) {
207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdl_s8(a, b);
208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdl_s16
211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabdl.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vabdl_s16(int16x4_t a, int16x4_t b) {
213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdl_s16(a, b);
214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdl_s32
217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabdl.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vabdl_s32(int32x2_t a, int32x2_t b) {
219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdl_s32(a, b);
220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdl_u8
223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabdl.u8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vabdl_u8(uint8x8_t a, uint8x8_t b) {
225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdl_u8(a, b);
226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdl_u16
229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabdl.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vabdl_u16(uint16x4_t a, uint16x4_t b) {
231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdl_u16(a, b);
232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabdl_u32
235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabdl.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vabdl_u32(uint32x2_t a, uint32x2_t b) {
237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabdl_u32(a, b);
238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabs_s8
242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabs.s8 d{{[0-9]+}}, d{{[0-9]+}}
243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vabs_s8(int8x8_t a) {
244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabs_s8(a);
245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabs_s16
248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabs.s16 d{{[0-9]+}}, d{{[0-9]+}}
249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vabs_s16(int16x4_t a) {
250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabs_s16(a);
251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabs_s32
254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabs.s32 d{{[0-9]+}}, d{{[0-9]+}}
255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vabs_s32(int32x2_t a) {
256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabs_s32(a);
257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabs_f32
260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabs.f32 d{{[0-9]+}}, d{{[0-9]+}}
261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vabs_f32(float32x2_t a) {
262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabs_f32(a);
263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabsq_s8
266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabs.s8 q{{[0-9]+}}, q{{[0-9]+}}
267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vabsq_s8(int8x16_t a) {
268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabsq_s8(a);
269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabsq_s16
272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabs.s16 q{{[0-9]+}}, q{{[0-9]+}}
273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vabsq_s16(int16x8_t a) {
274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabsq_s16(a);
275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabsq_s32
278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabs.s32 q{{[0-9]+}}, q{{[0-9]+}}
279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vabsq_s32(int32x4_t a) {
280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabsq_s32(a);
281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vabsq_f32
284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vabs.f32 q{{[0-9]+}}, q{{[0-9]+}}
285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vabsq_f32(float32x4_t a) {
286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vabsq_f32(a);
287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vadd_s8
291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vadd_s8(int8x8_t a, int8x8_t b) {
293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vadd_s8(a, b);
294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vadd_s16
297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vadd_s16(int16x4_t a, int16x4_t b) {
299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vadd_s16(a, b);
300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vadd_s32
303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vadd_s32(int32x2_t a, int32x2_t b) {
305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vadd_s32(a, b);
306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vadd_s64
309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vadd_s64(int64x1_t a, int64x1_t b) {
311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vadd_s64(a, b);
312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vadd_f32
315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vadd_f32(float32x2_t a, float32x2_t b) {
317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vadd_f32(a, b);
318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vadd_u8
321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vadd_u8(uint8x8_t a, uint8x8_t b) {
323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vadd_u8(a, b);
324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vadd_u16
327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vadd_u16(uint16x4_t a, uint16x4_t b) {
329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vadd_u16(a, b);
330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vadd_u32
333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vadd_u32(uint32x2_t a, uint32x2_t b) {
335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vadd_u32(a, b);
336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vadd_u64
339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vadd_u64(uint64x1_t a, uint64x1_t b) {
341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vadd_u64(a, b);
342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddq_s8
345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vaddq_s8(int8x16_t a, int8x16_t b) {
347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddq_s8(a, b);
348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddq_s16
351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vaddq_s16(int16x8_t a, int16x8_t b) {
353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddq_s16(a, b);
354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddq_s32
357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vaddq_s32(int32x4_t a, int32x4_t b) {
359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddq_s32(a, b);
360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddq_s64
363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vaddq_s64(int64x2_t a, int64x2_t b) {
365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddq_s64(a, b);
366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddq_f32
369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vaddq_f32(float32x4_t a, float32x4_t b) {
371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddq_f32(a, b);
372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddq_u8
375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vaddq_u8(uint8x16_t a, uint8x16_t b) {
377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddq_u8(a, b);
378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddq_u16
381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vaddq_u16(uint16x8_t a, uint16x8_t b) {
383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddq_u16(a, b);
384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddq_u32
387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vaddq_u32(uint32x4_t a, uint32x4_t b) {
389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddq_u32(a, b);
390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddq_u64
393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.i64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vaddq_u64(uint64x2_t a, uint64x2_t b) {
395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddq_u64(a, b);
396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddhn_s16
400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddhn.i16 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vaddhn_s16(int16x8_t a, int16x8_t b) {
402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddhn_s16(a, b);
403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddhn_s32
406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddhn.i32 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vaddhn_s32(int32x4_t a, int32x4_t b) {
408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddhn_s32(a, b);
409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddhn_s64
412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddhn.i64 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vaddhn_s64(int64x2_t a, int64x2_t b) {
414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddhn_s64(a, b);
415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddhn_u16
418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddhn.i16 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vaddhn_u16(uint16x8_t a, uint16x8_t b) {
420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddhn_u16(a, b);
421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddhn_u32
424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddhn.i32 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vaddhn_u32(uint32x4_t a, uint32x4_t b) {
426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddhn_u32(a, b);
427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddhn_u64
430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddhn.i64 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vaddhn_u64(uint64x2_t a, uint64x2_t b) {
432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddhn_u64(a, b);
433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddl_s8
437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddl.s8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vaddl_s8(int8x8_t a, int8x8_t b) {
439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddl_s8(a, b);
440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddl_s16
443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddl.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vaddl_s16(int16x4_t a, int16x4_t b) {
445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddl_s16(a, b);
446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddl_s32
449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddl.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vaddl_s32(int32x2_t a, int32x2_t b) {
451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddl_s32(a, b);
452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddl_u8
455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddl.u8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vaddl_u8(uint8x8_t a, uint8x8_t b) {
457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddl_u8(a, b);
458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddl_u16
461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddl.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vaddl_u16(uint16x4_t a, uint16x4_t b) {
463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddl_u16(a, b);
464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddl_u32
467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddl.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vaddl_u32(uint32x2_t a, uint32x2_t b) {
469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddl_u32(a, b);
470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddw_s8
474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddw.s8 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vaddw_s8(int16x8_t a, int8x8_t b) {
476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddw_s8(a, b);
477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddw_s16
480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddw.s16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vaddw_s16(int32x4_t a, int16x4_t b) {
482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddw_s16(a, b);
483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddw_s32
486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddw.s32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vaddw_s32(int64x2_t a, int32x2_t b) {
488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddw_s32(a, b);
489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddw_u8
492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddw.u8 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vaddw_u8(uint16x8_t a, uint8x8_t b) {
494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddw_u8(a, b);
495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddw_u16
498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddw.u16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vaddw_u16(uint32x4_t a, uint16x4_t b) {
500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddw_u16(a, b);
501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vaddw_u32
504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vaddw.u32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vaddw_u32(uint64x2_t a, uint32x2_t b) {
506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vaddw_u32(a, b);
507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vand_s8
511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vand_s8(int8x8_t a, int8x8_t b) {
513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vand_s8(a, b);
514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vand_s16
517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vand_s16(int16x4_t a, int16x4_t b) {
519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vand_s16(a, b);
520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vand_s32
523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vand_s32(int32x2_t a, int32x2_t b) {
525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vand_s32(a, b);
526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vand_s64
529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vand_s64(int64x1_t a, int64x1_t b) {
531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vand_s64(a, b);
532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vand_u8
535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vand_u8(uint8x8_t a, uint8x8_t b) {
537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vand_u8(a, b);
538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vand_u16
541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vand_u16(uint16x4_t a, uint16x4_t b) {
543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vand_u16(a, b);
544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vand_u32
547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vand_u32(uint32x2_t a, uint32x2_t b) {
549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vand_u32(a, b);
550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vand_u64
553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vand_u64(uint64x1_t a, uint64x1_t b) {
555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vand_u64(a, b);
556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vandq_s8
559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vandq_s8(int8x16_t a, int8x16_t b) {
561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vandq_s8(a, b);
562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vandq_s16
565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vandq_s16(int16x8_t a, int16x8_t b) {
567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vandq_s16(a, b);
568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vandq_s32
571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vandq_s32(int32x4_t a, int32x4_t b) {
573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vandq_s32(a, b);
574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vandq_s64
577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vandq_s64(int64x2_t a, int64x2_t b) {
579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vandq_s64(a, b);
580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vandq_u8
583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vandq_u8(uint8x16_t a, uint8x16_t b) {
585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vandq_u8(a, b);
586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vandq_u16
589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vandq_u16(uint16x8_t a, uint16x8_t b) {
591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vandq_u16(a, b);
592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vandq_u32
595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vandq_u32(uint32x4_t a, uint32x4_t b) {
597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vandq_u32(a, b);
598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vandq_u64
601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vand q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vandq_u64(uint64x2_t a, uint64x2_t b) {
603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vandq_u64(a, b);
604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbic_s8
608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vbic_s8(int8x8_t a, int8x8_t b) {
610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbic_s8(a, b);
611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbic_s16
614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vbic_s16(int16x4_t a, int16x4_t b) {
616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbic_s16(a, b);
617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbic_s32
620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vbic_s32(int32x2_t a, int32x2_t b) {
622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbic_s32(a, b);
623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbic_s64
626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vbic_s64(int64x1_t a, int64x1_t b) {
628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbic_s64(a, b);
629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbic_u8
632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vbic_u8(uint8x8_t a, uint8x8_t b) {
634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbic_u8(a, b);
635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbic_u16
638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vbic_u16(uint16x4_t a, uint16x4_t b) {
640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbic_u16(a, b);
641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbic_u32
644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vbic_u32(uint32x2_t a, uint32x2_t b) {
646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbic_u32(a, b);
647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbic_u64
650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vbic_u64(uint64x1_t a, uint64x1_t b) {
652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbic_u64(a, b);
653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbicq_s8
656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vbicq_s8(int8x16_t a, int8x16_t b) {
658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbicq_s8(a, b);
659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbicq_s16
662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vbicq_s16(int16x8_t a, int16x8_t b) {
664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbicq_s16(a, b);
665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbicq_s32
668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vbicq_s32(int32x4_t a, int32x4_t b) {
670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbicq_s32(a, b);
671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbicq_s64
674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vbicq_s64(int64x2_t a, int64x2_t b) {
676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbicq_s64(a, b);
677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbicq_u8
680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vbicq_u8(uint8x16_t a, uint8x16_t b) {
682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbicq_u8(a, b);
683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbicq_u16
686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vbicq_u16(uint16x8_t a, uint16x8_t b) {
688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbicq_u16(a, b);
689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbicq_u32
692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vbicq_u32(uint32x4_t a, uint32x4_t b) {
694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbicq_u32(a, b);
695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbicq_u64
698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbic q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vbicq_u64(uint64x2_t a, uint64x2_t b) {
700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbicq_u64(a, b);
701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_s8
705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vbsl_s8(uint8x8_t a, int8x8_t b, int8x8_t c) {
707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_s8(a, b, c);
708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_s16
711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vbsl_s16(uint16x4_t a, int16x4_t b, int16x4_t c) {
713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_s16(a, b, c);
714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_s32
717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vbsl_s32(uint32x2_t a, int32x2_t b, int32x2_t c) {
719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_s32(a, b, c);
720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_s64
723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vbsl_s64(uint64x1_t a, int64x1_t b, int64x1_t c) {
725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_s64(a, b, c);
726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_u8
729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vbsl_u8(uint8x8_t a, uint8x8_t b, uint8x8_t c) {
731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_u8(a, b, c);
732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_u16
735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vbsl_u16(uint16x4_t a, uint16x4_t b, uint16x4_t c) {
737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_u16(a, b, c);
738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_u32
741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vbsl_u32(uint32x2_t a, uint32x2_t b, uint32x2_t c) {
743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_u32(a, b, c);
744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_u64
747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vbsl_u64(uint64x1_t a, uint64x1_t b, uint64x1_t c) {
749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_u64(a, b, c);
750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_f32
753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vbsl_f32(uint32x2_t a, float32x2_t b, float32x2_t c) {
755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_f32(a, b, c);
756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_p8
759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vbsl_p8(uint8x8_t a, poly8x8_t b, poly8x8_t c) {
761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_p8(a, b, c);
762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbsl_p16
765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vbsl_p16(uint16x4_t a, poly16x4_t b, poly16x4_t c) {
767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbsl_p16(a, b, c);
768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_s8
771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vbslq_s8(uint8x16_t a, int8x16_t b, int8x16_t c) {
773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_s8(a, b, c);
774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_s16
777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vbslq_s16(uint16x8_t a, int16x8_t b, int16x8_t c) {
779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_s16(a, b, c);
780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_s32
783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vbslq_s32(uint32x4_t a, int32x4_t b, int32x4_t c) {
785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_s32(a, b, c);
786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_s64
789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vbslq_s64(uint64x2_t a, int64x2_t b, int64x2_t c) {
791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_s64(a, b, c);
792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_u8
795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vbslq_u8(uint8x16_t a, uint8x16_t b, uint8x16_t c) {
797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_u8(a, b, c);
798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_u16
801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vbslq_u16(uint16x8_t a, uint16x8_t b, uint16x8_t c) {
803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_u16(a, b, c);
804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_u32
807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vbslq_u32(uint32x4_t a, uint32x4_t b, uint32x4_t c) {
809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_u32(a, b, c);
810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_u64
813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vbslq_u64(uint64x2_t a, uint64x2_t b, uint64x2_t c) {
815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_u64(a, b, c);
816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_f32
819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vbslq_f32(uint32x4_t a, float32x4_t b, float32x4_t c) {
821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_f32(a, b, c);
822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_p8
825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vbslq_p8(uint8x16_t a, poly8x16_t b, poly8x16_t c) {
827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_p8(a, b, c);
828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vbslq_p16
831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vbsl q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vbslq_p16(uint16x8_t a, poly16x8_t b, poly16x8_t c) {
833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vbslq_p16(a, b, c);
834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcage_f32
838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vacge.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcage_f32(float32x2_t a, float32x2_t b) {
840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcage_f32(a, b);
841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcageq_f32
844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vacge.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcageq_f32(float32x4_t a, float32x4_t b) {
846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcageq_f32(a, b);
847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcagt_f32
851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vacgt.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcagt_f32(float32x2_t a, float32x2_t b) {
853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcagt_f32(a, b);
854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcagtq_f32
857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vacgt.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcagtq_f32(float32x4_t a, float32x4_t b) {
859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcagtq_f32(a, b);
860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcale_f32
864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vacge.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcale_f32(float32x2_t a, float32x2_t b) {
866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcale_f32(a, b);
867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcaleq_f32
870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vacge.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcaleq_f32(float32x4_t a, float32x4_t b) {
872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcaleq_f32(a, b);
873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcalt_f32
877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vacgt.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcalt_f32(float32x2_t a, float32x2_t b) {
879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcalt_f32(a, b);
880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcaltq_f32
883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vacgt.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcaltq_f32(float32x4_t a, float32x4_t b) {
885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcaltq_f32(a, b);
886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceq_s8
890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vceq_s8(int8x8_t a, int8x8_t b) {
892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceq_s8(a, b);
893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceq_s16
896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vceq_s16(int16x4_t a, int16x4_t b) {
898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceq_s16(a, b);
899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceq_s32
902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vceq_s32(int32x2_t a, int32x2_t b) {
904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceq_s32(a, b);
905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceq_f32
908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vceq_f32(float32x2_t a, float32x2_t b) {
910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceq_f32(a, b);
911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceq_u8
914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vceq_u8(uint8x8_t a, uint8x8_t b) {
916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceq_u8(a, b);
917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceq_u16
920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vceq_u16(uint16x4_t a, uint16x4_t b) {
922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceq_u16(a, b);
923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceq_u32
926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vceq_u32(uint32x2_t a, uint32x2_t b) {
928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceq_u32(a, b);
929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceq_p8
932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vceq_p8(poly8x8_t a, poly8x8_t b) {
934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceq_p8(a, b);
935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceqq_s8
938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vceqq_s8(int8x16_t a, int8x16_t b) {
940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceqq_s8(a, b);
941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceqq_s16
944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vceqq_s16(int16x8_t a, int16x8_t b) {
946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceqq_s16(a, b);
947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceqq_s32
950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vceqq_s32(int32x4_t a, int32x4_t b) {
952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceqq_s32(a, b);
953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceqq_f32
956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vceqq_f32(float32x4_t a, float32x4_t b) {
958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceqq_f32(a, b);
959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceqq_u8
962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vceqq_u8(uint8x16_t a, uint8x16_t b) {
964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceqq_u8(a, b);
965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceqq_u16
968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vceqq_u16(uint16x8_t a, uint16x8_t b) {
970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceqq_u16(a, b);
971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceqq_u32
974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vceqq_u32(uint32x4_t a, uint32x4_t b) {
976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceqq_u32(a, b);
977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vceqq_p8
980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vceq.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vceqq_p8(poly8x16_t a, poly8x16_t b) {
982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vceqq_p8(a, b);
983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcge_s8
987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vcge_s8(int8x8_t a, int8x8_t b) {
989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcge_s8(a, b);
990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcge_s16
993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vcge_s16(int16x4_t a, int16x4_t b) {
995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcge_s16(a, b);
996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcge_s32
999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcge_s32(int32x2_t a, int32x2_t b) {
1001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcge_s32(a, b);
1002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcge_f32
1005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcge_f32(float32x2_t a, float32x2_t b) {
1007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcge_f32(a, b);
1008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcge_u8
1011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vcge_u8(uint8x8_t a, uint8x8_t b) {
1013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcge_u8(a, b);
1014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcge_u16
1017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vcge_u16(uint16x4_t a, uint16x4_t b) {
1019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcge_u16(a, b);
1020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcge_u32
1023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcge_u32(uint32x2_t a, uint32x2_t b) {
1025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcge_u32(a, b);
1026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgeq_s8
1029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcgeq_s8(int8x16_t a, int8x16_t b) {
1031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgeq_s8(a, b);
1032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgeq_s16
1035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vcgeq_s16(int16x8_t a, int16x8_t b) {
1037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgeq_s16(a, b);
1038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgeq_s32
1041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcgeq_s32(int32x4_t a, int32x4_t b) {
1043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgeq_s32(a, b);
1044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgeq_f32
1047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcgeq_f32(float32x4_t a, float32x4_t b) {
1049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgeq_f32(a, b);
1050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgeq_u8
1053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcgeq_u8(uint8x16_t a, uint8x16_t b) {
1055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgeq_u8(a, b);
1056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgeq_u16
1059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vcgeq_u16(uint16x8_t a, uint16x8_t b) {
1061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgeq_u16(a, b);
1062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgeq_u32
1065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcgeq_u32(uint32x4_t a, uint32x4_t b) {
1067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgeq_u32(a, b);
1068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgt_s8
1072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vcgt_s8(int8x8_t a, int8x8_t b) {
1074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgt_s8(a, b);
1075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgt_s16
1078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vcgt_s16(int16x4_t a, int16x4_t b) {
1080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgt_s16(a, b);
1081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgt_s32
1084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcgt_s32(int32x2_t a, int32x2_t b) {
1086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgt_s32(a, b);
1087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgt_f32
1090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcgt_f32(float32x2_t a, float32x2_t b) {
1092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgt_f32(a, b);
1093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgt_u8
1096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vcgt_u8(uint8x8_t a, uint8x8_t b) {
1098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgt_u8(a, b);
1099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgt_u16
1102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vcgt_u16(uint16x4_t a, uint16x4_t b) {
1104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgt_u16(a, b);
1105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgt_u32
1108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcgt_u32(uint32x2_t a, uint32x2_t b) {
1110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgt_u32(a, b);
1111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgtq_s8
1114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcgtq_s8(int8x16_t a, int8x16_t b) {
1116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgtq_s8(a, b);
1117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgtq_s16
1120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vcgtq_s16(int16x8_t a, int16x8_t b) {
1122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgtq_s16(a, b);
1123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgtq_s32
1126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcgtq_s32(int32x4_t a, int32x4_t b) {
1128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgtq_s32(a, b);
1129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgtq_f32
1132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcgtq_f32(float32x4_t a, float32x4_t b) {
1134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgtq_f32(a, b);
1135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgtq_u8
1138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcgtq_u8(uint8x16_t a, uint8x16_t b) {
1140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgtq_u8(a, b);
1141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgtq_u16
1144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vcgtq_u16(uint16x8_t a, uint16x8_t b) {
1146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgtq_u16(a, b);
1147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcgtq_u32
1150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcgtq_u32(uint32x4_t a, uint32x4_t b) {
1152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcgtq_u32(a, b);
1153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcle_s8
1157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vcle_s8(int8x8_t a, int8x8_t b) {
1159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcle_s8(a, b);
1160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcle_s16
1163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vcle_s16(int16x4_t a, int16x4_t b) {
1165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcle_s16(a, b);
1166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcle_s32
1169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcle_s32(int32x2_t a, int32x2_t b) {
1171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcle_s32(a, b);
1172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcle_f32
1175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcle_f32(float32x2_t a, float32x2_t b) {
1177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcle_f32(a, b);
1178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcle_u8
1181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vcle_u8(uint8x8_t a, uint8x8_t b) {
1183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcle_u8(a, b);
1184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcle_u16
1187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vcle_u16(uint16x4_t a, uint16x4_t b) {
1189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcle_u16(a, b);
1190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcle_u32
1193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcle_u32(uint32x2_t a, uint32x2_t b) {
1195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcle_u32(a, b);
1196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcleq_s8
1199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcleq_s8(int8x16_t a, int8x16_t b) {
1201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcleq_s8(a, b);
1202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcleq_s16
1205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vcleq_s16(int16x8_t a, int16x8_t b) {
1207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcleq_s16(a, b);
1208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcleq_s32
1211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcleq_s32(int32x4_t a, int32x4_t b) {
1213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcleq_s32(a, b);
1214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcleq_f32
1217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcleq_f32(float32x4_t a, float32x4_t b) {
1219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcleq_f32(a, b);
1220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcleq_u8
1223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcleq_u8(uint8x16_t a, uint8x16_t b) {
1225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcleq_u8(a, b);
1226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcleq_u16
1229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vcleq_u16(uint16x8_t a, uint16x8_t b) {
1231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcleq_u16(a, b);
1232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcleq_u32
1235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcge.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcleq_u32(uint32x4_t a, uint32x4_t b) {
1237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcleq_u32(a, b);
1238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcls_s8
1242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcls.s8 d{{[0-9]+}}, d{{[0-9]+}}
1243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vcls_s8(int8x8_t a) {
1244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcls_s8(a);
1245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcls_s16
1248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcls.s16 d{{[0-9]+}}, d{{[0-9]+}}
1249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vcls_s16(int16x4_t a) {
1250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcls_s16(a);
1251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcls_s32
1254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcls.s32 d{{[0-9]+}}, d{{[0-9]+}}
1255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vcls_s32(int32x2_t a) {
1256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcls_s32(a);
1257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclsq_s8
1260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcls.s8 q{{[0-9]+}}, q{{[0-9]+}}
1261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vclsq_s8(int8x16_t a) {
1262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclsq_s8(a);
1263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclsq_s16
1266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcls.s16 q{{[0-9]+}}, q{{[0-9]+}}
1267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vclsq_s16(int16x8_t a) {
1268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclsq_s16(a);
1269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclsq_s32
1272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcls.s32 q{{[0-9]+}}, q{{[0-9]+}}
1273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vclsq_s32(int32x4_t a) {
1274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclsq_s32(a);
1275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclt_s8
1279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vclt_s8(int8x8_t a, int8x8_t b) {
1281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclt_s8(a, b);
1282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclt_s16
1285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vclt_s16(int16x4_t a, int16x4_t b) {
1287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclt_s16(a, b);
1288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclt_s32
1291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vclt_s32(int32x2_t a, int32x2_t b) {
1293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclt_s32(a, b);
1294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclt_f32
1297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vclt_f32(float32x2_t a, float32x2_t b) {
1299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclt_f32(a, b);
1300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclt_u8
1303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vclt_u8(uint8x8_t a, uint8x8_t b) {
1305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclt_u8(a, b);
1306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclt_u16
1309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vclt_u16(uint16x4_t a, uint16x4_t b) {
1311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclt_u16(a, b);
1312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclt_u32
1315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vclt_u32(uint32x2_t a, uint32x2_t b) {
1317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclt_u32(a, b);
1318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcltq_s8
1321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcltq_s8(int8x16_t a, int8x16_t b) {
1323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcltq_s8(a, b);
1324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcltq_s16
1327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vcltq_s16(int16x8_t a, int16x8_t b) {
1329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcltq_s16(a, b);
1330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcltq_s32
1333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcltq_s32(int32x4_t a, int32x4_t b) {
1335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcltq_s32(a, b);
1336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcltq_f32
1339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcltq_f32(float32x4_t a, float32x4_t b) {
1341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcltq_f32(a, b);
1342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcltq_u8
1345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcltq_u8(uint8x16_t a, uint8x16_t b) {
1347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcltq_u8(a, b);
1348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcltq_u16
1351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vcltq_u16(uint16x8_t a, uint16x8_t b) {
1353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcltq_u16(a, b);
1354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcltq_u32
1357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcgt.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
1358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcltq_u32(uint32x4_t a, uint32x4_t b) {
1359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcltq_u32(a, b);
1360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclz_s8
1364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i8 d{{[0-9]+}}, d{{[0-9]+}}
1365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vclz_s8(int8x8_t a) {
1366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclz_s8(a);
1367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclz_s16
1370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i16 d{{[0-9]+}}, d{{[0-9]+}}
1371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vclz_s16(int16x4_t a) {
1372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclz_s16(a);
1373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclz_s32
1376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i32 d{{[0-9]+}}, d{{[0-9]+}}
1377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vclz_s32(int32x2_t a) {
1378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclz_s32(a);
1379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclz_u8
1382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i8 d{{[0-9]+}}, d{{[0-9]+}}
1383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vclz_u8(uint8x8_t a) {
1384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclz_u8(a);
1385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclz_u16
1388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i16 d{{[0-9]+}}, d{{[0-9]+}}
1389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vclz_u16(uint16x4_t a) {
1390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclz_u16(a);
1391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclz_u32
1394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i32 d{{[0-9]+}}, d{{[0-9]+}}
1395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vclz_u32(uint32x2_t a) {
1396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclz_u32(a);
1397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclzq_s8
1400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i8 q{{[0-9]+}}, q{{[0-9]+}}
1401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vclzq_s8(int8x16_t a) {
1402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclzq_s8(a);
1403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclzq_s16
1406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i16 q{{[0-9]+}}, q{{[0-9]+}}
1407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vclzq_s16(int16x8_t a) {
1408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclzq_s16(a);
1409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclzq_s32
1412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i32 q{{[0-9]+}}, q{{[0-9]+}}
1413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vclzq_s32(int32x4_t a) {
1414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclzq_s32(a);
1415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclzq_u8
1418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i8 q{{[0-9]+}}, q{{[0-9]+}}
1419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vclzq_u8(uint8x16_t a) {
1420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclzq_u8(a);
1421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclzq_u16
1424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i16 q{{[0-9]+}}, q{{[0-9]+}}
1425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vclzq_u16(uint16x8_t a) {
1426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclzq_u16(a);
1427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vclzq_u32
1430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vclz.i32 q{{[0-9]+}}, q{{[0-9]+}}
1431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vclzq_u32(uint32x4_t a) {
1432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vclzq_u32(a);
1433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcnt_u8
1437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcnt.8 d{{[0-9]+}}, d{{[0-9]+}}
1438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vcnt_u8(uint8x8_t a) {
1439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcnt_u8(a);
1440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcnt_s8
1443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcnt.8 d{{[0-9]+}}, d{{[0-9]+}}
1444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vcnt_s8(int8x8_t a) {
1445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcnt_s8(a);
1446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcnt_p8
1449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcnt.8 d{{[0-9]+}}, d{{[0-9]+}}
1450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vcnt_p8(poly8x8_t a) {
1451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcnt_p8(a);
1452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcntq_u8
1455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcnt.8 q{{[0-9]+}}, q{{[0-9]+}}
1456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcntq_u8(uint8x16_t a) {
1457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcntq_u8(a);
1458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcntq_s8
1461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcnt.8 q{{[0-9]+}}, q{{[0-9]+}}
1462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vcntq_s8(int8x16_t a) {
1463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcntq_s8(a);
1464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcntq_p8
1467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcnt.8 q{{[0-9]+}}, q{{[0-9]+}}
1468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vcntq_p8(poly8x16_t a) {
1469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcntq_p8(a);
1470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_s8
1474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vcombine_s8(int8x8_t a, int8x8_t b) {
1475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_s8(a, b);
1476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_s16
1479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vcombine_s16(int16x4_t a, int16x4_t b) {
1480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_s16(a, b);
1481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_s32
1484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vcombine_s32(int32x2_t a, int32x2_t b) {
1485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_s32(a, b);
1486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_s64
1489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vcombine_s64(int64x1_t a, int64x1_t b) {
1490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_s64(a, b);
1491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_f16
1494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vcombine_f16(float16x4_t a, float16x4_t b) {
1495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_f16(a, b);
1496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_f32
1499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vcombine_f32(float32x2_t a, float32x2_t b) {
1500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_f32(a, b);
1501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_u8
1504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vcombine_u8(uint8x8_t a, uint8x8_t b) {
1505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_u8(a, b);
1506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_u16
1509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vcombine_u16(uint16x4_t a, uint16x4_t b) {
1510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_u16(a, b);
1511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_u32
1514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcombine_u32(uint32x2_t a, uint32x2_t b) {
1515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_u32(a, b);
1516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_u64
1519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vcombine_u64(uint64x1_t a, uint64x1_t b) {
1520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_u64(a, b);
1521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_p8
1524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vcombine_p8(poly8x8_t a, poly8x8_t b) {
1525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_p8(a, b);
1526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcombine_p16
1529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vcombine_p16(poly16x4_t a, poly16x4_t b) {
1530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcombine_p16(a, b);
1531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_s8
1535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vcreate_s8(uint64_t a) {
1536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_s8(a);
1537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_s16
1540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vcreate_s16(uint64_t a) {
1541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_s16(a);
1542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_s32
1545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vcreate_s32(uint64_t a) {
1546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_s32(a);
1547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_f16
1550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vcreate_f16(uint64_t a) {
1551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_f16(a);
1552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_f32
1555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vcreate_f32(uint64_t a) {
1556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_f32(a);
1557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_u8
1560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vcreate_u8(uint64_t a) {
1561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_u8(a);
1562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_u16
1565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vcreate_u16(uint64_t a) {
1566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_u16(a);
1567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_u32
1570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcreate_u32(uint64_t a) {
1571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_u32(a);
1572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_u64
1575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vcreate_u64(uint64_t a) {
1576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_u64(a);
1577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_p8
1580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vcreate_p8(uint64_t a) {
1581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_p8(a);
1582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_p16
1585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vcreate_p16(uint64_t a) {
1586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_p16(a);
1587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcreate_s64
1590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vcreate_s64(uint64_t a) {
1591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcreate_s64(a);
1592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_f16_f32
1596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f16.f32 d{{[0-9]+}}, q{{[0-9]+}}
1597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vcvt_f16_f32(float32x4_t a) {
1598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_f16_f32(a);
1599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_f32_s32
1603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f32.s32 d{{[0-9]+}}, d{{[0-9]+}}
1604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vcvt_f32_s32(int32x2_t a) {
1605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_f32_s32(a);
1606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_f32_u32
1609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f32.u32 d{{[0-9]+}}, d{{[0-9]+}}
1610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vcvt_f32_u32(uint32x2_t a) {
1611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_f32_u32(a);
1612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvtq_f32_s32
1615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f32.s32 q{{[0-9]+}}, q{{[0-9]+}}
1616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vcvtq_f32_s32(int32x4_t a) {
1617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvtq_f32_s32(a);
1618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvtq_f32_u32
1621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f32.u32 q{{[0-9]+}}, q{{[0-9]+}}
1622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vcvtq_f32_u32(uint32x4_t a) {
1623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvtq_f32_u32(a);
1624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_f32_f16
1628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f32.f16
1629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vcvt_f32_f16(float16x4_t a) {
1630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_f32_f16(a);
1631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_n_f32_s32
1635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f32.s32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
1636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vcvt_n_f32_s32(int32x2_t a) {
1637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_n_f32_s32(a, 1);
1638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_n_f32_u32
1641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f32.u32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
1642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vcvt_n_f32_u32(uint32x2_t a) {
1643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_n_f32_u32(a, 1);
1644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvtq_n_f32_s32
1647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f32.s32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
1648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vcvtq_n_f32_s32(int32x4_t a) {
1649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvtq_n_f32_s32(a, 3);
1650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvtq_n_f32_u32
1653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.f32.u32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
1654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vcvtq_n_f32_u32(uint32x4_t a) {
1655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvtq_n_f32_u32(a, 3);
1656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_n_s32_f32
1660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.s32.f32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
1661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vcvt_n_s32_f32(float32x2_t a) {
1662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_n_s32_f32(a, 1);
1663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvtq_n_s32_f32
1666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.s32.f32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
1667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vcvtq_n_s32_f32(float32x4_t a) {
1668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvtq_n_s32_f32(a, 3);
1669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_n_u32_f32
1673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.u32.f32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
1674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcvt_n_u32_f32(float32x2_t a) {
1675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_n_u32_f32(a, 1);
1676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvtq_n_u32_f32
1679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.u32.f32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
1680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcvtq_n_u32_f32(float32x4_t a) {
1681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvtq_n_u32_f32(a, 3);
1682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_s32_f32
1686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.s32.f32 d{{[0-9]+}}, d{{[0-9]+}}
1687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vcvt_s32_f32(float32x2_t a) {
1688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_s32_f32(a);
1689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvtq_s32_f32
1692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.s32.f32 q{{[0-9]+}}, q{{[0-9]+}}
1693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vcvtq_s32_f32(float32x4_t a) {
1694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvtq_s32_f32(a);
1695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvt_u32_f32
1699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.u32.f32 d{{[0-9]+}}, d{{[0-9]+}}
1700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vcvt_u32_f32(float32x2_t a) {
1701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvt_u32_f32(a);
1702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vcvtq_u32_f32
1705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vcvt.u32.f32 q{{[0-9]+}}, q{{[0-9]+}}
1706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vcvtq_u32_f32(float32x4_t a) {
1707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vcvtq_u32_f32(a);
1708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_u8
1712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.8 d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vdup_lane_u8(uint8x8_t a) {
1714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_u8(a, 7);
1715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_u16
1718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.16 d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vdup_lane_u16(uint16x4_t a) {
1720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_u16(a, 3);
1721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_u32
1724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.32 d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vdup_lane_u32(uint32x2_t a) {
1726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_u32(a, 1);
1727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_s8
1730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.8 d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vdup_lane_s8(int8x8_t a) {
1732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_s8(a, 7);
1733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_s16
1736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.16 d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vdup_lane_s16(int16x4_t a) {
1738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_s16(a, 3);
1739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_s32
1742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.32 d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vdup_lane_s32(int32x2_t a) {
1744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_s32(a, 1);
1745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_p8
1748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.8 d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vdup_lane_p8(poly8x8_t a) {
1750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_p8(a, 7);
1751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_p16
1754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.16 d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vdup_lane_p16(poly16x4_t a) {
1756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_p16(a, 3);
1757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_f32
1760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.32 d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vdup_lane_f32(float32x2_t a) {
1762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_f32(a, 1);
1763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_u8
1766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.8 q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vdupq_lane_u8(uint8x8_t a) {
1768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_u8(a, 7);
1769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_u16
1772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.16 q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vdupq_lane_u16(uint16x4_t a) {
1774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_u16(a, 3);
1775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_u32
1778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.32 q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vdupq_lane_u32(uint32x2_t a) {
1780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_u32(a, 1);
1781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_s8
1784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.8 q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vdupq_lane_s8(int8x8_t a) {
1786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_s8(a, 7);
1787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_s16
1790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.16 q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vdupq_lane_s16(int16x4_t a) {
1792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_s16(a, 3);
1793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_s32
1796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.32 q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vdupq_lane_s32(int32x2_t a) {
1798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_s32(a, 1);
1799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_p8
1802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.8 q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vdupq_lane_p8(poly8x8_t a) {
1804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_p8(a, 7);
1805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_p16
1808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.16 q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vdupq_lane_p16(poly16x4_t a) {
1810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_p16(a, 3);
1811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_f32
1814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vdup.32 q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
1815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vdupq_lane_f32(float32x2_t a) {
1816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_f32(a, 1);
1817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_s64
1820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vdup_lane_s64(int64x1_t a) {
1821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_s64(a, 0);
1822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_lane_u64
1825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vdup_lane_u64(uint64x1_t a) {
1826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_lane_u64(a, 0);
1827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_s64
1830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vmov|vdup}}
1831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vdupq_lane_s64(int64x1_t a) {
1832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_s64(a, 0);
1833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_lane_u64
1836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vmov|vdup}}
1837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vdupq_lane_u64(uint64x1_t a) {
1838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_lane_u64(a, 0);
1839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_u8
1843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vdup_n_u8(uint8_t a) {
1845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_u8(a);
1846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_u16
1849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vdup_n_u16(uint16_t a) {
1851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_u16(a);
1852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_u32
1855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vdup_n_u32(uint32_t a) {
1857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_u32(a);
1858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_s8
1861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vdup_n_s8(int8_t a) {
1863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_s8(a);
1864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_s16
1867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vdup_n_s16(int16_t a) {
1869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_s16(a);
1870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_s32
1873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vdup_n_s32(int32_t a) {
1875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_s32(a);
1876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_p8
1879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vdup_n_p8(poly8_t a) {
1881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_p8(a);
1882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_p16
1885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vdup_n_p16(poly16_t a) {
1887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_p16(a);
1888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_f32
1891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vdup_n_f32(float32_t a) {
1893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_f32(a);
1894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_u8
1897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vdupq_n_u8(uint8_t a) {
1899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_u8(a);
1900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_u16
1903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vdupq_n_u16(uint16_t a) {
1905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_u16(a);
1906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_u32
1909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vdupq_n_u32(uint32_t a) {
1911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_u32(a);
1912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_s8
1915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vdupq_n_s8(int8_t a) {
1917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_s8(a);
1918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_s16
1921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vdupq_n_s16(int16_t a) {
1923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_s16(a);
1924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_s32
1927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vdupq_n_s32(int32_t a) {
1929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_s32(a);
1930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_p8
1933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vdupq_n_p8(poly8_t a) {
1935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_p8(a);
1936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_p16
1939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vdupq_n_p16(poly16_t a) {
1941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_p16(a);
1942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_f32
1945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vdupq_n_f32(float32_t a) {
1947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_f32(a);
1948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_s64
1951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vdup_n_s64(int64_t a) {
1953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_s64(a);
1954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdup_n_u64
1957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vdup_n_u64(uint64_t a) {
1959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdup_n_u64(a);
1960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_s64
1963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vdupq_n_s64(int64_t a) {
1965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_s64(a);
1966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vdupq_n_u64
1969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
1970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vdupq_n_u64(uint64_t a) {
1971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vdupq_n_u64(a);
1972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veor_s8
1976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_veor_s8(int8x8_t a, int8x8_t b) {
1978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veor_s8(a, b);
1979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veor_s16
1982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_veor_s16(int16x4_t a, int16x4_t b) {
1984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veor_s16(a, b);
1985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veor_s32
1988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_veor_s32(int32x2_t a, int32x2_t b) {
1990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veor_s32(a, b);
1991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veor_s64
1994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
1995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_veor_s64(int64x1_t a, int64x1_t b) {
1996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veor_s64(a, b);
1997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
1998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
1999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veor_u8
2000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_veor_u8(uint8x8_t a, uint8x8_t b) {
2002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veor_u8(a, b);
2003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veor_u16
2006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_veor_u16(uint16x4_t a, uint16x4_t b) {
2008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veor_u16(a, b);
2009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veor_u32
2012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_veor_u32(uint32x2_t a, uint32x2_t b) {
2014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veor_u32(a, b);
2015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veor_u64
2018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_veor_u64(uint64x1_t a, uint64x1_t b) {
2020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veor_u64(a, b);
2021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veorq_s8
2024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_veorq_s8(int8x16_t a, int8x16_t b) {
2026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veorq_s8(a, b);
2027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veorq_s16
2030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_veorq_s16(int16x8_t a, int16x8_t b) {
2032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veorq_s16(a, b);
2033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veorq_s32
2036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_veorq_s32(int32x4_t a, int32x4_t b) {
2038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veorq_s32(a, b);
2039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veorq_s64
2042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_veorq_s64(int64x2_t a, int64x2_t b) {
2044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veorq_s64(a, b);
2045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veorq_u8
2048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_veorq_u8(uint8x16_t a, uint8x16_t b) {
2050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veorq_u8(a, b);
2051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veorq_u16
2054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_veorq_u16(uint16x8_t a, uint16x8_t b) {
2056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veorq_u16(a, b);
2057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veorq_u32
2060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_veorq_u32(uint32x4_t a, uint32x4_t b) {
2062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veorq_u32(a, b);
2063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_veorq_u64
2066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: veor q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_veorq_u64(uint64x2_t a, uint64x2_t b) {
2068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return veorq_u64(a, b);
2069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_s8
2073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
2074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vext_s8(int8x8_t a, int8x8_t b) {
2075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_s8(a, b, 7);
2076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_u8
2079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
2080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vext_u8(uint8x8_t a, uint8x8_t b) {
2081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_u8(a, b, 7);
2082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_p8
2085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
2086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vext_p8(poly8x8_t a, poly8x8_t b) {
2087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_p8(a, b, 7);
2088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_s16
2091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
2092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vext_s16(int16x4_t a, int16x4_t b) {
2093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_s16(a, b, 3);
2094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_u16
2097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
2098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vext_u16(uint16x4_t a, uint16x4_t b) {
2099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_u16(a, b, 3);
2100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_p16
2103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
2104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vext_p16(poly16x4_t a, poly16x4_t b) {
2105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_p16(a, b, 3);
2106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_s32
2109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
2110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vext_s32(int32x2_t a, int32x2_t b) {
2111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_s32(a, b, 1);
2112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_u32
2115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
2116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vext_u32(uint32x2_t a, uint32x2_t b) {
2117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_u32(a, b, 1);
2118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_s64
2121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vext_s64(int64x1_t a, int64x1_t b) {
2122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_s64(a, b, 0);
2123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_u64
2126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vext_u64(uint64x1_t a, uint64x1_t b) {
2127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_u64(a, b, 0);
2128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vext_f32
2131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
2132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vext_f32(float32x2_t a, float32x2_t b) {
2133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vext_f32(a, b, 1);
2134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_s8
2137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
2138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vextq_s8(int8x16_t a, int8x16_t b) {
2139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_s8(a, b, 15);
2140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_u8
2143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
2144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vextq_u8(uint8x16_t a, uint8x16_t b) {
2145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_u8(a, b, 15);
2146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_p8
2149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
2150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vextq_p8(poly8x16_t a, poly8x16_t b) {
2151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_p8(a, b, 15);
2152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_s16
2155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
2156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vextq_s16(int16x8_t a, int16x8_t b) {
2157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_s16(a, b, 7);
2158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_u16
2161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
2162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vextq_u16(uint16x8_t a, uint16x8_t b) {
2163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_u16(a, b, 7);
2164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_p16
2167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
2168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vextq_p16(poly16x8_t a, poly16x8_t b) {
2169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_p16(a, b, 7);
2170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_s32
2173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
2174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vextq_s32(int32x4_t a, int32x4_t b) {
2175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_s32(a, b, 3);
2176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_u32
2179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
2180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vextq_u32(uint32x4_t a, uint32x4_t b) {
2181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_u32(a, b, 3);
2182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_s64
2185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vmov|vdup}}
2186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vextq_s64(int64x2_t a, int64x2_t b) {
2187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_s64(a, b, 1);
2188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_u64
2191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vmov|vdup}}
2192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vextq_u64(uint64x2_t a, uint64x2_t b) {
2193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_u64(a, b, 1);
2194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vextq_f32
2197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vext.32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
2198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vextq_f32(float32x4_t a, float32x4_t b) {
2199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vextq_f32(a, b, 3);
2200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vfma_f32
2204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vfma.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vfma_f32(float32x2_t a, float32x2_t b, float32x2_t c) {
2206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vfma_f32(a, b, c);
2207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vfmaq_f32
2210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vfma.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vfmaq_f32(float32x4_t a, float32x4_t b, float32x4_t c) {
2212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vfmaq_f32(a, b, c);
2213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_s8
2217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vget_high_s8(int8x16_t a) {
2218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_s8(a);
2219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_s16
2222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vget_high_s16(int16x8_t a) {
2223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_s16(a);
2224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_s32
2227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vget_high_s32(int32x4_t a) {
2228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_s32(a);
2229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_s64
2232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vget_high_s64(int64x2_t a) {
2233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_s64(a);
2234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_f16
2237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vget_high_f16(float16x8_t a) {
2238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_f16(a);
2239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_f32
2242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vget_high_f32(float32x4_t a) {
2243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_f32(a);
2244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_u8
2247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vget_high_u8(uint8x16_t a) {
2248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_u8(a);
2249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_u16
2252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vget_high_u16(uint16x8_t a) {
2253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_u16(a);
2254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_u32
2257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vget_high_u32(uint32x4_t a) {
2258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_u32(a);
2259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_u64
2262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vget_high_u64(uint64x2_t a) {
2263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_u64(a);
2264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_p8
2267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vget_high_p8(poly8x16_t a) {
2268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_p8(a);
2269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_high_p16
2272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vget_high_p16(poly16x8_t a) {
2273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_high_p16(a);
2274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_u8
2278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8_t test_vget_lane_u8(uint8x8_t a) {
2280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_u8(a, 7);
2281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_u16
2284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16_t test_vget_lane_u16(uint16x4_t a) {
2286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_u16(a, 3);
2287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_u32
2290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32_t test_vget_lane_u32(uint32x2_t a) {
2292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_u32(a, 1);
2293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_s8
2296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8_t test_vget_lane_s8(int8x8_t a) {
2298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_s8(a, 7);
2299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_s16
2302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16_t test_vget_lane_s16(int16x4_t a) {
2304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_s16(a, 3);
2305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_s32
2308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32_t test_vget_lane_s32(int32x2_t a) {
2310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_s32(a, 1);
2311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_p8
2314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8_t test_vget_lane_p8(poly8x8_t a) {
2316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_p8(a, 7);
2317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_p16
2320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16_t test_vget_lane_p16(poly16x4_t a) {
2322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_p16(a, 3);
2323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_f32
2326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32_t test_vget_lane_f32(float32x2_t a) {
2328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_f32(a, 1);
2329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_u8
2332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8_t test_vgetq_lane_u8(uint8x16_t a) {
2334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_u8(a, 15);
2335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_u16
2338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16_t test_vgetq_lane_u16(uint16x8_t a) {
2340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_u16(a, 7);
2341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_u32
2344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32_t test_vgetq_lane_u32(uint32x4_t a) {
2346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_u32(a, 3);
2347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_s8
2350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8_t test_vgetq_lane_s8(int8x16_t a) {
2352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_s8(a, 15);
2353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_s16
2356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16_t test_vgetq_lane_s16(int16x8_t a) {
2358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_s16(a, 7);
2359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_s32
2362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32_t test_vgetq_lane_s32(int32x4_t a) {
2364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_s32(a, 3);
2365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_p8
2368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8_t test_vgetq_lane_p8(poly8x16_t a) {
2370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_p8(a, 15);
2371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_p16
2374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16_t test_vgetq_lane_p16(poly16x8_t a) {
2376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_p16(a, 7);
2377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_f32
2380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32_t test_vgetq_lane_f32(float32x4_t a) {
2382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_f32(a, 3);
2383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_s64
2386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64_t test_vget_lane_s64(int64x1_t a) {
2388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_s64(a, 0);
2389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_lane_u64
2392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64_t test_vget_lane_u64(uint64x1_t a) {
2394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_lane_u64(a, 0);
2395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_s64
2398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64_t test_vgetq_lane_s64(int64x2_t a) {
2400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_s64(a, 1);
2401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vgetq_lane_u64
2404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
2405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64_t test_vgetq_lane_u64(uint64x2_t a) {
2406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vgetq_lane_u64(a, 1);
2407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_s8
2411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vget_low_s8(int8x16_t a) {
2412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_s8(a);
2413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_s16
2416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vget_low_s16(int16x8_t a) {
2417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_s16(a);
2418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_s32
2421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vget_low_s32(int32x4_t a) {
2422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_s32(a);
2423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_s64
2426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vget_low_s64(int64x2_t a) {
2427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_s64(a);
2428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_f16
2431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vget_low_f16(float16x8_t a) {
2432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_f16(a);
2433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_f32
2436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vget_low_f32(float32x4_t a) {
2437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_f32(a);
2438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_u8
2441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vget_low_u8(uint8x16_t a) {
2442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_u8(a);
2443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_u16
2446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vget_low_u16(uint16x8_t a) {
2447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_u16(a);
2448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_u32
2451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vget_low_u32(uint32x4_t a) {
2452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_u32(a);
2453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_u64
2456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vget_low_u64(uint64x2_t a) {
2457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_u64(a);
2458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_p8
2461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vget_low_p8(poly8x16_t a) {
2462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_p8(a);
2463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vget_low_p16
2466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vget_low_p16(poly16x8_t a) {
2467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vget_low_p16(a);
2468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhadd_s8
2472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vhadd_s8(int8x8_t a, int8x8_t b) {
2474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhadd_s8(a, b);
2475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhadd_s16
2478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vhadd_s16(int16x4_t a, int16x4_t b) {
2480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhadd_s16(a, b);
2481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhadd_s32
2484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vhadd_s32(int32x2_t a, int32x2_t b) {
2486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhadd_s32(a, b);
2487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhadd_u8
2490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vhadd_u8(uint8x8_t a, uint8x8_t b) {
2492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhadd_u8(a, b);
2493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhadd_u16
2496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vhadd_u16(uint16x4_t a, uint16x4_t b) {
2498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhadd_u16(a, b);
2499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhadd_u32
2502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vhadd_u32(uint32x2_t a, uint32x2_t b) {
2504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhadd_u32(a, b);
2505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhaddq_s8
2508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vhaddq_s8(int8x16_t a, int8x16_t b) {
2510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhaddq_s8(a, b);
2511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhaddq_s16
2514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vhaddq_s16(int16x8_t a, int16x8_t b) {
2516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhaddq_s16(a, b);
2517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhaddq_s32
2520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vhaddq_s32(int32x4_t a, int32x4_t b) {
2522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhaddq_s32(a, b);
2523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhaddq_u8
2526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vhaddq_u8(uint8x16_t a, uint8x16_t b) {
2528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhaddq_u8(a, b);
2529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhaddq_u16
2532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vhaddq_u16(uint16x8_t a, uint16x8_t b) {
2534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhaddq_u16(a, b);
2535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhaddq_u32
2538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhadd.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vhaddq_u32(uint32x4_t a, uint32x4_t b) {
2540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhaddq_u32(a, b);
2541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsub_s8
2545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vhsub_s8(int8x8_t a, int8x8_t b) {
2547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsub_s8(a, b);
2548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsub_s16
2551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vhsub_s16(int16x4_t a, int16x4_t b) {
2553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsub_s16(a, b);
2554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsub_s32
2557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vhsub_s32(int32x2_t a, int32x2_t b) {
2559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsub_s32(a, b);
2560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsub_u8
2563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vhsub_u8(uint8x8_t a, uint8x8_t b) {
2565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsub_u8(a, b);
2566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsub_u16
2569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vhsub_u16(uint16x4_t a, uint16x4_t b) {
2571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsub_u16(a, b);
2572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsub_u32
2575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
2576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vhsub_u32(uint32x2_t a, uint32x2_t b) {
2577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsub_u32(a, b);
2578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsubq_s8
2581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vhsubq_s8(int8x16_t a, int8x16_t b) {
2583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsubq_s8(a, b);
2584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsubq_s16
2587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vhsubq_s16(int16x8_t a, int16x8_t b) {
2589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsubq_s16(a, b);
2590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsubq_s32
2593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vhsubq_s32(int32x4_t a, int32x4_t b) {
2595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsubq_s32(a, b);
2596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsubq_u8
2599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vhsubq_u8(uint8x16_t a, uint8x16_t b) {
2601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsubq_u8(a, b);
2602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsubq_u16
2605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vhsubq_u16(uint16x8_t a, uint16x8_t b) {
2607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsubq_u16(a, b);
2608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vhsubq_u32
2611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vhsub.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
2612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vhsubq_u32(uint32x4_t a, uint32x4_t b) {
2613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vhsubq_u32(a, b);
2614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_u8
2618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vld1q_u8(uint8_t const * a) {
2620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_u8(a);
2621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_u16
2624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vld1q_u16(uint16_t const * a) {
2626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_u16(a);
2627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_u32
2630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vld1q_u32(uint32_t const * a) {
2632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_u32(a);
2633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_u64
2636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vld1q_u64(uint64_t const * a) {
2638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_u64(a);
2639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_s8
2642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vld1q_s8(int8_t const * a) {
2644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_s8(a);
2645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_s16
2648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vld1q_s16(int16_t const * a) {
2650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_s16(a);
2651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_s32
2654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vld1q_s32(int32_t const * a) {
2656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_s32(a);
2657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_s64
2660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vld1q_s64(int64_t const * a) {
2662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_s64(a);
2663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_f16
2666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vld1q_f16(float16_t const * a) {
2668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_f16(a);
2669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_f32
2672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vld1q_f32(float32_t const * a) {
2674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_f32(a);
2675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_p8
2678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vld1q_p8(poly8_t const * a) {
2680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_p8(a);
2681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_p16
2684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
2685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vld1q_p16(poly16_t const * a) {
2686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_p16(a);
2687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_u8
2690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vld1_u8(uint8_t const * a) {
2692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_u8(a);
2693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_u16
2696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vld1_u16(uint16_t const * a) {
2698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_u16(a);
2699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_u32
2702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vld1_u32(uint32_t const * a) {
2704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_u32(a);
2705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_u64
2708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vld1_u64(uint64_t const * a) {
2710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_u64(a);
2711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_s8
2714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vld1_s8(int8_t const * a) {
2716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_s8(a);
2717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_s16
2720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vld1_s16(int16_t const * a) {
2722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_s16(a);
2723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_s32
2726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vld1_s32(int32_t const * a) {
2728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_s32(a);
2729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_s64
2732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vld1_s64(int64_t const * a) {
2734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_s64(a);
2735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_f16
2738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vld1_f16(float16_t const * a) {
2740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_f16(a);
2741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_f32
2744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vld1_f32(float32_t const * a) {
2746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_f32(a);
2747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_p8
2750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vld1_p8(poly8_t const * a) {
2752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_p8(a);
2753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_p16
2756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}}, [r{{[0-9]+}}]
2757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vld1_p16(poly16_t const * a) {
2758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_p16(a);
2759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_u8
2763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
2764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vld1q_dup_u8(uint8_t const * a) {
2765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_u8(a);
2766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_u16
2769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}:16]
2770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vld1q_dup_u16(uint16_t const * a) {
2771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_u16(a);
2772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_u32
2775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}:32]
2776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vld1q_dup_u32(uint32_t const * a) {
2777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_u32(a);
2778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_u64
2781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{ldr|vldr|vmov}}
2782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vld1q_dup_u64(uint64_t const * a) {
2783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_u64(a);
2784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_s8
2787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
2788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vld1q_dup_s8(int8_t const * a) {
2789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_s8(a);
2790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_s16
2793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}:16]
2794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vld1q_dup_s16(int16_t const * a) {
2795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_s16(a);
2796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_s32
2799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}:32]
2800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vld1q_dup_s32(int32_t const * a) {
2801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_s32(a);
2802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_s64
2805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{ldr|vldr|vmov}}
2806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vld1q_dup_s64(int64_t const * a) {
2807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_s64(a);
2808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_f16
2811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}:16]
2812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vld1q_dup_f16(float16_t const * a) {
2813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_f16(a);
2814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_f32
2817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}:32]
2818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vld1q_dup_f32(float32_t const * a) {
2819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_f32(a);
2820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_p8
2823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
2824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vld1q_dup_p8(poly8_t const * a) {
2825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_p8(a);
2826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_dup_p16
2829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}:16]
2830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vld1q_dup_p16(poly16_t const * a) {
2831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_dup_p16(a);
2832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_u8
2835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[]}, [r{{[0-9]+}}]
2836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vld1_dup_u8(uint8_t const * a) {
2837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_u8(a);
2838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_u16
2841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[]}, [r{{[0-9]+}}:16]
2842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vld1_dup_u16(uint16_t const * a) {
2843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_u16(a);
2844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_u32
2847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[]}, [r{{[0-9]+}}:32]
2848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vld1_dup_u32(uint32_t const * a) {
2849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_u32(a);
2850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_u64
2853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{ldr|vldr|vmov}}
2854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vld1_dup_u64(uint64_t const * a) {
2855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_u64(a);
2856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_s8
2859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[]}, [r{{[0-9]+}}]
2860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vld1_dup_s8(int8_t const * a) {
2861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_s8(a);
2862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_s16
2865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[]}, [r{{[0-9]+}}:16]
2866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vld1_dup_s16(int16_t const * a) {
2867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_s16(a);
2868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_s32
2871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[]}, [r{{[0-9]+}}:32]
2872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vld1_dup_s32(int32_t const * a) {
2873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_s32(a);
2874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_s64
2877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{ldr|vldr|vmov}}
2878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vld1_dup_s64(int64_t const * a) {
2879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_s64(a);
2880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_f16
2883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[]}, [r{{[0-9]+}}:16]
2884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vld1_dup_f16(float16_t const * a) {
2885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_f16(a);
2886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_f32
2889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[]}, [r{{[0-9]+}}:32]
2890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vld1_dup_f32(float32_t const * a) {
2891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_f32(a);
2892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_p8
2895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[]}, [r{{[0-9]+}}]
2896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vld1_dup_p8(poly8_t const * a) {
2897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_p8(a);
2898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_dup_p16
2901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[]}, [r{{[0-9]+}}:16]
2902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vld1_dup_p16(poly16_t const * a) {
2903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_dup_p16(a);
2904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_u8
2908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
2909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vld1q_lane_u8(uint8_t const * a, uint8x16_t b) {
2910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_u8(a, b, 15);
2911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_u16
2914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
2915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vld1q_lane_u16(uint16_t const * a, uint16x8_t b) {
2916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_u16(a, b, 7);
2917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_u32
2920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
2921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vld1q_lane_u32(uint32_t const * a, uint32x4_t b) {
2922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_u32(a, b, 3);
2923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_u64
2926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{ldr|vldr|vmov}}
2927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vld1q_lane_u64(uint64_t const * a, uint64x2_t b) {
2928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_u64(a, b, 1);
2929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_s8
2932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
2933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vld1q_lane_s8(int8_t const * a, int8x16_t b) {
2934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_s8(a, b, 15);
2935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_s16
2938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
2939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vld1q_lane_s16(int16_t const * a, int16x8_t b) {
2940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_s16(a, b, 7);
2941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_s32
2944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
2945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vld1q_lane_s32(int32_t const * a, int32x4_t b) {
2946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_s32(a, b, 3);
2947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_s64
2950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{ldr|vldr|vmov}}
2951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vld1q_lane_s64(int64_t const * a, int64x2_t b) {
2952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_s64(a, b, 1);
2953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_f16
2956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
2957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vld1q_lane_f16(float16_t const * a, float16x8_t b) {
2958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_f16(a, b, 7);
2959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_f32
2962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
2963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vld1q_lane_f32(float32_t const * a, float32x4_t b) {
2964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_f32(a, b, 3);
2965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_p8
2968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
2969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vld1q_lane_p8(poly8_t const * a, poly8x16_t b) {
2970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_p8(a, b, 15);
2971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1q_lane_p16
2974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
2975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vld1q_lane_p16(poly16_t const * a, poly16x8_t b) {
2976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1q_lane_p16(a, b, 7);
2977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_u8
2980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
2981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vld1_lane_u8(uint8_t const * a, uint8x8_t b) {
2982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_u8(a, b, 7);
2983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_u16
2986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
2987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vld1_lane_u16(uint16_t const * a, uint16x4_t b) {
2988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_u16(a, b, 3);
2989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_u32
2992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
2993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vld1_lane_u32(uint32_t const * a, uint32x2_t b) {
2994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_u32(a, b, 1);
2995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
2996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
2997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_u64
2998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{ldr|vldr|vmov}}
2999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vld1_lane_u64(uint64_t const * a, uint64x1_t b) {
3000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_u64(a, b, 0);
3001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_s8
3004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vld1_lane_s8(int8_t const * a, int8x8_t b) {
3006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_s8(a, b, 7);
3007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_s16
3010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
3011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vld1_lane_s16(int16_t const * a, int16x4_t b) {
3012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_s16(a, b, 3);
3013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_s32
3016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
3017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vld1_lane_s32(int32_t const * a, int32x2_t b) {
3018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_s32(a, b, 1);
3019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_s64
3022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{ldr|vldr|vmov}}
3023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vld1_lane_s64(int64_t const * a, int64x1_t b) {
3024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_s64(a, b, 0);
3025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_f16
3028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
3029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vld1_lane_f16(float16_t const * a, float16x4_t b) {
3030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_f16(a, b, 3);
3031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_f32
3034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
3035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vld1_lane_f32(float32_t const * a, float32x2_t b) {
3036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_f32(a, b, 1);
3037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_p8
3040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vld1_lane_p8(poly8_t const * a, poly8x8_t b) {
3042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_p8(a, b, 7);
3043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld1_lane_p16
3046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
3047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vld1_lane_p16(poly16_t const * a, poly16x4_t b) {
3048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld1_lane_p16(a, b, 3);
3049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_u8
3053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16x2_t test_vld2q_u8(uint8_t const * a) {
3055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_u8(a);
3056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_u16
3059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8x2_t test_vld2q_u16(uint16_t const * a) {
3061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_u16(a);
3062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_u32
3065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4x2_t test_vld2q_u32(uint32_t const * a) {
3067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_u32(a);
3068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_s8
3071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16x2_t test_vld2q_s8(int8_t const * a) {
3073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_s8(a);
3074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_s16
3077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8x2_t test_vld2q_s16(int16_t const * a) {
3079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_s16(a);
3080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_s32
3083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4x2_t test_vld2q_s32(int32_t const * a) {
3085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_s32(a);
3086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_f16
3089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8x2_t test_vld2q_f16(float16_t const * a) {
3091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_f16(a);
3092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_f32
3095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4x2_t test_vld2q_f32(float32_t const * a) {
3097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_f32(a);
3098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_p8
3101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16x2_t test_vld2q_p8(poly8_t const * a) {
3103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_p8(a);
3104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_p16
3107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8x2_t test_vld2q_p16(poly16_t const * a) {
3109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_p16(a);
3110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_u8
3113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x2_t test_vld2_u8(uint8_t const * a) {
3115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_u8(a);
3116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_u16
3119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x2_t test_vld2_u16(uint16_t const * a) {
3121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_u16(a);
3122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_u32
3125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x2_t test_vld2_u32(uint32_t const * a) {
3127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_u32(a);
3128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_u64
3131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1x2_t test_vld2_u64(uint64_t const * a) {
3133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_u64(a);
3134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_s8
3137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x2_t test_vld2_s8(int8_t const * a) {
3139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_s8(a);
3140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_s16
3143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x2_t test_vld2_s16(int16_t const * a) {
3145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_s16(a);
3146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_s32
3149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x2_t test_vld2_s32(int32_t const * a) {
3151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_s32(a);
3152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_s64
3155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1x2_t test_vld2_s64(int64_t const * a) {
3157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_s64(a);
3158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_f16
3161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4x2_t test_vld2_f16(float16_t const * a) {
3163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_f16(a);
3164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_f32
3167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x2_t test_vld2_f32(float32_t const * a) {
3169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_f32(a);
3170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_p8
3173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x2_t test_vld2_p8(poly8_t const * a) {
3175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_p8(a);
3176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_p16
3179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x2_t test_vld2_p16(poly16_t const * a) {
3181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_p16(a);
3182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_u8
3186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x2_t test_vld2_dup_u8(uint8_t const * a) {
3188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_u8(a);
3189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_u16
3192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x2_t test_vld2_dup_u16(uint16_t const * a) {
3194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_u16(a);
3195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_u32
3198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x2_t test_vld2_dup_u32(uint32_t const * a) {
3200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_u32(a);
3201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_u64
3204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1x2_t test_vld2_dup_u64(uint64_t const * a) {
3206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_u64(a);
3207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_s8
3210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x2_t test_vld2_dup_s8(int8_t const * a) {
3212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_s8(a);
3213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_s16
3216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x2_t test_vld2_dup_s16(int16_t const * a) {
3218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_s16(a);
3219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_s32
3222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x2_t test_vld2_dup_s32(int32_t const * a) {
3224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_s32(a);
3225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_s64
3228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1x2_t test_vld2_dup_s64(int64_t const * a) {
3230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_s64(a);
3231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_f16
3234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4x2_t test_vld2_dup_f16(float16_t const * a) {
3236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_f16(a);
3237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_f32
3240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x2_t test_vld2_dup_f32(float32_t const * a) {
3242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_f32(a);
3243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_p8
3246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x2_t test_vld2_dup_p8(poly8_t const * a) {
3248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_p8(a);
3249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_dup_p16
3252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x2_t test_vld2_dup_p16(poly16_t const * a) {
3254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_dup_p16(a);
3255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_lane_u16
3259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8x2_t test_vld2q_lane_u16(uint16_t const * a, uint16x8x2_t b) {
3261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_lane_u16(a, b, 7);
3262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_lane_u32
3265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4x2_t test_vld2q_lane_u32(uint32_t const * a, uint32x4x2_t b) {
3267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_lane_u32(a, b, 3);
3268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_lane_s16
3271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8x2_t test_vld2q_lane_s16(int16_t const * a, int16x8x2_t b) {
3273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_lane_s16(a, b, 7);
3274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_lane_s32
3277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4x2_t test_vld2q_lane_s32(int32_t const * a, int32x4x2_t b) {
3279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_lane_s32(a, b, 3);
3280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_lane_f16
3283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8x2_t test_vld2q_lane_f16(float16_t const * a, float16x8x2_t b) {
3285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_lane_f16(a, b, 7);
3286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_lane_f32
3289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4x2_t test_vld2q_lane_f32(float32_t const * a, float32x4x2_t b) {
3291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_lane_f32(a, b, 3);
3292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2q_lane_p16
3295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8x2_t test_vld2q_lane_p16(poly16_t const * a, poly16x8x2_t b) {
3297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2q_lane_p16(a, b, 7);
3298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_u8
3301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x2_t test_vld2_lane_u8(uint8_t const * a, uint8x8x2_t b) {
3303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_u8(a, b, 7);
3304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_u16
3307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x2_t test_vld2_lane_u16(uint16_t const * a, uint16x4x2_t b) {
3309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_u16(a, b, 3);
3310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_u32
3313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x2_t test_vld2_lane_u32(uint32_t const * a, uint32x2x2_t b) {
3315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_u32(a, b, 1);
3316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_s8
3319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x2_t test_vld2_lane_s8(int8_t const * a, int8x8x2_t b) {
3321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_s8(a, b, 7);
3322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_s16
3325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x2_t test_vld2_lane_s16(int16_t const * a, int16x4x2_t b) {
3327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_s16(a, b, 3);
3328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_s32
3331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x2_t test_vld2_lane_s32(int32_t const * a, int32x2x2_t b) {
3333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_s32(a, b, 1);
3334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_f16
3337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4x2_t test_vld2_lane_f16(float16_t const * a, float16x4x2_t b) {
3339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_f16(a, b, 3);
3340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_f32
3343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x2_t test_vld2_lane_f32(float32_t const * a, float32x2x2_t b) {
3345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_f32(a, b, 1);
3346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_p8
3349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x2_t test_vld2_lane_p8(poly8_t const * a, poly8x8x2_t b) {
3351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_p8(a, b, 7);
3352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld2_lane_p16
3355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x2_t test_vld2_lane_p16(poly16_t const * a, poly16x4x2_t b) {
3357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld2_lane_p16(a, b, 3);
3358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_u8
3362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16x3_t test_vld3q_u8(uint8_t const * a) {
3364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_u8(a);
3365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_u16
3368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8x3_t test_vld3q_u16(uint16_t const * a) {
3370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_u16(a);
3371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_u32
3374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4x3_t test_vld3q_u32(uint32_t const * a) {
3376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_u32(a);
3377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_s8
3380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16x3_t test_vld3q_s8(int8_t const * a) {
3382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_s8(a);
3383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_s16
3386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8x3_t test_vld3q_s16(int16_t const * a) {
3388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_s16(a);
3389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_s32
3392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4x3_t test_vld3q_s32(int32_t const * a) {
3394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_s32(a);
3395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_f16
3398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8x3_t test_vld3q_f16(float16_t const * a) {
3400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_f16(a);
3401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_f32
3404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4x3_t test_vld3q_f32(float32_t const * a) {
3406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_f32(a);
3407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_p8
3410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16x3_t test_vld3q_p8(poly8_t const * a) {
3412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_p8(a);
3413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_p16
3416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8x3_t test_vld3q_p16(poly16_t const * a) {
3418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_p16(a);
3419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_u8
3422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x3_t test_vld3_u8(uint8_t const * a) {
3424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_u8(a);
3425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_u16
3428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x3_t test_vld3_u16(uint16_t const * a) {
3430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_u16(a);
3431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_u32
3434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x3_t test_vld3_u32(uint32_t const * a) {
3436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_u32(a);
3437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_u64
3440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1x3_t test_vld3_u64(uint64_t const * a) {
3442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_u64(a);
3443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_s8
3446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x3_t test_vld3_s8(int8_t const * a) {
3448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_s8(a);
3449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_s16
3452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x3_t test_vld3_s16(int16_t const * a) {
3454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_s16(a);
3455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_s32
3458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x3_t test_vld3_s32(int32_t const * a) {
3460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_s32(a);
3461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_s64
3464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1x3_t test_vld3_s64(int64_t const * a) {
3466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_s64(a);
3467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_f16
3470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4x3_t test_vld3_f16(float16_t const * a) {
3472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_f16(a);
3473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_f32
3476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x3_t test_vld3_f32(float32_t const * a) {
3478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_f32(a);
3479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_p8
3482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x3_t test_vld3_p8(poly8_t const * a) {
3484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_p8(a);
3485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_p16
3488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x3_t test_vld3_p16(poly16_t const * a) {
3490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_p16(a);
3491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_u8
3495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x3_t test_vld3_dup_u8(uint8_t const * a) {
3497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_u8(a);
3498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_u16
3501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x3_t test_vld3_dup_u16(uint16_t const * a) {
3503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_u16(a);
3504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_u32
3507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x3_t test_vld3_dup_u32(uint32_t const * a) {
3509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_u32(a);
3510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_u64
3513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1x3_t test_vld3_dup_u64(uint64_t const * a) {
3515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_u64(a);
3516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_s8
3519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x3_t test_vld3_dup_s8(int8_t const * a) {
3521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_s8(a);
3522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_s16
3525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x3_t test_vld3_dup_s16(int16_t const * a) {
3527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_s16(a);
3528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_s32
3531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x3_t test_vld3_dup_s32(int32_t const * a) {
3533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_s32(a);
3534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_s64
3537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1x3_t test_vld3_dup_s64(int64_t const * a) {
3539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_s64(a);
3540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_f16
3543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4x3_t test_vld3_dup_f16(float16_t const * a) {
3545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_f16(a);
3546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_f32
3549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x3_t test_vld3_dup_f32(float32_t const * a) {
3551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_f32(a);
3552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_p8
3555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x3_t test_vld3_dup_p8(poly8_t const * a) {
3557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_p8(a);
3558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_dup_p16
3561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x3_t test_vld3_dup_p16(poly16_t const * a) {
3563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_dup_p16(a);
3564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_lane_u16
3568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8x3_t test_vld3q_lane_u16(uint16_t const * a, uint16x8x3_t b) {
3570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_lane_u16(a, b, 7);
3571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_lane_u32
3574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4x3_t test_vld3q_lane_u32(uint32_t const * a, uint32x4x3_t b) {
3576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_lane_u32(a, b, 3);
3577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_lane_s16
3580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8x3_t test_vld3q_lane_s16(int16_t const * a, int16x8x3_t b) {
3582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_lane_s16(a, b, 7);
3583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_lane_s32
3586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4x3_t test_vld3q_lane_s32(int32_t const * a, int32x4x3_t b) {
3588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_lane_s32(a, b, 3);
3589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_lane_f16
3592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8x3_t test_vld3q_lane_f16(float16_t const * a, float16x8x3_t b) {
3594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_lane_f16(a, b, 7);
3595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_lane_f32
3598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4x3_t test_vld3q_lane_f32(float32_t const * a, float32x4x3_t b) {
3600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_lane_f32(a, b, 3);
3601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3q_lane_p16
3604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8x3_t test_vld3q_lane_p16(poly16_t const * a, poly16x8x3_t b) {
3606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3q_lane_p16(a, b, 7);
3607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_u8
3610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x3_t test_vld3_lane_u8(uint8_t const * a, uint8x8x3_t b) {
3612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_u8(a, b, 7);
3613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_u16
3616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x3_t test_vld3_lane_u16(uint16_t const * a, uint16x4x3_t b) {
3618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_u16(a, b, 3);
3619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_u32
3622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x3_t test_vld3_lane_u32(uint32_t const * a, uint32x2x3_t b) {
3624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_u32(a, b, 1);
3625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_s8
3628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x3_t test_vld3_lane_s8(int8_t const * a, int8x8x3_t b) {
3630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_s8(a, b, 7);
3631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_s16
3634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x3_t test_vld3_lane_s16(int16_t const * a, int16x4x3_t b) {
3636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_s16(a, b, 3);
3637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_s32
3640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x3_t test_vld3_lane_s32(int32_t const * a, int32x2x3_t b) {
3642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_s32(a, b, 1);
3643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_f16
3646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4x3_t test_vld3_lane_f16(float16_t const * a, float16x4x3_t b) {
3648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_f16(a, b, 3);
3649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_f32
3652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x3_t test_vld3_lane_f32(float32_t const * a, float32x2x3_t b) {
3654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_f32(a, b, 1);
3655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_p8
3658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x3_t test_vld3_lane_p8(poly8_t const * a, poly8x8x3_t b) {
3660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_p8(a, b, 7);
3661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld3_lane_p16
3664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x3_t test_vld3_lane_p16(poly16_t const * a, poly16x4x3_t b) {
3666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld3_lane_p16(a, b, 3);
3667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_u8
3671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16x4_t test_vld4q_u8(uint8_t const * a) {
3673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_u8(a);
3674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_u16
3677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8x4_t test_vld4q_u16(uint16_t const * a) {
3679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_u16(a);
3680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_u32
3683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4x4_t test_vld4q_u32(uint32_t const * a) {
3685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_u32(a);
3686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_s8
3689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16x4_t test_vld4q_s8(int8_t const * a) {
3691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_s8(a);
3692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_s16
3695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8x4_t test_vld4q_s16(int16_t const * a) {
3697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_s16(a);
3698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_s32
3701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4x4_t test_vld4q_s32(int32_t const * a) {
3703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_s32(a);
3704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_f16
3707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8x4_t test_vld4q_f16(float16_t const * a) {
3709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_f16(a);
3710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_f32
3713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4x4_t test_vld4q_f32(float32_t const * a) {
3715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_f32(a);
3716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_p8
3719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16x4_t test_vld4q_p8(poly8_t const * a) {
3721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_p8(a);
3722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_p16
3725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
3726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8x4_t test_vld4q_p16(poly16_t const * a) {
3727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_p16(a);
3728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_u8
3731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x4_t test_vld4_u8(uint8_t const * a) {
3733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_u8(a);
3734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_u16
3737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x4_t test_vld4_u16(uint16_t const * a) {
3739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_u16(a);
3740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_u32
3743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x4_t test_vld4_u32(uint32_t const * a) {
3745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_u32(a);
3746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_u64
3749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1x4_t test_vld4_u64(uint64_t const * a) {
3751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_u64(a);
3752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_s8
3755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x4_t test_vld4_s8(int8_t const * a) {
3757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_s8(a);
3758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_s16
3761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x4_t test_vld4_s16(int16_t const * a) {
3763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_s16(a);
3764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_s32
3767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x4_t test_vld4_s32(int32_t const * a) {
3769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_s32(a);
3770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_s64
3773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1x4_t test_vld4_s64(int64_t const * a) {
3775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_s64(a);
3776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_f16
3779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4x4_t test_vld4_f16(float16_t const * a) {
3781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_f16(a);
3782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_f32
3785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x4_t test_vld4_f32(float32_t const * a) {
3787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_f32(a);
3788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_p8
3791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x4_t test_vld4_p8(poly8_t const * a) {
3793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_p8(a);
3794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_p16
3797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
3798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x4_t test_vld4_p16(poly16_t const * a) {
3799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_p16(a);
3800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_u8
3804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x4_t test_vld4_dup_u8(uint8_t const * a) {
3806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_u8(a);
3807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_u16
3810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x4_t test_vld4_dup_u16(uint16_t const * a) {
3812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_u16(a);
3813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_u32
3816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x4_t test_vld4_dup_u32(uint32_t const * a) {
3818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_u32(a);
3819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_u64
3822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1x4_t test_vld4_dup_u64(uint64_t const * a) {
3824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_u64(a);
3825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_s8
3828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x4_t test_vld4_dup_s8(int8_t const * a) {
3830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_s8(a);
3831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_s16
3834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x4_t test_vld4_dup_s16(int16_t const * a) {
3836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_s16(a);
3837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_s32
3840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x4_t test_vld4_dup_s32(int32_t const * a) {
3842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_s32(a);
3843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_s64
3846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld1.64
3847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1x4_t test_vld4_dup_s64(int64_t const * a) {
3848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_s64(a);
3849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_f16
3852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4x4_t test_vld4_dup_f16(float16_t const * a) {
3854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_f16(a);
3855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_f32
3858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x4_t test_vld4_dup_f32(float32_t const * a) {
3860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_f32(a);
3861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_p8
3864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x4_t test_vld4_dup_p8(poly8_t const * a) {
3866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_p8(a);
3867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_dup_p16
3870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[], d{{[0-9]+}}[]}, [r{{[0-9]+}}]
3871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x4_t test_vld4_dup_p16(poly16_t const * a) {
3872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_dup_p16(a);
3873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_lane_u16
3877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8x4_t test_vld4q_lane_u16(uint16_t const * a, uint16x8x4_t b) {
3879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_lane_u16(a, b, 7);
3880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_lane_u32
3883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4x4_t test_vld4q_lane_u32(uint32_t const * a, uint32x4x4_t b) {
3885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_lane_u32(a, b, 3);
3886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_lane_s16
3889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8x4_t test_vld4q_lane_s16(int16_t const * a, int16x8x4_t b) {
3891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_lane_s16(a, b, 7);
3892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_lane_s32
3895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4x4_t test_vld4q_lane_s32(int32_t const * a, int32x4x4_t b) {
3897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_lane_s32(a, b, 3);
3898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_lane_f16
3901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8x4_t test_vld4q_lane_f16(float16_t const * a, float16x8x4_t b) {
3903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_lane_f16(a, b, 7);
3904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_lane_f32
3907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4x4_t test_vld4q_lane_f32(float32_t const * a, float32x4x4_t b) {
3909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_lane_f32(a, b, 3);
3910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4q_lane_p16
3913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
3914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8x4_t test_vld4q_lane_p16(poly16_t const * a, poly16x8x4_t b) {
3915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4q_lane_p16(a, b, 7);
3916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_u8
3919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x4_t test_vld4_lane_u8(uint8_t const * a, uint8x8x4_t b) {
3921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_u8(a, b, 7);
3922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_u16
3925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x4_t test_vld4_lane_u16(uint16_t const * a, uint16x4x4_t b) {
3927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_u16(a, b, 3);
3928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_u32
3931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x4_t test_vld4_lane_u32(uint32_t const * a, uint32x2x4_t b) {
3933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_u32(a, b, 1);
3934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_s8
3937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x4_t test_vld4_lane_s8(int8_t const * a, int8x8x4_t b) {
3939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_s8(a, b, 7);
3940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_s16
3943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x4_t test_vld4_lane_s16(int16_t const * a, int16x4x4_t b) {
3945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_s16(a, b, 3);
3946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_s32
3949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x4_t test_vld4_lane_s32(int32_t const * a, int32x2x4_t b) {
3951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_s32(a, b, 1);
3952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_f16
3955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4x4_t test_vld4_lane_f16(float16_t const * a, float16x4x4_t b) {
3957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_f16(a, b, 3);
3958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_f32
3961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x4_t test_vld4_lane_f32(float32_t const * a, float32x2x4_t b) {
3963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_f32(a, b, 1);
3964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_p8
3967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x4_t test_vld4_lane_p8(poly8_t const * a, poly8x8x4_t b) {
3969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_p8(a, b, 7);
3970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vld4_lane_p16
3973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vld4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
3974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x4_t test_vld4_lane_p16(poly16_t const * a, poly16x4x4_t b) {
3975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vld4_lane_p16(a, b, 3);
3976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmax_s8
3980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
3981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vmax_s8(int8x8_t a, int8x8_t b) {
3982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmax_s8(a, b);
3983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmax_s16
3986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
3987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmax_s16(int16x4_t a, int16x4_t b) {
3988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmax_s16(a, b);
3989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmax_s32
3992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
3993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmax_s32(int32x2_t a, int32x2_t b) {
3994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmax_s32(a, b);
3995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
3996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
3997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmax_u8
3998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
3999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vmax_u8(uint8x8_t a, uint8x8_t b) {
4000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmax_u8(a, b);
4001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmax_u16
4004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmax_u16(uint16x4_t a, uint16x4_t b) {
4006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmax_u16(a, b);
4007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmax_u32
4010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmax_u32(uint32x2_t a, uint32x2_t b) {
4012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmax_u32(a, b);
4013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmax_f32
4016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmax_f32(float32x2_t a, float32x2_t b) {
4018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmax_f32(a, b);
4019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmaxq_s8
4022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vmaxq_s8(int8x16_t a, int8x16_t b) {
4024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmaxq_s8(a, b);
4025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmaxq_s16
4028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmaxq_s16(int16x8_t a, int16x8_t b) {
4030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmaxq_s16(a, b);
4031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmaxq_s32
4034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmaxq_s32(int32x4_t a, int32x4_t b) {
4036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmaxq_s32(a, b);
4037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmaxq_u8
4040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vmaxq_u8(uint8x16_t a, uint8x16_t b) {
4042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmaxq_u8(a, b);
4043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmaxq_u16
4046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmaxq_u16(uint16x8_t a, uint16x8_t b) {
4048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmaxq_u16(a, b);
4049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmaxq_u32
4052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmaxq_u32(uint32x4_t a, uint32x4_t b) {
4054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmaxq_u32(a, b);
4055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmaxq_f32
4058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmax.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmaxq_f32(float32x4_t a, float32x4_t b) {
4060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmaxq_f32(a, b);
4061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmin_s8
4065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vmin_s8(int8x8_t a, int8x8_t b) {
4067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmin_s8(a, b);
4068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmin_s16
4071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmin_s16(int16x4_t a, int16x4_t b) {
4073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmin_s16(a, b);
4074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmin_s32
4077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmin_s32(int32x2_t a, int32x2_t b) {
4079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmin_s32(a, b);
4080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmin_u8
4083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vmin_u8(uint8x8_t a, uint8x8_t b) {
4085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmin_u8(a, b);
4086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmin_u16
4089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmin_u16(uint16x4_t a, uint16x4_t b) {
4091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmin_u16(a, b);
4092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmin_u32
4095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmin_u32(uint32x2_t a, uint32x2_t b) {
4097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmin_u32(a, b);
4098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmin_f32
4101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmin_f32(float32x2_t a, float32x2_t b) {
4103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmin_f32(a, b);
4104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vminq_s8
4107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vminq_s8(int8x16_t a, int8x16_t b) {
4109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vminq_s8(a, b);
4110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vminq_s16
4113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vminq_s16(int16x8_t a, int16x8_t b) {
4115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vminq_s16(a, b);
4116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vminq_s32
4119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vminq_s32(int32x4_t a, int32x4_t b) {
4121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vminq_s32(a, b);
4122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vminq_u8
4125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vminq_u8(uint8x16_t a, uint8x16_t b) {
4127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vminq_u8(a, b);
4128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vminq_u16
4131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vminq_u16(uint16x8_t a, uint16x8_t b) {
4133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vminq_u16(a, b);
4134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vminq_u32
4137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vminq_u32(uint32x4_t a, uint32x4_t b) {
4139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vminq_u32(a, b);
4140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vminq_f32
4143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmin.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vminq_f32(float32x4_t a, float32x4_t b) {
4145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vminq_f32(a, b);
4146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_s8
4150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vmla_s8(int8x8_t a, int8x8_t b, int8x8_t c) {
4152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_s8(a, b, c);
4153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_s16
4156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmla_s16(int16x4_t a, int16x4_t b, int16x4_t c) {
4158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_s16(a, b, c);
4159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_s32
4162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmla_s32(int32x2_t a, int32x2_t b, int32x2_t c) {
4164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_s32(a, b, c);
4165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_f32
4168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.f32
4170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmla_f32(float32x2_t a, float32x2_t b, float32x2_t c) {
4171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_f32(a, b, c);
4172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_u8
4175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vmla_u8(uint8x8_t a, uint8x8_t b, uint8x8_t c) {
4177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_u8(a, b, c);
4178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_u16
4181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmla_u16(uint16x4_t a, uint16x4_t b, uint16x4_t c) {
4183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_u16(a, b, c);
4184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_u32
4187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmla_u32(uint32x2_t a, uint32x2_t b, uint32x2_t c) {
4189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_u32(a, b, c);
4190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_s8
4193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vmlaq_s8(int8x16_t a, int8x16_t b, int8x16_t c) {
4195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_s8(a, b, c);
4196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_s16
4199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmlaq_s16(int16x8_t a, int16x8_t b, int16x8_t c) {
4201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_s16(a, b, c);
4202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_s32
4205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlaq_s32(int32x4_t a, int32x4_t b, int32x4_t c) {
4207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_s32(a, b, c);
4208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_f32
4211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.f32
4213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmlaq_f32(float32x4_t a, float32x4_t b, float32x4_t c) {
4214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_f32(a, b, c);
4215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_u8
4218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vmlaq_u8(uint8x16_t a, uint8x16_t b, uint8x16_t c) {
4220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_u8(a, b, c);
4221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_u16
4224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmlaq_u16(uint16x8_t a, uint16x8_t b, uint16x8_t c) {
4226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_u16(a, b, c);
4227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_u32
4230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlaq_u32(uint32x4_t a, uint32x4_t b, uint32x4_t c) {
4232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_u32(a, b, c);
4233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_s8
4237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.s8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmlal_s8(int16x8_t a, int8x8_t b, int8x8_t c) {
4239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_s8(a, b, c);
4240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_s16
4243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlal_s16(int32x4_t a, int16x4_t b, int16x4_t c) {
4245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_s16(a, b, c);
4246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_s32
4249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmlal_s32(int64x2_t a, int32x2_t b, int32x2_t c) {
4251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_s32(a, b, c);
4252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_u8
4255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.u8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmlal_u8(uint16x8_t a, uint8x8_t b, uint8x8_t c) {
4257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_u8(a, b, c);
4258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_u16
4261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlal_u16(uint32x4_t a, uint16x4_t b, uint16x4_t c) {
4263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_u16(a, b, c);
4264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_u32
4267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmlal_u32(uint64x2_t a, uint32x2_t b, uint32x2_t c) {
4269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_u32(a, b, c);
4270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_lane_s16
4274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlal_lane_s16(int32x4_t a, int16x4_t b, int16x4_t c) {
4276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_lane_s16(a, b, c, 3);
4277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_lane_s32
4280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmlal_lane_s32(int64x2_t a, int32x2_t b, int32x2_t c) {
4282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_lane_s32(a, b, c, 1);
4283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_lane_u16
4286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlal_lane_u16(uint32x4_t a, uint16x4_t b, uint16x4_t c) {
4288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_lane_u16(a, b, c, 3);
4289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_lane_u32
4292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmlal_lane_u32(uint64x2_t a, uint32x2_t b, uint32x2_t c) {
4294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_lane_u32(a, b, c, 1);
4295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_n_s16
4299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlal_n_s16(int32x4_t a, int16x4_t b, int16_t c) {
4301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_n_s16(a, b, c);
4302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_n_s32
4305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmlal_n_s32(int64x2_t a, int32x2_t b, int32_t c) {
4307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_n_s32(a, b, c);
4308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_n_u16
4311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlal_n_u16(uint32x4_t a, uint16x4_t b, uint16_t c) {
4313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_n_u16(a, b, c);
4314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlal_n_u32
4317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlal.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmlal_n_u32(uint64x2_t a, uint32x2_t b, uint32_t c) {
4319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlal_n_u32(a, b, c);
4320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_lane_s16
4324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmla_lane_s16(int16x4_t a, int16x4_t b, int16x4_t c) {
4326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_lane_s16(a, b, c, 3);
4327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_lane_s32
4330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmla_lane_s32(int32x2_t a, int32x2_t b, int32x2_t c) {
4332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_lane_s32(a, b, c, 1);
4333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_lane_u16
4336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmla_lane_u16(uint16x4_t a, uint16x4_t b, uint16x4_t c) {
4338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_lane_u16(a, b, c, 3);
4339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_lane_u32
4342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmla_lane_u32(uint32x2_t a, uint32x2_t b, uint32x2_t c) {
4344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_lane_u32(a, b, c, 1);
4345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_lane_f32
4348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.f32
4350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmla_lane_f32(float32x2_t a, float32x2_t b, float32x2_t c) {
4351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_lane_f32(a, b, c, 1);
4352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_lane_s16
4355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmlaq_lane_s16(int16x8_t a, int16x8_t b, int16x4_t c) {
4357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_lane_s16(a, b, c, 3);
4358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_lane_s32
4361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlaq_lane_s32(int32x4_t a, int32x4_t b, int32x2_t c) {
4363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_lane_s32(a, b, c, 1);
4364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_lane_u16
4367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmlaq_lane_u16(uint16x8_t a, uint16x8_t b, uint16x4_t c) {
4369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_lane_u16(a, b, c, 3);
4370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_lane_u32
4373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlaq_lane_u32(uint32x4_t a, uint32x4_t b, uint32x2_t c) {
4375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_lane_u32(a, b, c, 1);
4376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_lane_f32
4379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.f32
4381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmlaq_lane_f32(float32x4_t a, float32x4_t b, float32x2_t c) {
4382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_lane_f32(a, b, c, 1);
4383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_n_s16
4387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmla_n_s16(int16x4_t a, int16x4_t b, int16_t c) {
4389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_n_s16(a, b, c);
4390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_n_s32
4393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmla_n_s32(int32x2_t a, int32x2_t b, int32_t c) {
4395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_n_s32(a, b, c);
4396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_n_u16
4399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmla_n_u16(uint16x4_t a, uint16x4_t b, uint16_t c) {
4401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_n_u16(a, b, c);
4402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_n_u32
4405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmla_n_u32(uint32x2_t a, uint32x2_t b, uint32_t c) {
4407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_n_u32(a, b, c);
4408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmla_n_f32
4411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.f32
4413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmla_n_f32(float32x2_t a, float32x2_t b, float32_t c) {
4414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmla_n_f32(a, b, c);
4415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_n_s16
4418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmlaq_n_s16(int16x8_t a, int16x8_t b, int16_t c) {
4420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_n_s16(a, b, c);
4421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_n_s32
4424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlaq_n_s32(int32x4_t a, int32x4_t b, int32_t c) {
4426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_n_s32(a, b, c);
4427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_n_u16
4430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmlaq_n_u16(uint16x8_t a, uint16x8_t b, uint16_t c) {
4432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_n_u16(a, b, c);
4433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_n_u32
4436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmla.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlaq_n_u32(uint32x4_t a, uint32x4_t b, uint32_t c) {
4438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_n_u32(a, b, c);
4439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlaq_n_f32
4442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vadd.f32
4444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmlaq_n_f32(float32x4_t a, float32x4_t b, float32_t c) {
4445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlaq_n_f32(a, b, c);
4446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_s8
4450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vmls_s8(int8x8_t a, int8x8_t b, int8x8_t c) {
4452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_s8(a, b, c);
4453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_s16
4456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmls_s16(int16x4_t a, int16x4_t b, int16x4_t c) {
4458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_s16(a, b, c);
4459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_s32
4462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmls_s32(int32x2_t a, int32x2_t b, int32x2_t c) {
4464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_s32(a, b, c);
4465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_f32
4468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.f32
4470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmls_f32(float32x2_t a, float32x2_t b, float32x2_t c) {
4471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_f32(a, b, c);
4472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_u8
4475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vmls_u8(uint8x8_t a, uint8x8_t b, uint8x8_t c) {
4477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_u8(a, b, c);
4478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_u16
4481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmls_u16(uint16x4_t a, uint16x4_t b, uint16x4_t c) {
4483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_u16(a, b, c);
4484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_u32
4487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmls_u32(uint32x2_t a, uint32x2_t b, uint32x2_t c) {
4489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_u32(a, b, c);
4490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_s8
4493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vmlsq_s8(int8x16_t a, int8x16_t b, int8x16_t c) {
4495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_s8(a, b, c);
4496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_s16
4499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmlsq_s16(int16x8_t a, int16x8_t b, int16x8_t c) {
4501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_s16(a, b, c);
4502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_s32
4505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlsq_s32(int32x4_t a, int32x4_t b, int32x4_t c) {
4507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_s32(a, b, c);
4508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_f32
4511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.f32
4513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmlsq_f32(float32x4_t a, float32x4_t b, float32x4_t c) {
4514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_f32(a, b, c);
4515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_u8
4518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vmlsq_u8(uint8x16_t a, uint8x16_t b, uint8x16_t c) {
4520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_u8(a, b, c);
4521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_u16
4524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmlsq_u16(uint16x8_t a, uint16x8_t b, uint16x8_t c) {
4526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_u16(a, b, c);
4527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_u32
4530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlsq_u32(uint32x4_t a, uint32x4_t b, uint32x4_t c) {
4532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_u32(a, b, c);
4533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_s8
4537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.s8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmlsl_s8(int16x8_t a, int8x8_t b, int8x8_t c) {
4539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_s8(a, b, c);
4540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_s16
4543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlsl_s16(int32x4_t a, int16x4_t b, int16x4_t c) {
4545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_s16(a, b, c);
4546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_s32
4549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmlsl_s32(int64x2_t a, int32x2_t b, int32x2_t c) {
4551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_s32(a, b, c);
4552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_u8
4555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.u8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmlsl_u8(uint16x8_t a, uint8x8_t b, uint8x8_t c) {
4557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_u8(a, b, c);
4558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_u16
4561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlsl_u16(uint32x4_t a, uint16x4_t b, uint16x4_t c) {
4563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_u16(a, b, c);
4564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_u32
4567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmlsl_u32(uint64x2_t a, uint32x2_t b, uint32x2_t c) {
4569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_u32(a, b, c);
4570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_lane_s16
4574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlsl_lane_s16(int32x4_t a, int16x4_t b, int16x4_t c) {
4576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_lane_s16(a, b, c, 3);
4577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_lane_s32
4580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmlsl_lane_s32(int64x2_t a, int32x2_t b, int32x2_t c) {
4582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_lane_s32(a, b, c, 1);
4583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_lane_u16
4586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlsl_lane_u16(uint32x4_t a, uint16x4_t b, uint16x4_t c) {
4588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_lane_u16(a, b, c, 3);
4589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_lane_u32
4592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmlsl_lane_u32(uint64x2_t a, uint32x2_t b, uint32x2_t c) {
4594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_lane_u32(a, b, c, 1);
4595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_n_s16
4599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlsl_n_s16(int32x4_t a, int16x4_t b, int16_t c) {
4601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_n_s16(a, b, c);
4602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_n_s32
4605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmlsl_n_s32(int64x2_t a, int32x2_t b, int32_t c) {
4607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_n_s32(a, b, c);
4608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_n_u16
4611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlsl_n_u16(uint32x4_t a, uint16x4_t b, uint16_t c) {
4613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_n_u16(a, b, c);
4614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsl_n_u32
4617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmlsl.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmlsl_n_u32(uint64x2_t a, uint32x2_t b, uint32_t c) {
4619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsl_n_u32(a, b, c);
4620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_lane_s16
4624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmls_lane_s16(int16x4_t a, int16x4_t b, int16x4_t c) {
4626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_lane_s16(a, b, c, 3);
4627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_lane_s32
4630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmls_lane_s32(int32x2_t a, int32x2_t b, int32x2_t c) {
4632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_lane_s32(a, b, c, 1);
4633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_lane_u16
4636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmls_lane_u16(uint16x4_t a, uint16x4_t b, uint16x4_t c) {
4638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_lane_u16(a, b, c, 3);
4639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_lane_u32
4642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmls_lane_u32(uint32x2_t a, uint32x2_t b, uint32x2_t c) {
4644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_lane_u32(a, b, c, 1);
4645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_lane_f32
4648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.f32
4650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmls_lane_f32(float32x2_t a, float32x2_t b, float32x2_t c) {
4651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_lane_f32(a, b, c, 1);
4652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_lane_s16
4655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmlsq_lane_s16(int16x8_t a, int16x8_t b, int16x4_t c) {
4657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_lane_s16(a, b, c, 3);
4658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_lane_s32
4661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlsq_lane_s32(int32x4_t a, int32x4_t b, int32x2_t c) {
4663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_lane_s32(a, b, c, 1);
4664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_lane_u16
4667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmlsq_lane_u16(uint16x8_t a, uint16x8_t b, uint16x4_t c) {
4669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_lane_u16(a, b, c, 3);
4670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_lane_u32
4673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlsq_lane_u32(uint32x4_t a, uint32x4_t b, uint32x2_t c) {
4675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_lane_u32(a, b, c, 1);
4676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_lane_f32
4679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
4680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.f32
4681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmlsq_lane_f32(float32x4_t a, float32x4_t b, float32x2_t c) {
4682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_lane_f32(a, b, c, 1);
4683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_n_s16
4687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmls_n_s16(int16x4_t a, int16x4_t b, int16_t c) {
4689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_n_s16(a, b, c);
4690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_n_s32
4693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmls_n_s32(int32x2_t a, int32x2_t b, int32_t c) {
4695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_n_s32(a, b, c);
4696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_n_u16
4699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmls_n_u16(uint16x4_t a, uint16x4_t b, uint16_t c) {
4701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_n_u16(a, b, c);
4702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_n_u32
4705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmls_n_u32(uint32x2_t a, uint32x2_t b, uint32_t c) {
4707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_n_u32(a, b, c);
4708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmls_n_f32
4711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.f32
4713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmls_n_f32(float32x2_t a, float32x2_t b, float32_t c) {
4714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmls_n_f32(a, b, c);
4715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_n_s16
4718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmlsq_n_s16(int16x8_t a, int16x8_t b, int16_t c) {
4720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_n_s16(a, b, c);
4721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_n_s32
4724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmlsq_n_s32(int32x4_t a, int32x4_t b, int32_t c) {
4726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_n_s32(a, b, c);
4727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_n_u16
4730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmlsq_n_u16(uint16x8_t a, uint16x8_t b, uint16_t c) {
4732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_n_u16(a, b, c);
4733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_n_u32
4736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmls.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmlsq_n_u32(uint32x4_t a, uint32x4_t b, uint32_t c) {
4738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_n_u32(a, b, c);
4739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmlsq_n_f32
4742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
4743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.f32
4744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmlsq_n_f32(float32x4_t a, float32x4_t b, float32_t c) {
4745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmlsq_n_f32(a, b, c);
4746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovl_s8
4750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovl.s8 q{{[0-9]+}}, d{{[0-9]+}}
4751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmovl_s8(int8x8_t a) {
4752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovl_s8(a);
4753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovl_s16
4756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovl.s16 q{{[0-9]+}}, d{{[0-9]+}}
4757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmovl_s16(int16x4_t a) {
4758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovl_s16(a);
4759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovl_s32
4762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovl.s32 q{{[0-9]+}}, d{{[0-9]+}}
4763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmovl_s32(int32x2_t a) {
4764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovl_s32(a);
4765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovl_u8
4768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovl.u8 q{{[0-9]+}}, d{{[0-9]+}}
4769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmovl_u8(uint8x8_t a) {
4770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovl_u8(a);
4771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovl_u16
4774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovl.u16 q{{[0-9]+}}, d{{[0-9]+}}
4775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmovl_u16(uint16x4_t a) {
4776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovl_u16(a);
4777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovl_u32
4780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovl.u32 q{{[0-9]+}}, d{{[0-9]+}}
4781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmovl_u32(uint32x2_t a) {
4782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovl_u32(a);
4783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovn_s16
4787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovn.i16 d{{[0-9]+}}, q{{[0-9]+}}
4788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vmovn_s16(int16x8_t a) {
4789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovn_s16(a);
4790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovn_s32
4793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovn.i32 d{{[0-9]+}}, q{{[0-9]+}}
4794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmovn_s32(int32x4_t a) {
4795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovn_s32(a);
4796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovn_s64
4799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovn.i64 d{{[0-9]+}}, q{{[0-9]+}}
4800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmovn_s64(int64x2_t a) {
4801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovn_s64(a);
4802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovn_u16
4805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovn.i16 d{{[0-9]+}}, q{{[0-9]+}}
4806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vmovn_u16(uint16x8_t a) {
4807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovn_u16(a);
4808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovn_u32
4811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovn.i32 d{{[0-9]+}}, q{{[0-9]+}}
4812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmovn_u32(uint32x4_t a) {
4813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovn_u32(a);
4814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovn_u64
4817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmovn.i64 d{{[0-9]+}}, q{{[0-9]+}}
4818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmovn_u64(uint64x2_t a) {
4819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovn_u64(a);
4820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_u8
4824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vmov_n_u8(uint8_t a) {
4826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_u8(a);
4827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_u16
4830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmov_n_u16(uint16_t a) {
4832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_u16(a);
4833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_u32
4836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmov_n_u32(uint32_t a) {
4838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_u32(a);
4839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_s8
4842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vmov_n_s8(int8_t a) {
4844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_s8(a);
4845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_s16
4848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmov_n_s16(int16_t a) {
4850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_s16(a);
4851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_s32
4854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmov_n_s32(int32_t a) {
4856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_s32(a);
4857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_p8
4860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vmov_n_p8(poly8_t a) {
4862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_p8(a);
4863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_p16
4866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vmov_n_p16(poly16_t a) {
4868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_p16(a);
4869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_f32
4872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmov_n_f32(float32_t a) {
4874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_f32(a);
4875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_u8
4878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vmovq_n_u8(uint8_t a) {
4880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_u8(a);
4881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_u16
4884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmovq_n_u16(uint16_t a) {
4886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_u16(a);
4887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_u32
4890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmovq_n_u32(uint32_t a) {
4892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_u32(a);
4893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_s8
4896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vmovq_n_s8(int8_t a) {
4898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_s8(a);
4899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_s16
4902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmovq_n_s16(int16_t a) {
4904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_s16(a);
4905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_s32
4908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmovq_n_s32(int32_t a) {
4910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_s32(a);
4911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_p8
4914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vmovq_n_p8(poly8_t a) {
4916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_p8(a);
4917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_p16
4920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vmovq_n_p16(poly16_t a) {
4922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_p16(a);
4923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_f32
4926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmovq_n_f32(float32_t a) {
4928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_f32(a);
4929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_s64
4932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vmov_n_s64(int64_t a) {
4934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_s64(a);
4935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmov_n_u64
4938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vmov_n_u64(uint64_t a) {
4940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmov_n_u64(a);
4941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_s64
4944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmovq_n_s64(int64_t a) {
4946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_s64(a);
4947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmovq_n_u64
4950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
4951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmovq_n_u64(uint64_t a) {
4952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmovq_n_u64(a);
4953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_s8
4957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vmul_s8(int8x8_t a, int8x8_t b) {
4959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_s8(a, b);
4960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_s16
4963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmul_s16(int16x4_t a, int16x4_t b) {
4965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_s16(a, b);
4966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_s32
4969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmul_s32(int32x2_t a, int32x2_t b) {
4971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_s32(a, b);
4972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_f32
4975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmul_f32(float32x2_t a, float32x2_t b) {
4977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_f32(a, b);
4978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_u8
4981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vmul_u8(uint8x8_t a, uint8x8_t b) {
4983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_u8(a, b);
4984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_u16
4987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmul_u16(uint16x4_t a, uint16x4_t b) {
4989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_u16(a, b);
4990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_u32
4993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
4994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmul_u32(uint32x2_t a, uint32x2_t b) {
4995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_u32(a, b);
4996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
4997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
4998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_s8
4999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vmulq_s8(int8x16_t a, int8x16_t b) {
5001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_s8(a, b);
5002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_s16
5005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmulq_s16(int16x8_t a, int16x8_t b) {
5007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_s16(a, b);
5008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_s32
5011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmulq_s32(int32x4_t a, int32x4_t b) {
5013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_s32(a, b);
5014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_f32
5017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmulq_f32(float32x4_t a, float32x4_t b) {
5019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_f32(a, b);
5020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_u8
5023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vmulq_u8(uint8x16_t a, uint8x16_t b) {
5025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_u8(a, b);
5026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_u16
5029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmulq_u16(uint16x8_t a, uint16x8_t b) {
5031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_u16(a, b);
5032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_u32
5035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmulq_u32(uint32x4_t a, uint32x4_t b) {
5037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_u32(a, b);
5038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_s8
5042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.s8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmull_s8(int8x8_t a, int8x8_t b) {
5044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_s8(a, b);
5045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_s16
5048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmull_s16(int16x4_t a, int16x4_t b) {
5050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_s16(a, b);
5051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_s32
5054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmull_s32(int32x2_t a, int32x2_t b) {
5056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_s32(a, b);
5057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_u8
5060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.u8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmull_u8(uint8x8_t a, uint8x8_t b) {
5062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_u8(a, b);
5063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_u16
5066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmull_u16(uint16x4_t a, uint16x4_t b) {
5068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_u16(a, b);
5069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_u32
5072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmull_u32(uint32x2_t a, uint32x2_t b) {
5074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_u32(a, b);
5075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_p8
5078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.p8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vmull_p8(poly8x8_t a, poly8x8_t b) {
5080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_p8(a, b);
5081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_lane_s16
5085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmull_lane_s16(int16x4_t a, int16x4_t b) {
5087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_lane_s16(a, b, 3);
5088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_lane_s32
5091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmull_lane_s32(int32x2_t a, int32x2_t b) {
5093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_lane_s32(a, b, 1);
5094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_lane_u16
5097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmull_lane_u16(uint16x4_t a, uint16x4_t b) {
5099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_lane_u16(a, b, 3);
5100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_lane_u32
5103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmull_lane_u32(uint32x2_t a, uint32x2_t b) {
5105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_lane_u32(a, b, 1);
5106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_n_s16
5110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmull_n_s16(int16x4_t a, int16_t b) {
5112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_n_s16(a, b);
5113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_n_s32
5116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vmull_n_s32(int32x2_t a, int32_t b) {
5118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_n_s32(a, b);
5119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_n_u16
5122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmull_n_u16(uint16x4_t a, uint16_t b) {
5124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_n_u16(a, b);
5125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmull_n_u32
5128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmull.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vmull_n_u32(uint32x2_t a, uint32_t b) {
5130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmull_n_u32(a, b);
5131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_p8
5135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.p8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vmul_p8(poly8x8_t a, poly8x8_t b) {
5137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_p8(a, b);
5138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_p8
5141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.p8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vmulq_p8(poly8x16_t a, poly8x16_t b) {
5143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_p8(a, b);
5144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_lane_s16
5148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmul_lane_s16(int16x4_t a, int16x4_t b) {
5150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_lane_s16(a, b, 3);
5151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_lane_s32
5154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmul_lane_s32(int32x2_t a, int32x2_t b) {
5156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_lane_s32(a, b, 1);
5157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_lane_f32
5160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmul_lane_f32(float32x2_t a, float32x2_t b) {
5162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_lane_f32(a, b, 1);
5163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_lane_u16
5166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmul_lane_u16(uint16x4_t a, uint16x4_t b) {
5168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_lane_u16(a, b, 3);
5169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_lane_u32
5172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmul_lane_u32(uint32x2_t a, uint32x2_t b) {
5174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_lane_u32(a, b, 1);
5175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_lane_s16
5178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmulq_lane_s16(int16x8_t a, int16x4_t b) {
5180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_lane_s16(a, b, 3);
5181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_lane_s32
5184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmulq_lane_s32(int32x4_t a, int32x2_t b) {
5186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_lane_s32(a, b, 1);
5187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_lane_f32
5190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmulq_lane_f32(float32x4_t a, float32x2_t b) {
5192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_lane_f32(a, b, 1);
5193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_lane_u16
5196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmulq_lane_u16(uint16x8_t a, uint16x4_t b) {
5198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_lane_u16(a, b, 3);
5199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_lane_u32
5202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
5203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmulq_lane_u32(uint32x4_t a, uint32x2_t b) {
5204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_lane_u32(a, b, 1);
5205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_n_s16
5209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmul_n_s16(int16x4_t a, int16_t b) {
5211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_n_s16(a, b);
5212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_n_s32
5215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmul_n_s32(int32x2_t a, int32_t b) {
5217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_n_s32(a, b);
5218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_n_f32
5221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vmul_n_f32(float32x2_t a, float32_t b) {
5223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_n_f32(a, b);
5224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_n_u16
5227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmul_n_u16(uint16x4_t a, uint16_t b) {
5229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_n_u16(a, b);
5230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmul_n_u32
5233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmul_n_u32(uint32x2_t a, uint32_t b) {
5235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmul_n_u32(a, b);
5236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_n_s16
5239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmulq_n_s16(int16x8_t a, int16_t b) {
5241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_n_s16(a, b);
5242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_n_s32
5245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmulq_n_s32(int32x4_t a, int32_t b) {
5247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_n_s32(a, b);
5248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_n_f32
5251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vmulq_n_f32(float32x4_t a, float32_t b) {
5253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_n_f32(a, b);
5254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_n_u16
5257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmulq_n_u16(uint16x8_t a, uint16_t b) {
5259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_n_u16(a, b);
5260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmulq_n_u32
5263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmul.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmulq_n_u32(uint32x4_t a, uint32_t b) {
5265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmulq_n_u32(a, b);
5266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvn_s8
5270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn d{{[0-9]+}}, d{{[0-9]+}}
5271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vmvn_s8(int8x8_t a) {
5272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvn_s8(a);
5273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvn_s16
5276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn d{{[0-9]+}}, d{{[0-9]+}}
5277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vmvn_s16(int16x4_t a) {
5278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvn_s16(a);
5279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvn_s32
5282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn d{{[0-9]+}}, d{{[0-9]+}}
5283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vmvn_s32(int32x2_t a) {
5284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvn_s32(a);
5285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvn_u8
5288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn d{{[0-9]+}}, d{{[0-9]+}}
5289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vmvn_u8(uint8x8_t a) {
5290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvn_u8(a);
5291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvn_u16
5294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn d{{[0-9]+}}, d{{[0-9]+}}
5295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vmvn_u16(uint16x4_t a) {
5296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvn_u16(a);
5297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvn_u32
5300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn d{{[0-9]+}}, d{{[0-9]+}}
5301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vmvn_u32(uint32x2_t a) {
5302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvn_u32(a);
5303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvn_p8
5306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn d{{[0-9]+}}, d{{[0-9]+}}
5307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vmvn_p8(poly8x8_t a) {
5308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvn_p8(a);
5309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvnq_s8
5312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn q{{[0-9]+}}, q{{[0-9]+}}
5313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vmvnq_s8(int8x16_t a) {
5314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvnq_s8(a);
5315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvnq_s16
5318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn q{{[0-9]+}}, q{{[0-9]+}}
5319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vmvnq_s16(int16x8_t a) {
5320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvnq_s16(a);
5321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvnq_s32
5324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn q{{[0-9]+}}, q{{[0-9]+}}
5325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vmvnq_s32(int32x4_t a) {
5326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvnq_s32(a);
5327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvnq_u8
5330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn q{{[0-9]+}}, q{{[0-9]+}}
5331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vmvnq_u8(uint8x16_t a) {
5332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvnq_u8(a);
5333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvnq_u16
5336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn q{{[0-9]+}}, q{{[0-9]+}}
5337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vmvnq_u16(uint16x8_t a) {
5338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvnq_u16(a);
5339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvnq_u32
5342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn q{{[0-9]+}}, q{{[0-9]+}}
5343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vmvnq_u32(uint32x4_t a) {
5344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvnq_u32(a);
5345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vmvnq_p8
5348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmvn q{{[0-9]+}}, q{{[0-9]+}}
5349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vmvnq_p8(poly8x16_t a) {
5350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vmvnq_p8(a);
5351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vneg_s8
5355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vneg.s8 d{{[0-9]+}}, d{{[0-9]+}}
5356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vneg_s8(int8x8_t a) {
5357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vneg_s8(a);
5358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vneg_s16
5361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vneg.s16 d{{[0-9]+}}, d{{[0-9]+}}
5362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vneg_s16(int16x4_t a) {
5363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vneg_s16(a);
5364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vneg_s32
5367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vneg.s32 d{{[0-9]+}}, d{{[0-9]+}}
5368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vneg_s32(int32x2_t a) {
5369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vneg_s32(a);
5370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vneg_f32
5373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vneg.f32 d{{[0-9]+}}, d{{[0-9]+}}
5374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vneg_f32(float32x2_t a) {
5375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vneg_f32(a);
5376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vnegq_s8
5379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vneg.s8 q{{[0-9]+}}, q{{[0-9]+}}
5380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vnegq_s8(int8x16_t a) {
5381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vnegq_s8(a);
5382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vnegq_s16
5385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vneg.s16 q{{[0-9]+}}, q{{[0-9]+}}
5386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vnegq_s16(int16x8_t a) {
5387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vnegq_s16(a);
5388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vnegq_s32
5391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vneg.s32 q{{[0-9]+}}, q{{[0-9]+}}
5392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vnegq_s32(int32x4_t a) {
5393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vnegq_s32(a);
5394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vnegq_f32
5397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vneg.f32 q{{[0-9]+}}, q{{[0-9]+}}
5398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vnegq_f32(float32x4_t a) {
5399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vnegq_f32(a);
5400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorn_s8
5404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vorn_s8(int8x8_t a, int8x8_t b) {
5406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorn_s8(a, b);
5407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorn_s16
5410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vorn_s16(int16x4_t a, int16x4_t b) {
5412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorn_s16(a, b);
5413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorn_s32
5416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vorn_s32(int32x2_t a, int32x2_t b) {
5418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorn_s32(a, b);
5419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorn_s64
5422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vorn_s64(int64x1_t a, int64x1_t b) {
5424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorn_s64(a, b);
5425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorn_u8
5428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vorn_u8(uint8x8_t a, uint8x8_t b) {
5430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorn_u8(a, b);
5431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorn_u16
5434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vorn_u16(uint16x4_t a, uint16x4_t b) {
5436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorn_u16(a, b);
5437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorn_u32
5440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vorn_u32(uint32x2_t a, uint32x2_t b) {
5442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorn_u32(a, b);
5443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorn_u64
5446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vorn_u64(uint64x1_t a, uint64x1_t b) {
5448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorn_u64(a, b);
5449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vornq_s8
5452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vornq_s8(int8x16_t a, int8x16_t b) {
5454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vornq_s8(a, b);
5455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vornq_s16
5458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vornq_s16(int16x8_t a, int16x8_t b) {
5460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vornq_s16(a, b);
5461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vornq_s32
5464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vornq_s32(int32x4_t a, int32x4_t b) {
5466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vornq_s32(a, b);
5467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vornq_s64
5470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vornq_s64(int64x2_t a, int64x2_t b) {
5472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vornq_s64(a, b);
5473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vornq_u8
5476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vornq_u8(uint8x16_t a, uint8x16_t b) {
5478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vornq_u8(a, b);
5479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vornq_u16
5482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vornq_u16(uint16x8_t a, uint16x8_t b) {
5484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vornq_u16(a, b);
5485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vornq_u32
5488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vornq_u32(uint32x4_t a, uint32x4_t b) {
5490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vornq_u32(a, b);
5491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vornq_u64
5494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorn q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vornq_u64(uint64x2_t a, uint64x2_t b) {
5496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vornq_u64(a, b);
5497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorr_s8
5501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vorr_s8(int8x8_t a, int8x8_t b) {
5503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorr_s8(a, b);
5504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorr_s16
5507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vorr_s16(int16x4_t a, int16x4_t b) {
5509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorr_s16(a, b);
5510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorr_s32
5513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vorr_s32(int32x2_t a, int32x2_t b) {
5515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorr_s32(a, b);
5516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorr_s64
5519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vorr_s64(int64x1_t a, int64x1_t b) {
5521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorr_s64(a, b);
5522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorr_u8
5525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vorr_u8(uint8x8_t a, uint8x8_t b) {
5527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorr_u8(a, b);
5528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorr_u16
5531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vorr_u16(uint16x4_t a, uint16x4_t b) {
5533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorr_u16(a, b);
5534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorr_u32
5537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vorr_u32(uint32x2_t a, uint32x2_t b) {
5539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorr_u32(a, b);
5540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorr_u64
5543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vorr_u64(uint64x1_t a, uint64x1_t b) {
5545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorr_u64(a, b);
5546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorrq_s8
5549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vorrq_s8(int8x16_t a, int8x16_t b) {
5551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorrq_s8(a, b);
5552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorrq_s16
5555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vorrq_s16(int16x8_t a, int16x8_t b) {
5557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorrq_s16(a, b);
5558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorrq_s32
5561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vorrq_s32(int32x4_t a, int32x4_t b) {
5563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorrq_s32(a, b);
5564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorrq_s64
5567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vorrq_s64(int64x2_t a, int64x2_t b) {
5569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorrq_s64(a, b);
5570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorrq_u8
5573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vorrq_u8(uint8x16_t a, uint8x16_t b) {
5575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorrq_u8(a, b);
5576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorrq_u16
5579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vorrq_u16(uint16x8_t a, uint16x8_t b) {
5581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorrq_u16(a, b);
5582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorrq_u32
5585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vorrq_u32(uint32x4_t a, uint32x4_t b) {
5587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorrq_u32(a, b);
5588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vorrq_u64
5591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vorr q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vorrq_u64(uint64x2_t a, uint64x2_t b) {
5593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vorrq_u64(a, b);
5594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadal_s8
5598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.s8 d{{[0-9]+}}, d{{[0-9]+}}
5599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vpadal_s8(int16x4_t a, int8x8_t b) {
5600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadal_s8(a, b);
5601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadal_s16
5604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.s16 d{{[0-9]+}}, d{{[0-9]+}}
5605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vpadal_s16(int32x2_t a, int16x4_t b) {
5606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadal_s16(a, b);
5607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadal_s32
5610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.s32 d{{[0-9]+}}, d{{[0-9]+}}
5611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vpadal_s32(int64x1_t a, int32x2_t b) {
5612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadal_s32(a, b);
5613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadal_u8
5616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.u8 d{{[0-9]+}}, d{{[0-9]+}}
5617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vpadal_u8(uint16x4_t a, uint8x8_t b) {
5618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadal_u8(a, b);
5619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadal_u16
5622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.u16 d{{[0-9]+}}, d{{[0-9]+}}
5623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vpadal_u16(uint32x2_t a, uint16x4_t b) {
5624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadal_u16(a, b);
5625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadal_u32
5628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.u32 d{{[0-9]+}}, d{{[0-9]+}}
5629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vpadal_u32(uint64x1_t a, uint32x2_t b) {
5630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadal_u32(a, b);
5631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadalq_s8
5634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.s8 q{{[0-9]+}}, q{{[0-9]+}}
5635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vpadalq_s8(int16x8_t a, int8x16_t b) {
5636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadalq_s8(a, b);
5637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadalq_s16
5640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.s16 q{{[0-9]+}}, q{{[0-9]+}}
5641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vpadalq_s16(int32x4_t a, int16x8_t b) {
5642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadalq_s16(a, b);
5643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadalq_s32
5646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.s32 q{{[0-9]+}}, q{{[0-9]+}}
5647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vpadalq_s32(int64x2_t a, int32x4_t b) {
5648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadalq_s32(a, b);
5649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadalq_u8
5652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.u8 q{{[0-9]+}}, q{{[0-9]+}}
5653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vpadalq_u8(uint16x8_t a, uint8x16_t b) {
5654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadalq_u8(a, b);
5655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadalq_u16
5658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.u16 q{{[0-9]+}}, q{{[0-9]+}}
5659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vpadalq_u16(uint32x4_t a, uint16x8_t b) {
5660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadalq_u16(a, b);
5661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadalq_u32
5664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadal.u32 q{{[0-9]+}}, q{{[0-9]+}}
5665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vpadalq_u32(uint64x2_t a, uint32x4_t b) {
5666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadalq_u32(a, b);
5667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadd_s8
5671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadd.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vpadd_s8(int8x8_t a, int8x8_t b) {
5673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadd_s8(a, b);
5674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadd_s16
5677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadd.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vpadd_s16(int16x4_t a, int16x4_t b) {
5679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadd_s16(a, b);
5680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadd_s32
5683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadd.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vpadd_s32(int32x2_t a, int32x2_t b) {
5685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadd_s32(a, b);
5686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadd_u8
5689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadd.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vpadd_u8(uint8x8_t a, uint8x8_t b) {
5691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadd_u8(a, b);
5692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadd_u16
5695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadd.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vpadd_u16(uint16x4_t a, uint16x4_t b) {
5697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadd_u16(a, b);
5698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadd_u32
5701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadd.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vpadd_u32(uint32x2_t a, uint32x2_t b) {
5703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadd_u32(a, b);
5704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpadd_f32
5707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpadd.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vpadd_f32(float32x2_t a, float32x2_t b) {
5709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpadd_f32(a, b);
5710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddl_s8
5714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.s8 d{{[0-9]+}}, d{{[0-9]+}}
5715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vpaddl_s8(int8x8_t a) {
5716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddl_s8(a);
5717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddl_s16
5720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.s16 d{{[0-9]+}}, d{{[0-9]+}}
5721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vpaddl_s16(int16x4_t a) {
5722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddl_s16(a);
5723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddl_s32
5726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.s32 d{{[0-9]+}}, d{{[0-9]+}}
5727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vpaddl_s32(int32x2_t a) {
5728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddl_s32(a);
5729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddl_u8
5732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.u8 d{{[0-9]+}}, d{{[0-9]+}}
5733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vpaddl_u8(uint8x8_t a) {
5734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddl_u8(a);
5735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddl_u16
5738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.u16 d{{[0-9]+}}, d{{[0-9]+}}
5739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vpaddl_u16(uint16x4_t a) {
5740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddl_u16(a);
5741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddl_u32
5744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.u32 d{{[0-9]+}}, d{{[0-9]+}}
5745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vpaddl_u32(uint32x2_t a) {
5746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddl_u32(a);
5747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddlq_s8
5750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.s8 q{{[0-9]+}}, q{{[0-9]+}}
5751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vpaddlq_s8(int8x16_t a) {
5752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddlq_s8(a);
5753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddlq_s16
5756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.s16 q{{[0-9]+}}, q{{[0-9]+}}
5757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vpaddlq_s16(int16x8_t a) {
5758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddlq_s16(a);
5759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddlq_s32
5762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.s32 q{{[0-9]+}}, q{{[0-9]+}}
5763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vpaddlq_s32(int32x4_t a) {
5764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddlq_s32(a);
5765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddlq_u8
5768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.u8 q{{[0-9]+}}, q{{[0-9]+}}
5769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vpaddlq_u8(uint8x16_t a) {
5770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddlq_u8(a);
5771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddlq_u16
5774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.u16 q{{[0-9]+}}, q{{[0-9]+}}
5775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vpaddlq_u16(uint16x8_t a) {
5776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddlq_u16(a);
5777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpaddlq_u32
5780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpaddl.u32 q{{[0-9]+}}, q{{[0-9]+}}
5781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vpaddlq_u32(uint32x4_t a) {
5782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpaddlq_u32(a);
5783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmax_s8
5787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmax.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vpmax_s8(int8x8_t a, int8x8_t b) {
5789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmax_s8(a, b);
5790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmax_s16
5793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmax.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vpmax_s16(int16x4_t a, int16x4_t b) {
5795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmax_s16(a, b);
5796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmax_s32
5799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmax.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vpmax_s32(int32x2_t a, int32x2_t b) {
5801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmax_s32(a, b);
5802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmax_u8
5805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmax.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vpmax_u8(uint8x8_t a, uint8x8_t b) {
5807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmax_u8(a, b);
5808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmax_u16
5811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmax.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vpmax_u16(uint16x4_t a, uint16x4_t b) {
5813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmax_u16(a, b);
5814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmax_u32
5817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmax.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vpmax_u32(uint32x2_t a, uint32x2_t b) {
5819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmax_u32(a, b);
5820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmax_f32
5823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmax.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vpmax_f32(float32x2_t a, float32x2_t b) {
5825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmax_f32(a, b);
5826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmin_s8
5830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmin.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vpmin_s8(int8x8_t a, int8x8_t b) {
5832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmin_s8(a, b);
5833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmin_s16
5836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmin.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vpmin_s16(int16x4_t a, int16x4_t b) {
5838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmin_s16(a, b);
5839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmin_s32
5842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmin.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vpmin_s32(int32x2_t a, int32x2_t b) {
5844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmin_s32(a, b);
5845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmin_u8
5848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmin.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vpmin_u8(uint8x8_t a, uint8x8_t b) {
5850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmin_u8(a, b);
5851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmin_u16
5854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmin.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vpmin_u16(uint16x4_t a, uint16x4_t b) {
5856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmin_u16(a, b);
5857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmin_u32
5860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmin.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vpmin_u32(uint32x2_t a, uint32x2_t b) {
5862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmin_u32(a, b);
5863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vpmin_f32
5866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vpmin.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vpmin_f32(float32x2_t a, float32x2_t b) {
5868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vpmin_f32(a, b);
5869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqabs_s8
5873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqabs.s8 d{{[0-9]+}}, d{{[0-9]+}}
5874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqabs_s8(int8x8_t a) {
5875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqabs_s8(a);
5876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqabs_s16
5879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqabs.s16 d{{[0-9]+}}, d{{[0-9]+}}
5880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqabs_s16(int16x4_t a) {
5881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqabs_s16(a);
5882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqabs_s32
5885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqabs.s32 d{{[0-9]+}}, d{{[0-9]+}}
5886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqabs_s32(int32x2_t a) {
5887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqabs_s32(a);
5888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqabsq_s8
5891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqabs.s8 q{{[0-9]+}}, q{{[0-9]+}}
5892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vqabsq_s8(int8x16_t a) {
5893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqabsq_s8(a);
5894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqabsq_s16
5897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqabs.s16 q{{[0-9]+}}, q{{[0-9]+}}
5898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqabsq_s16(int16x8_t a) {
5899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqabsq_s16(a);
5900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqabsq_s32
5903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqabs.s32 q{{[0-9]+}}, q{{[0-9]+}}
5904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqabsq_s32(int32x4_t a) {
5905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqabsq_s32(a);
5906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqadd_s8
5910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqadd_s8(int8x8_t a, int8x8_t b) {
5912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqadd_s8(a, b);
5913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqadd_s16
5916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqadd_s16(int16x4_t a, int16x4_t b) {
5918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqadd_s16(a, b);
5919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqadd_s32
5922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqadd_s32(int32x2_t a, int32x2_t b) {
5924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqadd_s32(a, b);
5925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqadd_s64
5928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.s64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vqadd_s64(int64x1_t a, int64x1_t b) {
5930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqadd_s64(a, b);
5931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqadd_u8
5934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqadd_u8(uint8x8_t a, uint8x8_t b) {
5936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqadd_u8(a, b);
5937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqadd_u16
5940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqadd_u16(uint16x4_t a, uint16x4_t b) {
5942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqadd_u16(a, b);
5943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqadd_u32
5946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqadd_u32(uint32x2_t a, uint32x2_t b) {
5948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqadd_u32(a, b);
5949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqadd_u64
5952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.u64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
5953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vqadd_u64(uint64x1_t a, uint64x1_t b) {
5954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqadd_u64(a, b);
5955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqaddq_s8
5958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vqaddq_s8(int8x16_t a, int8x16_t b) {
5960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqaddq_s8(a, b);
5961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqaddq_s16
5964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqaddq_s16(int16x8_t a, int16x8_t b) {
5966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqaddq_s16(a, b);
5967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqaddq_s32
5970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqaddq_s32(int32x4_t a, int32x4_t b) {
5972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqaddq_s32(a, b);
5973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqaddq_s64
5976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.s64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqaddq_s64(int64x2_t a, int64x2_t b) {
5978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqaddq_s64(a, b);
5979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqaddq_u8
5982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vqaddq_u8(uint8x16_t a, uint8x16_t b) {
5984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqaddq_u8(a, b);
5985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqaddq_u16
5988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vqaddq_u16(uint16x8_t a, uint16x8_t b) {
5990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqaddq_u16(a, b);
5991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqaddq_u32
5994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
5995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vqaddq_u32(uint32x4_t a, uint32x4_t b) {
5996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqaddq_u32(a, b);
5997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
5998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
5999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqaddq_u64
6000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqadd.u64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vqaddq_u64(uint64x2_t a, uint64x2_t b) {
6002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqaddq_u64(a, b);
6003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlal_s16
6007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlal.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmlal_s16(int32x4_t a, int16x4_t b, int16x4_t c) {
6009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlal_s16(a, b, c);
6010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlal_s32
6013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlal.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqdmlal_s32(int64x2_t a, int32x2_t b, int32x2_t c) {
6015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlal_s32(a, b, c);
6016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlal_lane_s16
6020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlal.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmlal_lane_s16(int32x4_t a, int16x4_t b, int16x4_t c) {
6022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlal_lane_s16(a, b, c, 3);
6023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlal_lane_s32
6026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlal.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqdmlal_lane_s32(int64x2_t a, int32x2_t b, int32x2_t c) {
6028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlal_lane_s32(a, b, c, 1);
6029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlal_n_s16
6033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlal.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmlal_n_s16(int32x4_t a, int16x4_t b, int16_t c) {
6035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlal_n_s16(a, b, c);
6036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlal_n_s32
6039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlal.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqdmlal_n_s32(int64x2_t a, int32x2_t b, int32_t c) {
6041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlal_n_s32(a, b, c);
6042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlsl_s16
6046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlsl.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmlsl_s16(int32x4_t a, int16x4_t b, int16x4_t c) {
6048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlsl_s16(a, b, c);
6049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlsl_s32
6052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlsl.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqdmlsl_s32(int64x2_t a, int32x2_t b, int32x2_t c) {
6054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlsl_s32(a, b, c);
6055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlsl_lane_s16
6059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlsl.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmlsl_lane_s16(int32x4_t a, int16x4_t b, int16x4_t c) {
6061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlsl_lane_s16(a, b, c, 3);
6062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlsl_lane_s32
6065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlsl.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqdmlsl_lane_s32(int64x2_t a, int32x2_t b, int32x2_t c) {
6067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlsl_lane_s32(a, b, c, 1);
6068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlsl_n_s16
6072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlsl.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmlsl_n_s16(int32x4_t a, int16x4_t b, int16_t c) {
6074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlsl_n_s16(a, b, c);
6075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmlsl_n_s32
6078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmlsl.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqdmlsl_n_s32(int64x2_t a, int32x2_t b, int32_t c) {
6080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmlsl_n_s32(a, b, c);
6081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulh_s16
6085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqdmulh_s16(int16x4_t a, int16x4_t b) {
6087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulh_s16(a, b);
6088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulh_s32
6091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqdmulh_s32(int32x2_t a, int32x2_t b) {
6093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulh_s32(a, b);
6094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulhq_s16
6097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqdmulhq_s16(int16x8_t a, int16x8_t b) {
6099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulhq_s16(a, b);
6100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulhq_s32
6103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmulhq_s32(int32x4_t a, int32x4_t b) {
6105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulhq_s32(a, b);
6106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulh_lane_s16
6110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqdmulh_lane_s16(int16x4_t a, int16x4_t b) {
6112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulh_lane_s16(a, b, 3);
6113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulh_lane_s32
6116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqdmulh_lane_s32(int32x2_t a, int32x2_t b) {
6118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulh_lane_s32(a, b, 1);
6119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulhq_lane_s16
6122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqdmulhq_lane_s16(int16x8_t a, int16x4_t b) {
6124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulhq_lane_s16(a, b, 3);
6125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulhq_lane_s32
6128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmulhq_lane_s32(int32x4_t a, int32x2_t b) {
6130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulhq_lane_s32(a, b, 1);
6131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulh_n_s16
6135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqdmulh_n_s16(int16x4_t a, int16_t b) {
6137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulh_n_s16(a, b);
6138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulh_n_s32
6141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqdmulh_n_s32(int32x2_t a, int32_t b) {
6143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulh_n_s32(a, b);
6144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulhq_n_s16
6147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqdmulhq_n_s16(int16x8_t a, int16_t b) {
6149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulhq_n_s16(a, b);
6150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmulhq_n_s32
6153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmulh.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmulhq_n_s32(int32x4_t a, int32_t b) {
6155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmulhq_n_s32(a, b);
6156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmull_s16
6160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmull.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmull_s16(int16x4_t a, int16x4_t b) {
6162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmull_s16(a, b);
6163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmull_s32
6166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmull.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqdmull_s32(int32x2_t a, int32x2_t b) {
6168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmull_s32(a, b);
6169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmull_lane_s16
6173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmull.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmull_lane_s16(int16x4_t a, int16x4_t b) {
6175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmull_lane_s16(a, b, 3);
6176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmull_lane_s32
6179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmull.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqdmull_lane_s32(int32x2_t a, int32x2_t b) {
6181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmull_lane_s32(a, b, 1);
6182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmull_n_s16
6186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmull.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqdmull_n_s16(int16x4_t a, int16_t b) {
6188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmull_n_s16(a, b);
6189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqdmull_n_s32
6192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqdmull.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqdmull_n_s32(int32x2_t a, int32_t b) {
6194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqdmull_n_s32(a, b);
6195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqmovn_s16
6199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqmovn.s16 d{{[0-9]+}}, q{{[0-9]+}}
6200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqmovn_s16(int16x8_t a) {
6201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqmovn_s16(a);
6202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqmovn_s32
6205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqmovn.s32 d{{[0-9]+}}, q{{[0-9]+}}
6206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqmovn_s32(int32x4_t a) {
6207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqmovn_s32(a);
6208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqmovn_s64
6211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqmovn.s64 d{{[0-9]+}}, q{{[0-9]+}}
6212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqmovn_s64(int64x2_t a) {
6213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqmovn_s64(a);
6214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqmovn_u16
6217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqmovn.u16 d{{[0-9]+}}, q{{[0-9]+}}
6218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqmovn_u16(uint16x8_t a) {
6219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqmovn_u16(a);
6220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqmovn_u32
6223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqmovn.u32 d{{[0-9]+}}, q{{[0-9]+}}
6224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqmovn_u32(uint32x4_t a) {
6225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqmovn_u32(a);
6226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqmovn_u64
6229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqmovn.u64 d{{[0-9]+}}, q{{[0-9]+}}
6230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqmovn_u64(uint64x2_t a) {
6231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqmovn_u64(a);
6232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqmovun_s16
6236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqmovun.s16 d{{[0-9]+}}, q{{[0-9]+}}
6237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqmovun_s16(int16x8_t a) {
6238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqmovun_s16(a);
6239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqmovun_s32
6242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqmovun.s32 d{{[0-9]+}}, q{{[0-9]+}}
6243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqmovun_s32(int32x4_t a) {
6244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqmovun_s32(a);
6245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqmovun_s64
6248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqmovun.s64 d{{[0-9]+}}, q{{[0-9]+}}
6249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqmovun_s64(int64x2_t a) {
6250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqmovun_s64(a);
6251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqneg_s8
6255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqneg.s8 d{{[0-9]+}}, d{{[0-9]+}}
6256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqneg_s8(int8x8_t a) {
6257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqneg_s8(a);
6258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqneg_s16
6261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqneg.s16 d{{[0-9]+}}, d{{[0-9]+}}
6262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqneg_s16(int16x4_t a) {
6263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqneg_s16(a);
6264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqneg_s32
6267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqneg.s32 d{{[0-9]+}}, d{{[0-9]+}}
6268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqneg_s32(int32x2_t a) {
6269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqneg_s32(a);
6270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqnegq_s8
6273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqneg.s8 q{{[0-9]+}}, q{{[0-9]+}}
6274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vqnegq_s8(int8x16_t a) {
6275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqnegq_s8(a);
6276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqnegq_s16
6279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqneg.s16 q{{[0-9]+}}, q{{[0-9]+}}
6280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqnegq_s16(int16x8_t a) {
6281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqnegq_s16(a);
6282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqnegq_s32
6285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqneg.s32 q{{[0-9]+}}, q{{[0-9]+}}
6286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqnegq_s32(int32x4_t a) {
6287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqnegq_s32(a);
6288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulh_s16
6292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqrdmulh_s16(int16x4_t a, int16x4_t b) {
6294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulh_s16(a, b);
6295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulh_s32
6298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqrdmulh_s32(int32x2_t a, int32x2_t b) {
6300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulh_s32(a, b);
6301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulhq_s16
6304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqrdmulhq_s16(int16x8_t a, int16x8_t b) {
6306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulhq_s16(a, b);
6307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulhq_s32
6310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqrdmulhq_s32(int32x4_t a, int32x4_t b) {
6312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulhq_s32(a, b);
6313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulh_lane_s16
6317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqrdmulh_lane_s16(int16x4_t a, int16x4_t b) {
6319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulh_lane_s16(a, b, 3);
6320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulh_lane_s32
6323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqrdmulh_lane_s32(int32x2_t a, int32x2_t b) {
6325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulh_lane_s32(a, b, 1);
6326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulhq_lane_s16
6329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqrdmulhq_lane_s16(int16x8_t a, int16x4_t b) {
6331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulhq_lane_s16(a, b, 3);
6332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulhq_lane_s32
6335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}[{{[0-9]}}]
6336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqrdmulhq_lane_s32(int32x4_t a, int32x2_t b) {
6337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulhq_lane_s32(a, b, 1);
6338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulh_n_s16
6342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqrdmulh_n_s16(int16x4_t a, int16_t b) {
6344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulh_n_s16(a, b);
6345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulh_n_s32
6348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqrdmulh_n_s32(int32x2_t a, int32_t b) {
6350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulh_n_s32(a, b);
6351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulhq_n_s16
6354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqrdmulhq_n_s16(int16x8_t a, int16_t b) {
6356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulhq_n_s16(a, b);
6357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrdmulhq_n_s32
6360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrdmulh.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqrdmulhq_n_s32(int32x4_t a, int32_t b) {
6362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrdmulhq_n_s32(a, b);
6363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshl_s8
6367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqrshl_s8(int8x8_t a, int8x8_t b) {
6369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshl_s8(a, b);
6370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshl_s16
6373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqrshl_s16(int16x4_t a, int16x4_t b) {
6375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshl_s16(a, b);
6376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshl_s32
6379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqrshl_s32(int32x2_t a, int32x2_t b) {
6381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshl_s32(a, b);
6382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshl_s64
6385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.s64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vqrshl_s64(int64x1_t a, int64x1_t b) {
6387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshl_s64(a, b);
6388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshl_u8
6391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqrshl_u8(uint8x8_t a, int8x8_t b) {
6393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshl_u8(a, b);
6394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshl_u16
6397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqrshl_u16(uint16x4_t a, int16x4_t b) {
6399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshl_u16(a, b);
6400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshl_u32
6403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqrshl_u32(uint32x2_t a, int32x2_t b) {
6405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshl_u32(a, b);
6406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshl_u64
6409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.u64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vqrshl_u64(uint64x1_t a, int64x1_t b) {
6411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshl_u64(a, b);
6412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshlq_s8
6415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vqrshlq_s8(int8x16_t a, int8x16_t b) {
6417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshlq_s8(a, b);
6418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshlq_s16
6421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqrshlq_s16(int16x8_t a, int16x8_t b) {
6423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshlq_s16(a, b);
6424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshlq_s32
6427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqrshlq_s32(int32x4_t a, int32x4_t b) {
6429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshlq_s32(a, b);
6430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshlq_s64
6433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.s64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqrshlq_s64(int64x2_t a, int64x2_t b) {
6435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshlq_s64(a, b);
6436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshlq_u8
6439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vqrshlq_u8(uint8x16_t a, int8x16_t b) {
6441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshlq_u8(a, b);
6442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshlq_u16
6445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vqrshlq_u16(uint16x8_t a, int16x8_t b) {
6447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshlq_u16(a, b);
6448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshlq_u32
6451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vqrshlq_u32(uint32x4_t a, int32x4_t b) {
6453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshlq_u32(a, b);
6454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshlq_u64
6457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshl.u64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vqrshlq_u64(uint64x2_t a, int64x2_t b) {
6459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshlq_u64(a, b);
6460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshrn_n_s16
6464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshrn.s16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqrshrn_n_s16(int16x8_t a) {
6466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshrn_n_s16(a, 1);
6467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshrn_n_s32
6470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshrn.s32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqrshrn_n_s32(int32x4_t a) {
6472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshrn_n_s32(a, 1);
6473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshrn_n_s64
6476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshrn.s64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqrshrn_n_s64(int64x2_t a) {
6478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshrn_n_s64(a, 1);
6479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshrn_n_u16
6482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshrn.u16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqrshrn_n_u16(uint16x8_t a) {
6484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshrn_n_u16(a, 1);
6485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshrn_n_u32
6488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshrn.u32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqrshrn_n_u32(uint32x4_t a) {
6490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshrn_n_u32(a, 1);
6491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshrn_n_u64
6494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshrn.u64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqrshrn_n_u64(uint64x2_t a) {
6496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshrn_n_u64(a, 1);
6497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshrun_n_s16
6501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshrun.s16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqrshrun_n_s16(int16x8_t a) {
6503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshrun_n_s16(a, 1);
6504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshrun_n_s32
6507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshrun.s32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqrshrun_n_s32(int32x4_t a) {
6509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshrun_n_s32(a, 1);
6510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqrshrun_n_s64
6513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqrshrun.s64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqrshrun_n_s64(int64x2_t a) {
6515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqrshrun_n_s64(a, 1);
6516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_s8
6520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqshl_s8(int8x8_t a, int8x8_t b) {
6522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_s8(a, b);
6523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_s16
6526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqshl_s16(int16x4_t a, int16x4_t b) {
6528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_s16(a, b);
6529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_s32
6532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqshl_s32(int32x2_t a, int32x2_t b) {
6534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_s32(a, b);
6535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_s64
6538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vqshl_s64(int64x1_t a, int64x1_t b) {
6540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_s64(a, b);
6541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_u8
6544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqshl_u8(uint8x8_t a, int8x8_t b) {
6546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_u8(a, b);
6547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_u16
6550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqshl_u16(uint16x4_t a, int16x4_t b) {
6552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_u16(a, b);
6553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_u32
6556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqshl_u32(uint32x2_t a, int32x2_t b) {
6558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_u32(a, b);
6559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_u64
6562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vqshl_u64(uint64x1_t a, int64x1_t b) {
6564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_u64(a, b);
6565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_s8
6568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vqshlq_s8(int8x16_t a, int8x16_t b) {
6570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_s8(a, b);
6571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_s16
6574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqshlq_s16(int16x8_t a, int16x8_t b) {
6576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_s16(a, b);
6577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_s32
6580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqshlq_s32(int32x4_t a, int32x4_t b) {
6582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_s32(a, b);
6583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_s64
6586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqshlq_s64(int64x2_t a, int64x2_t b) {
6588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_s64(a, b);
6589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_u8
6592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vqshlq_u8(uint8x16_t a, int8x16_t b) {
6594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_u8(a, b);
6595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_u16
6598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vqshlq_u16(uint16x8_t a, int16x8_t b) {
6600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_u16(a, b);
6601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_u32
6604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vqshlq_u32(uint32x4_t a, int32x4_t b) {
6606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_u32(a, b);
6607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_u64
6610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vqshlq_u64(uint64x2_t a, int64x2_t b) {
6612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_u64(a, b);
6613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlu_n_s8
6617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshlu.s8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqshlu_n_s8(int8x8_t a) {
6619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlu_n_s8(a, 1);
6620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlu_n_s16
6623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshlu.s16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqshlu_n_s16(int16x4_t a) {
6625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlu_n_s16(a, 1);
6626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlu_n_s32
6629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshlu.s32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqshlu_n_s32(int32x2_t a) {
6631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlu_n_s32(a, 1);
6632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlu_n_s64
6635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshlu.s64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vqshlu_n_s64(int64x1_t a) {
6637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlu_n_s64(a, 1);
6638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshluq_n_s8
6641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshlu.s8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vqshluq_n_s8(int8x16_t a) {
6643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshluq_n_s8(a, 1);
6644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshluq_n_s16
6647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshlu.s16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vqshluq_n_s16(int16x8_t a) {
6649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshluq_n_s16(a, 1);
6650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshluq_n_s32
6653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshlu.s32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vqshluq_n_s32(int32x4_t a) {
6655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshluq_n_s32(a, 1);
6656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshluq_n_s64
6659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshlu.s64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vqshluq_n_s64(int64x2_t a) {
6661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshluq_n_s64(a, 1);
6662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_n_s8
6666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqshl_n_s8(int8x8_t a) {
6668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_n_s8(a, 1);
6669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_n_s16
6672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqshl_n_s16(int16x4_t a) {
6674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_n_s16(a, 1);
6675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_n_s32
6678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqshl_n_s32(int32x2_t a) {
6680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_n_s32(a, 1);
6681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_n_s64
6684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vqshl_n_s64(int64x1_t a) {
6686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_n_s64(a, 1);
6687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_n_u8
6690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqshl_n_u8(uint8x8_t a) {
6692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_n_u8(a, 1);
6693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_n_u16
6696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqshl_n_u16(uint16x4_t a) {
6698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_n_u16(a, 1);
6699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_n_u32
6702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqshl_n_u32(uint32x2_t a) {
6704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_n_u32(a, 1);
6705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshl_n_u64
6708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
6709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vqshl_n_u64(uint64x1_t a) {
6710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshl_n_u64(a, 1);
6711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_n_s8
6714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vqshlq_n_s8(int8x16_t a) {
6716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_n_s8(a, 1);
6717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_n_s16
6720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqshlq_n_s16(int16x8_t a) {
6722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_n_s16(a, 1);
6723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_n_s32
6726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqshlq_n_s32(int32x4_t a) {
6728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_n_s32(a, 1);
6729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_n_s64
6732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.s64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqshlq_n_s64(int64x2_t a) {
6734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_n_s64(a, 1);
6735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_n_u8
6738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vqshlq_n_u8(uint8x16_t a) {
6740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_n_u8(a, 1);
6741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_n_u16
6744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vqshlq_n_u16(uint16x8_t a) {
6746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_n_u16(a, 1);
6747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_n_u32
6750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vqshlq_n_u32(uint32x4_t a) {
6752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_n_u32(a, 1);
6753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshlq_n_u64
6756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshl.u64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vqshlq_n_u64(uint64x2_t a) {
6758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshlq_n_u64(a, 1);
6759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshrn_n_s16
6763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshrn.s16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqshrn_n_s16(int16x8_t a) {
6765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshrn_n_s16(a, 1);
6766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshrn_n_s32
6769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshrn.s32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqshrn_n_s32(int32x4_t a) {
6771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshrn_n_s32(a, 1);
6772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshrn_n_s64
6775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshrn.s64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqshrn_n_s64(int64x2_t a) {
6777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshrn_n_s64(a, 1);
6778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshrn_n_u16
6781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshrn.u16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqshrn_n_u16(uint16x8_t a) {
6783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshrn_n_u16(a, 1);
6784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshrn_n_u32
6787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshrn.u32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqshrn_n_u32(uint32x4_t a) {
6789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshrn_n_u32(a, 1);
6790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshrn_n_u64
6793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshrn.u64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqshrn_n_u64(uint64x2_t a) {
6795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshrn_n_u64(a, 1);
6796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshrun_n_s16
6800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshrun.s16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqshrun_n_s16(int16x8_t a) {
6802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshrun_n_s16(a, 1);
6803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshrun_n_s32
6806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshrun.s32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqshrun_n_s32(int32x4_t a) {
6808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshrun_n_s32(a, 1);
6809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqshrun_n_s64
6812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqshrun.s64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
6813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqshrun_n_s64(int64x2_t a) {
6814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqshrun_n_s64(a, 1);
6815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsub_s8
6819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vqsub_s8(int8x8_t a, int8x8_t b) {
6821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsub_s8(a, b);
6822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsub_s16
6825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vqsub_s16(int16x4_t a, int16x4_t b) {
6827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsub_s16(a, b);
6828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsub_s32
6831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vqsub_s32(int32x2_t a, int32x2_t b) {
6833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsub_s32(a, b);
6834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsub_s64
6837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.s64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vqsub_s64(int64x1_t a, int64x1_t b) {
6839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsub_s64(a, b);
6840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsub_u8
6843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vqsub_u8(uint8x8_t a, uint8x8_t b) {
6845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsub_u8(a, b);
6846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsub_u16
6849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vqsub_u16(uint16x4_t a, uint16x4_t b) {
6851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsub_u16(a, b);
6852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsub_u32
6855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vqsub_u32(uint32x2_t a, uint32x2_t b) {
6857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsub_u32(a, b);
6858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsub_u64
6861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.u64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vqsub_u64(uint64x1_t a, uint64x1_t b) {
6863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsub_u64(a, b);
6864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsubq_s8
6867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vqsubq_s8(int8x16_t a, int8x16_t b) {
6869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsubq_s8(a, b);
6870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsubq_s16
6873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vqsubq_s16(int16x8_t a, int16x8_t b) {
6875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsubq_s16(a, b);
6876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsubq_s32
6879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vqsubq_s32(int32x4_t a, int32x4_t b) {
6881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsubq_s32(a, b);
6882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsubq_s64
6885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.s64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vqsubq_s64(int64x2_t a, int64x2_t b) {
6887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsubq_s64(a, b);
6888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsubq_u8
6891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vqsubq_u8(uint8x16_t a, uint8x16_t b) {
6893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsubq_u8(a, b);
6894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsubq_u16
6897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vqsubq_u16(uint16x8_t a, uint16x8_t b) {
6899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsubq_u16(a, b);
6900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsubq_u32
6903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vqsubq_u32(uint32x4_t a, uint32x4_t b) {
6905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsubq_u32(a, b);
6906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vqsubq_u64
6909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vqsub.u64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vqsubq_u64(uint64x2_t a, uint64x2_t b) {
6911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vqsubq_u64(a, b);
6912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vraddhn_s16
6916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vraddhn.i16 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vraddhn_s16(int16x8_t a, int16x8_t b) {
6918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vraddhn_s16(a, b);
6919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vraddhn_s32
6922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vraddhn.i32 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vraddhn_s32(int32x4_t a, int32x4_t b) {
6924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vraddhn_s32(a, b);
6925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vraddhn_s64
6928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vraddhn.i64 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vraddhn_s64(int64x2_t a, int64x2_t b) {
6930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vraddhn_s64(a, b);
6931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vraddhn_u16
6934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vraddhn.i16 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vraddhn_u16(uint16x8_t a, uint16x8_t b) {
6936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vraddhn_u16(a, b);
6937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vraddhn_u32
6940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vraddhn.i32 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vraddhn_u32(uint32x4_t a, uint32x4_t b) {
6942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vraddhn_u32(a, b);
6943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vraddhn_u64
6946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vraddhn.i64 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vraddhn_u64(uint64x2_t a, uint64x2_t b) {
6948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vraddhn_u64(a, b);
6949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrecpe_f32
6953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrecpe.f32 d{{[0-9]+}}, d{{[0-9]+}}
6954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vrecpe_f32(float32x2_t a) {
6955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrecpe_f32(a);
6956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrecpe_u32
6959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrecpe.u32 d{{[0-9]+}}, d{{[0-9]+}}
6960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vrecpe_u32(uint32x2_t a) {
6961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrecpe_u32(a);
6962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrecpeq_f32
6965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrecpe.f32 q{{[0-9]+}}, q{{[0-9]+}}
6966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vrecpeq_f32(float32x4_t a) {
6967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrecpeq_f32(a);
6968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrecpeq_u32
6971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrecpe.u32 q{{[0-9]+}}, q{{[0-9]+}}
6972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vrecpeq_u32(uint32x4_t a) {
6973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrecpeq_u32(a);
6974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrecps_f32
6978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrecps.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
6979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vrecps_f32(float32x2_t a, float32x2_t b) {
6980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrecps_f32(a, b);
6981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrecpsq_f32
6984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrecps.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
6985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vrecpsq_f32(float32x4_t a, float32x4_t b) {
6986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrecpsq_f32(a, b);
6987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_s16
6991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_s16(int16x4_t a) {
6992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_s16(a);
6993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
6995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_s32
6996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_s32(int32x2_t a) {
6997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_s32(a);
6998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
6999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_s64
7001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_s64(int64x1_t a) {
7002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_s64(a);
7003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_u8
7006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_u8(uint8x8_t a) {
7007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_u8(a);
7008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_u16
7011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_u16(uint16x4_t a) {
7012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_u16(a);
7013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_u32
7016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_u32(uint32x2_t a) {
7017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_u32(a);
7018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_u64
7021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_u64(uint64x1_t a) {
7022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_u64(a);
7023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_f16
7026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_f16(float16x4_t a) {
7027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_f16(a);
7028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_f32
7031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_f32(float32x2_t a) {
7032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_f32(a);
7033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_p8
7036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_p8(poly8x8_t a) {
7037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_p8(a);
7038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s8_p16
7041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vreinterpret_s8_p16(poly16x4_t a) {
7042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s8_p16(a);
7043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_s8
7046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_s8(int8x8_t a) {
7047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_s8(a);
7048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_s32
7051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_s32(int32x2_t a) {
7052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_s32(a);
7053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_s64
7056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_s64(int64x1_t a) {
7057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_s64(a);
7058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_u8
7061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_u8(uint8x8_t a) {
7062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_u8(a);
7063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_u16
7066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_u16(uint16x4_t a) {
7067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_u16(a);
7068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_u32
7071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_u32(uint32x2_t a) {
7072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_u32(a);
7073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_u64
7076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_u64(uint64x1_t a) {
7077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_u64(a);
7078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_f16
7081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_f16(float16x4_t a) {
7082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_f16(a);
7083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_f32
7086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_f32(float32x2_t a) {
7087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_f32(a);
7088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_p8
7091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_p8(poly8x8_t a) {
7092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_p8(a);
7093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s16_p16
7096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vreinterpret_s16_p16(poly16x4_t a) {
7097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s16_p16(a);
7098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_s8
7101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_s8(int8x8_t a) {
7102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_s8(a);
7103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_s16
7106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_s16(int16x4_t a) {
7107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_s16(a);
7108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_s64
7111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_s64(int64x1_t a) {
7112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_s64(a);
7113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_u8
7116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_u8(uint8x8_t a) {
7117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_u8(a);
7118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_u16
7121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_u16(uint16x4_t a) {
7122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_u16(a);
7123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_u32
7126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_u32(uint32x2_t a) {
7127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_u32(a);
7128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_u64
7131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_u64(uint64x1_t a) {
7132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_u64(a);
7133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_f16
7136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_f16(float16x4_t a) {
7137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_f16(a);
7138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_f32
7141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_f32(float32x2_t a) {
7142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_f32(a);
7143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_p8
7146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_p8(poly8x8_t a) {
7147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_p8(a);
7148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s32_p16
7151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vreinterpret_s32_p16(poly16x4_t a) {
7152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s32_p16(a);
7153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_s8
7156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_s8(int8x8_t a) {
7157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_s8(a);
7158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_s16
7161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_s16(int16x4_t a) {
7162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_s16(a);
7163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_s32
7166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_s32(int32x2_t a) {
7167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_s32(a);
7168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_u8
7171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_u8(uint8x8_t a) {
7172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_u8(a);
7173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_u16
7176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_u16(uint16x4_t a) {
7177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_u16(a);
7178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_u32
7181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_u32(uint32x2_t a) {
7182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_u32(a);
7183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_u64
7186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_u64(uint64x1_t a) {
7187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_u64(a);
7188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_f16
7191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_f16(float16x4_t a) {
7192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_f16(a);
7193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_f32
7196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_f32(float32x2_t a) {
7197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_f32(a);
7198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_p8
7201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_p8(poly8x8_t a) {
7202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_p8(a);
7203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_s64_p16
7206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vreinterpret_s64_p16(poly16x4_t a) {
7207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_s64_p16(a);
7208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_s8
7211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_s8(int8x8_t a) {
7212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_s8(a);
7213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_s16
7216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_s16(int16x4_t a) {
7217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_s16(a);
7218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_s32
7221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_s32(int32x2_t a) {
7222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_s32(a);
7223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_s64
7226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_s64(int64x1_t a) {
7227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_s64(a);
7228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_u16
7231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_u16(uint16x4_t a) {
7232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_u16(a);
7233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_u32
7236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_u32(uint32x2_t a) {
7237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_u32(a);
7238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_u64
7241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_u64(uint64x1_t a) {
7242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_u64(a);
7243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_f16
7246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_f16(float16x4_t a) {
7247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_f16(a);
7248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_f32
7251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_f32(float32x2_t a) {
7252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_f32(a);
7253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_p8
7256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_p8(poly8x8_t a) {
7257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_p8(a);
7258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u8_p16
7261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vreinterpret_u8_p16(poly16x4_t a) {
7262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u8_p16(a);
7263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_s8
7266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_s8(int8x8_t a) {
7267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_s8(a);
7268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_s16
7271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_s16(int16x4_t a) {
7272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_s16(a);
7273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_s32
7276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_s32(int32x2_t a) {
7277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_s32(a);
7278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_s64
7281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_s64(int64x1_t a) {
7282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_s64(a);
7283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_u8
7286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_u8(uint8x8_t a) {
7287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_u8(a);
7288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_u32
7291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_u32(uint32x2_t a) {
7292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_u32(a);
7293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_u64
7296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_u64(uint64x1_t a) {
7297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_u64(a);
7298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_f16
7301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_f16(float16x4_t a) {
7302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_f16(a);
7303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_f32
7306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_f32(float32x2_t a) {
7307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_f32(a);
7308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_p8
7311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_p8(poly8x8_t a) {
7312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_p8(a);
7313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u16_p16
7316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vreinterpret_u16_p16(poly16x4_t a) {
7317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u16_p16(a);
7318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_s8
7321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_s8(int8x8_t a) {
7322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_s8(a);
7323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_s16
7326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_s16(int16x4_t a) {
7327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_s16(a);
7328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_s32
7331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_s32(int32x2_t a) {
7332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_s32(a);
7333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_s64
7336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_s64(int64x1_t a) {
7337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_s64(a);
7338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_u8
7341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_u8(uint8x8_t a) {
7342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_u8(a);
7343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_u16
7346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_u16(uint16x4_t a) {
7347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_u16(a);
7348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_u64
7351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_u64(uint64x1_t a) {
7352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_u64(a);
7353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_f16
7356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_f16(float16x4_t a) {
7357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_f16(a);
7358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_f32
7361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_f32(float32x2_t a) {
7362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_f32(a);
7363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_p8
7366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_p8(poly8x8_t a) {
7367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_p8(a);
7368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u32_p16
7371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vreinterpret_u32_p16(poly16x4_t a) {
7372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u32_p16(a);
7373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_s8
7376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_s8(int8x8_t a) {
7377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_s8(a);
7378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_s16
7381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_s16(int16x4_t a) {
7382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_s16(a);
7383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_s32
7386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_s32(int32x2_t a) {
7387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_s32(a);
7388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_s64
7391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_s64(int64x1_t a) {
7392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_s64(a);
7393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_u8
7396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_u8(uint8x8_t a) {
7397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_u8(a);
7398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_u16
7401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_u16(uint16x4_t a) {
7402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_u16(a);
7403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_u32
7406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_u32(uint32x2_t a) {
7407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_u32(a);
7408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_f16
7411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_f16(float16x4_t a) {
7412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_f16(a);
7413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_f32
7416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_f32(float32x2_t a) {
7417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_f32(a);
7418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_p8
7421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_p8(poly8x8_t a) {
7422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_p8(a);
7423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_u64_p16
7426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vreinterpret_u64_p16(poly16x4_t a) {
7427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_u64_p16(a);
7428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_s8
7431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_s8(int8x8_t a) {
7432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_s8(a);
7433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_s16
7436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_s16(int16x4_t a) {
7437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_s16(a);
7438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_s32
7441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_s32(int32x2_t a) {
7442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_s32(a);
7443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_s64
7446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_s64(int64x1_t a) {
7447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_s64(a);
7448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_u8
7451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_u8(uint8x8_t a) {
7452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_u8(a);
7453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_u16
7456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_u16(uint16x4_t a) {
7457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_u16(a);
7458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_u32
7461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_u32(uint32x2_t a) {
7462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_u32(a);
7463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_u64
7466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_u64(uint64x1_t a) {
7467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_u64(a);
7468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_f32
7471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_f32(float32x2_t a) {
7472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_f32(a);
7473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_p8
7476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_p8(poly8x8_t a) {
7477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_p8(a);
7478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f16_p16
7481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x4_t test_vreinterpret_f16_p16(poly16x4_t a) {
7482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f16_p16(a);
7483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_s8
7486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_s8(int8x8_t a) {
7487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_s8(a);
7488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_s16
7491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_s16(int16x4_t a) {
7492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_s16(a);
7493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_s32
7496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_s32(int32x2_t a) {
7497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_s32(a);
7498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_s64
7501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_s64(int64x1_t a) {
7502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_s64(a);
7503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_u8
7506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_u8(uint8x8_t a) {
7507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_u8(a);
7508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_u16
7511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_u16(uint16x4_t a) {
7512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_u16(a);
7513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_u32
7516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_u32(uint32x2_t a) {
7517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_u32(a);
7518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_u64
7521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_u64(uint64x1_t a) {
7522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_u64(a);
7523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_f16
7526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_f16(float16x4_t a) {
7527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_f16(a);
7528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_p8
7531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_p8(poly8x8_t a) {
7532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_p8(a);
7533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_f32_p16
7536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vreinterpret_f32_p16(poly16x4_t a) {
7537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_f32_p16(a);
7538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_s8
7541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_s8(int8x8_t a) {
7542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_s8(a);
7543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_s16
7546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_s16(int16x4_t a) {
7547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_s16(a);
7548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_s32
7551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_s32(int32x2_t a) {
7552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_s32(a);
7553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_s64
7556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_s64(int64x1_t a) {
7557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_s64(a);
7558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_u8
7561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_u8(uint8x8_t a) {
7562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_u8(a);
7563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_u16
7566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_u16(uint16x4_t a) {
7567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_u16(a);
7568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_u32
7571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_u32(uint32x2_t a) {
7572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_u32(a);
7573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_u64
7576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_u64(uint64x1_t a) {
7577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_u64(a);
7578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_f16
7581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_f16(float16x4_t a) {
7582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_f16(a);
7583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_f32
7586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_f32(float32x2_t a) {
7587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_f32(a);
7588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p8_p16
7591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vreinterpret_p8_p16(poly16x4_t a) {
7592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p8_p16(a);
7593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_s8
7596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_s8(int8x8_t a) {
7597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_s8(a);
7598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_s16
7601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_s16(int16x4_t a) {
7602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_s16(a);
7603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_s32
7606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_s32(int32x2_t a) {
7607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_s32(a);
7608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_s64
7611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_s64(int64x1_t a) {
7612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_s64(a);
7613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_u8
7616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_u8(uint8x8_t a) {
7617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_u8(a);
7618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_u16
7621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_u16(uint16x4_t a) {
7622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_u16(a);
7623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_u32
7626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_u32(uint32x2_t a) {
7627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_u32(a);
7628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_u64
7631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_u64(uint64x1_t a) {
7632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_u64(a);
7633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_f16
7636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_f16(float16x4_t a) {
7637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_f16(a);
7638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_f32
7641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_f32(float32x2_t a) {
7642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_f32(a);
7643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpret_p16_p8
7646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vreinterpret_p16_p8(poly8x8_t a) {
7647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpret_p16_p8(a);
7648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_s16
7651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_s16(int16x8_t a) {
7652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_s16(a);
7653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_s32
7656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_s32(int32x4_t a) {
7657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_s32(a);
7658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_s64
7661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_s64(int64x2_t a) {
7662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_s64(a);
7663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_u8
7666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_u8(uint8x16_t a) {
7667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_u8(a);
7668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_u16
7671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_u16(uint16x8_t a) {
7672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_u16(a);
7673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_u32
7676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_u32(uint32x4_t a) {
7677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_u32(a);
7678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_u64
7681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_u64(uint64x2_t a) {
7682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_u64(a);
7683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_f16
7686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_f16(float16x8_t a) {
7687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_f16(a);
7688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_f32
7691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_f32(float32x4_t a) {
7692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_f32(a);
7693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_p8
7696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_p8(poly8x16_t a) {
7697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_p8(a);
7698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s8_p16
7701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vreinterpretq_s8_p16(poly16x8_t a) {
7702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s8_p16(a);
7703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_s8
7706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_s8(int8x16_t a) {
7707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_s8(a);
7708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_s32
7711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_s32(int32x4_t a) {
7712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_s32(a);
7713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_s64
7716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_s64(int64x2_t a) {
7717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_s64(a);
7718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_u8
7721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_u8(uint8x16_t a) {
7722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_u8(a);
7723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_u16
7726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_u16(uint16x8_t a) {
7727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_u16(a);
7728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_u32
7731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_u32(uint32x4_t a) {
7732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_u32(a);
7733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_u64
7736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_u64(uint64x2_t a) {
7737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_u64(a);
7738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_f16
7741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_f16(float16x8_t a) {
7742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_f16(a);
7743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_f32
7746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_f32(float32x4_t a) {
7747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_f32(a);
7748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_p8
7751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_p8(poly8x16_t a) {
7752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_p8(a);
7753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s16_p16
7756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vreinterpretq_s16_p16(poly16x8_t a) {
7757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s16_p16(a);
7758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_s8
7761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_s8(int8x16_t a) {
7762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_s8(a);
7763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_s16
7766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_s16(int16x8_t a) {
7767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_s16(a);
7768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_s64
7771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_s64(int64x2_t a) {
7772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_s64(a);
7773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_u8
7776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_u8(uint8x16_t a) {
7777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_u8(a);
7778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_u16
7781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_u16(uint16x8_t a) {
7782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_u16(a);
7783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_u32
7786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_u32(uint32x4_t a) {
7787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_u32(a);
7788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_u64
7791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_u64(uint64x2_t a) {
7792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_u64(a);
7793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_f16
7796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_f16(float16x8_t a) {
7797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_f16(a);
7798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_f32
7801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_f32(float32x4_t a) {
7802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_f32(a);
7803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_p8
7806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_p8(poly8x16_t a) {
7807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_p8(a);
7808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s32_p16
7811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vreinterpretq_s32_p16(poly16x8_t a) {
7812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s32_p16(a);
7813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_s8
7816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_s8(int8x16_t a) {
7817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_s8(a);
7818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_s16
7821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_s16(int16x8_t a) {
7822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_s16(a);
7823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_s32
7826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_s32(int32x4_t a) {
7827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_s32(a);
7828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_u8
7831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_u8(uint8x16_t a) {
7832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_u8(a);
7833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_u16
7836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_u16(uint16x8_t a) {
7837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_u16(a);
7838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_u32
7841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_u32(uint32x4_t a) {
7842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_u32(a);
7843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_u64
7846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_u64(uint64x2_t a) {
7847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_u64(a);
7848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_f16
7851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_f16(float16x8_t a) {
7852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_f16(a);
7853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_f32
7856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_f32(float32x4_t a) {
7857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_f32(a);
7858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_p8
7861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_p8(poly8x16_t a) {
7862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_p8(a);
7863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_s64_p16
7866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vreinterpretq_s64_p16(poly16x8_t a) {
7867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_s64_p16(a);
7868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_s8
7871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_s8(int8x16_t a) {
7872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_s8(a);
7873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_s16
7876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_s16(int16x8_t a) {
7877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_s16(a);
7878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_s32
7881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_s32(int32x4_t a) {
7882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_s32(a);
7883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_s64
7886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_s64(int64x2_t a) {
7887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_s64(a);
7888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_u16
7891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_u16(uint16x8_t a) {
7892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_u16(a);
7893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_u32
7896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_u32(uint32x4_t a) {
7897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_u32(a);
7898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_u64
7901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_u64(uint64x2_t a) {
7902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_u64(a);
7903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_f16
7906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_f16(float16x8_t a) {
7907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_f16(a);
7908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_f32
7911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_f32(float32x4_t a) {
7912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_f32(a);
7913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_p8
7916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_p8(poly8x16_t a) {
7917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_p8(a);
7918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u8_p16
7921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vreinterpretq_u8_p16(poly16x8_t a) {
7922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u8_p16(a);
7923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_s8
7926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_s8(int8x16_t a) {
7927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_s8(a);
7928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_s16
7931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_s16(int16x8_t a) {
7932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_s16(a);
7933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_s32
7936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_s32(int32x4_t a) {
7937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_s32(a);
7938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_s64
7941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_s64(int64x2_t a) {
7942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_s64(a);
7943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_u8
7946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_u8(uint8x16_t a) {
7947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_u8(a);
7948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_u32
7951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_u32(uint32x4_t a) {
7952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_u32(a);
7953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_u64
7956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_u64(uint64x2_t a) {
7957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_u64(a);
7958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_f16
7961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_f16(float16x8_t a) {
7962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_f16(a);
7963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_f32
7966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_f32(float32x4_t a) {
7967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_f32(a);
7968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_p8
7971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_p8(poly8x16_t a) {
7972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_p8(a);
7973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u16_p16
7976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vreinterpretq_u16_p16(poly16x8_t a) {
7977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u16_p16(a);
7978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_s8
7981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_s8(int8x16_t a) {
7982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_s8(a);
7983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_s16
7986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_s16(int16x8_t a) {
7987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_s16(a);
7988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_s32
7991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_s32(int32x4_t a) {
7992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_s32(a);
7993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
7995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_s64
7996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_s64(int64x2_t a) {
7997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_s64(a);
7998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
7999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_u8
8001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_u8(uint8x16_t a) {
8002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_u8(a);
8003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_u16
8006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_u16(uint16x8_t a) {
8007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_u16(a);
8008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_u64
8011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_u64(uint64x2_t a) {
8012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_u64(a);
8013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_f16
8016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_f16(float16x8_t a) {
8017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_f16(a);
8018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_f32
8021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_f32(float32x4_t a) {
8022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_f32(a);
8023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_p8
8026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_p8(poly8x16_t a) {
8027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_p8(a);
8028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u32_p16
8031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vreinterpretq_u32_p16(poly16x8_t a) {
8032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u32_p16(a);
8033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_s8
8036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_s8(int8x16_t a) {
8037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_s8(a);
8038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_s16
8041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_s16(int16x8_t a) {
8042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_s16(a);
8043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_s32
8046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_s32(int32x4_t a) {
8047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_s32(a);
8048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_s64
8051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_s64(int64x2_t a) {
8052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_s64(a);
8053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_u8
8056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_u8(uint8x16_t a) {
8057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_u8(a);
8058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_u16
8061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_u16(uint16x8_t a) {
8062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_u16(a);
8063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_u32
8066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_u32(uint32x4_t a) {
8067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_u32(a);
8068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_f16
8071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_f16(float16x8_t a) {
8072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_f16(a);
8073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_f32
8076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_f32(float32x4_t a) {
8077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_f32(a);
8078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_p8
8081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_p8(poly8x16_t a) {
8082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_p8(a);
8083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_u64_p16
8086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vreinterpretq_u64_p16(poly16x8_t a) {
8087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_u64_p16(a);
8088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_s8
8091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_s8(int8x16_t a) {
8092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_s8(a);
8093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_s16
8096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_s16(int16x8_t a) {
8097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_s16(a);
8098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_s32
8101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_s32(int32x4_t a) {
8102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_s32(a);
8103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_s64
8106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_s64(int64x2_t a) {
8107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_s64(a);
8108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_u8
8111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_u8(uint8x16_t a) {
8112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_u8(a);
8113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_u16
8116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_u16(uint16x8_t a) {
8117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_u16(a);
8118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_u32
8121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_u32(uint32x4_t a) {
8122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_u32(a);
8123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_u64
8126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_u64(uint64x2_t a) {
8127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_u64(a);
8128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_f32
8131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_f32(float32x4_t a) {
8132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_f32(a);
8133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_p8
8136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_p8(poly8x16_t a) {
8137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_p8(a);
8138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f16_p16
8141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat16x8_t test_vreinterpretq_f16_p16(poly16x8_t a) {
8142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f16_p16(a);
8143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_s8
8146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_s8(int8x16_t a) {
8147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_s8(a);
8148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_s16
8151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_s16(int16x8_t a) {
8152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_s16(a);
8153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_s32
8156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_s32(int32x4_t a) {
8157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_s32(a);
8158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_s64
8161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_s64(int64x2_t a) {
8162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_s64(a);
8163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_u8
8166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_u8(uint8x16_t a) {
8167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_u8(a);
8168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_u16
8171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_u16(uint16x8_t a) {
8172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_u16(a);
8173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_u32
8176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_u32(uint32x4_t a) {
8177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_u32(a);
8178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_u64
8181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_u64(uint64x2_t a) {
8182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_u64(a);
8183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_f16
8186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_f16(float16x8_t a) {
8187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_f16(a);
8188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_p8
8191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_p8(poly8x16_t a) {
8192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_p8(a);
8193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_f32_p16
8196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vreinterpretq_f32_p16(poly16x8_t a) {
8197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_f32_p16(a);
8198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_s8
8201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_s8(int8x16_t a) {
8202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_s8(a);
8203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_s16
8206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_s16(int16x8_t a) {
8207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_s16(a);
8208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_s32
8211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_s32(int32x4_t a) {
8212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_s32(a);
8213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_s64
8216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_s64(int64x2_t a) {
8217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_s64(a);
8218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_u8
8221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_u8(uint8x16_t a) {
8222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_u8(a);
8223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_u16
8226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_u16(uint16x8_t a) {
8227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_u16(a);
8228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_u32
8231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_u32(uint32x4_t a) {
8232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_u32(a);
8233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_u64
8236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_u64(uint64x2_t a) {
8237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_u64(a);
8238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_f16
8241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_f16(float16x8_t a) {
8242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_f16(a);
8243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_f32
8246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_f32(float32x4_t a) {
8247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_f32(a);
8248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p8_p16
8251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vreinterpretq_p8_p16(poly16x8_t a) {
8252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p8_p16(a);
8253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_s8
8256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_s8(int8x16_t a) {
8257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_s8(a);
8258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_s16
8261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_s16(int16x8_t a) {
8262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_s16(a);
8263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_s32
8266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_s32(int32x4_t a) {
8267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_s32(a);
8268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_s64
8271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_s64(int64x2_t a) {
8272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_s64(a);
8273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_u8
8276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_u8(uint8x16_t a) {
8277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_u8(a);
8278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_u16
8281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_u16(uint16x8_t a) {
8282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_u16(a);
8283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_u32
8286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_u32(uint32x4_t a) {
8287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_u32(a);
8288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_u64
8291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_u64(uint64x2_t a) {
8292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_u64(a);
8293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_f16
8296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_f16(float16x8_t a) {
8297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_f16(a);
8298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_f32
8301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_f32(float32x4_t a) {
8302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_f32(a);
8303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vreinterpretq_p16_p8
8306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vreinterpretq_p16_p8(poly8x16_t a) {
8307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vreinterpretq_p16_p8(a);
8308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev16_s8
8312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev16.8 d{{[0-9]+}}, d{{[0-9]+}}
8313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vrev16_s8(int8x8_t a) {
8314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev16_s8(a);
8315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev16_u8
8318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev16.8 d{{[0-9]+}}, d{{[0-9]+}}
8319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vrev16_u8(uint8x8_t a) {
8320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev16_u8(a);
8321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev16_p8
8324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev16.8 d{{[0-9]+}}, d{{[0-9]+}}
8325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vrev16_p8(poly8x8_t a) {
8326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev16_p8(a);
8327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev16q_s8
8330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev16.8 q{{[0-9]+}}, q{{[0-9]+}}
8331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vrev16q_s8(int8x16_t a) {
8332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev16q_s8(a);
8333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev16q_u8
8336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev16.8 q{{[0-9]+}}, q{{[0-9]+}}
8337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vrev16q_u8(uint8x16_t a) {
8338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev16q_u8(a);
8339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev16q_p8
8342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev16.8 q{{[0-9]+}}, q{{[0-9]+}}
8343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vrev16q_p8(poly8x16_t a) {
8344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev16q_p8(a);
8345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32_s8
8349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.8 d{{[0-9]+}}, d{{[0-9]+}}
8350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vrev32_s8(int8x8_t a) {
8351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32_s8(a);
8352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32_s16
8355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.16 d{{[0-9]+}}, d{{[0-9]+}}
8356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vrev32_s16(int16x4_t a) {
8357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32_s16(a);
8358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32_u8
8361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.8 d{{[0-9]+}}, d{{[0-9]+}}
8362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vrev32_u8(uint8x8_t a) {
8363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32_u8(a);
8364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32_u16
8367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.16 d{{[0-9]+}}, d{{[0-9]+}}
8368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vrev32_u16(uint16x4_t a) {
8369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32_u16(a);
8370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32_p8
8373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.8 d{{[0-9]+}}, d{{[0-9]+}}
8374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vrev32_p8(poly8x8_t a) {
8375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32_p8(a);
8376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32_p16
8379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.16 d{{[0-9]+}}, d{{[0-9]+}}
8380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vrev32_p16(poly16x4_t a) {
8381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32_p16(a);
8382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32q_s8
8385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.8 q{{[0-9]+}}, q{{[0-9]+}}
8386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vrev32q_s8(int8x16_t a) {
8387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32q_s8(a);
8388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32q_s16
8391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.16 q{{[0-9]+}}, q{{[0-9]+}}
8392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vrev32q_s16(int16x8_t a) {
8393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32q_s16(a);
8394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32q_u8
8397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.8 q{{[0-9]+}}, q{{[0-9]+}}
8398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vrev32q_u8(uint8x16_t a) {
8399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32q_u8(a);
8400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32q_u16
8403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.16 q{{[0-9]+}}, q{{[0-9]+}}
8404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vrev32q_u16(uint16x8_t a) {
8405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32q_u16(a);
8406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32q_p8
8409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.8 q{{[0-9]+}}, q{{[0-9]+}}
8410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vrev32q_p8(poly8x16_t a) {
8411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32q_p8(a);
8412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev32q_p16
8415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev32.16 q{{[0-9]+}}, q{{[0-9]+}}
8416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vrev32q_p16(poly16x8_t a) {
8417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev32q_p16(a);
8418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64_s8
8422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.8 d{{[0-9]+}}, d{{[0-9]+}}
8423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vrev64_s8(int8x8_t a) {
8424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64_s8(a);
8425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64_s16
8428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.16 d{{[0-9]+}}, d{{[0-9]+}}
8429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vrev64_s16(int16x4_t a) {
8430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64_s16(a);
8431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64_s32
8434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.32 d{{[0-9]+}}, d{{[0-9]+}}
8435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vrev64_s32(int32x2_t a) {
8436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64_s32(a);
8437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64_u8
8440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.8 d{{[0-9]+}}, d{{[0-9]+}}
8441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vrev64_u8(uint8x8_t a) {
8442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64_u8(a);
8443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64_u16
8446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.16 d{{[0-9]+}}, d{{[0-9]+}}
8447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vrev64_u16(uint16x4_t a) {
8448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64_u16(a);
8449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64_u32
8452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.32 d{{[0-9]+}}, d{{[0-9]+}}
8453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vrev64_u32(uint32x2_t a) {
8454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64_u32(a);
8455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64_p8
8458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.8 d{{[0-9]+}}, d{{[0-9]+}}
8459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vrev64_p8(poly8x8_t a) {
8460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64_p8(a);
8461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64_p16
8464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.16 d{{[0-9]+}}, d{{[0-9]+}}
8465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vrev64_p16(poly16x4_t a) {
8466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64_p16(a);
8467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64_f32
8470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.32 d{{[0-9]+}}, d{{[0-9]+}}
8471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vrev64_f32(float32x2_t a) {
8472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64_f32(a);
8473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64q_s8
8476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.8 q{{[0-9]+}}, q{{[0-9]+}}
8477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vrev64q_s8(int8x16_t a) {
8478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64q_s8(a);
8479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64q_s16
8482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.16 q{{[0-9]+}}, q{{[0-9]+}}
8483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vrev64q_s16(int16x8_t a) {
8484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64q_s16(a);
8485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64q_s32
8488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.32 q{{[0-9]+}}, q{{[0-9]+}}
8489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vrev64q_s32(int32x4_t a) {
8490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64q_s32(a);
8491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64q_u8
8494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.8 q{{[0-9]+}}, q{{[0-9]+}}
8495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vrev64q_u8(uint8x16_t a) {
8496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64q_u8(a);
8497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64q_u16
8500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.16 q{{[0-9]+}}, q{{[0-9]+}}
8501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vrev64q_u16(uint16x8_t a) {
8502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64q_u16(a);
8503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64q_u32
8506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.32 q{{[0-9]+}}, q{{[0-9]+}}
8507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vrev64q_u32(uint32x4_t a) {
8508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64q_u32(a);
8509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64q_p8
8512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.8 q{{[0-9]+}}, q{{[0-9]+}}
8513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vrev64q_p8(poly8x16_t a) {
8514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64q_p8(a);
8515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64q_p16
8518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.16 q{{[0-9]+}}, q{{[0-9]+}}
8519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vrev64q_p16(poly16x8_t a) {
8520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64q_p16(a);
8521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrev64q_f32
8524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrev64.32 q{{[0-9]+}}, q{{[0-9]+}}
8525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vrev64q_f32(float32x4_t a) {
8526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrev64q_f32(a);
8527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhadd_s8
8531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vrhadd_s8(int8x8_t a, int8x8_t b) {
8533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhadd_s8(a, b);
8534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhadd_s16
8537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vrhadd_s16(int16x4_t a, int16x4_t b) {
8539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhadd_s16(a, b);
8540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhadd_s32
8543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vrhadd_s32(int32x2_t a, int32x2_t b) {
8545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhadd_s32(a, b);
8546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhadd_u8
8549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vrhadd_u8(uint8x8_t a, uint8x8_t b) {
8551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhadd_u8(a, b);
8552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhadd_u16
8555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vrhadd_u16(uint16x4_t a, uint16x4_t b) {
8557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhadd_u16(a, b);
8558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhadd_u32
8561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vrhadd_u32(uint32x2_t a, uint32x2_t b) {
8563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhadd_u32(a, b);
8564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhaddq_s8
8567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vrhaddq_s8(int8x16_t a, int8x16_t b) {
8569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhaddq_s8(a, b);
8570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhaddq_s16
8573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vrhaddq_s16(int16x8_t a, int16x8_t b) {
8575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhaddq_s16(a, b);
8576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhaddq_s32
8579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vrhaddq_s32(int32x4_t a, int32x4_t b) {
8581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhaddq_s32(a, b);
8582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhaddq_u8
8585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vrhaddq_u8(uint8x16_t a, uint8x16_t b) {
8587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhaddq_u8(a, b);
8588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhaddq_u16
8591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vrhaddq_u16(uint16x8_t a, uint16x8_t b) {
8593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhaddq_u16(a, b);
8594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrhaddq_u32
8597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrhadd.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vrhaddq_u32(uint32x4_t a, uint32x4_t b) {
8599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrhaddq_u32(a, b);
8600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshl_s8
8604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vrshl_s8(int8x8_t a, int8x8_t b) {
8606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshl_s8(a, b);
8607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshl_s16
8610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vrshl_s16(int16x4_t a, int16x4_t b) {
8612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshl_s16(a, b);
8613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshl_s32
8616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vrshl_s32(int32x2_t a, int32x2_t b) {
8618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshl_s32(a, b);
8619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshl_s64
8622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.s64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vrshl_s64(int64x1_t a, int64x1_t b) {
8624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshl_s64(a, b);
8625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshl_u8
8628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vrshl_u8(uint8x8_t a, int8x8_t b) {
8630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshl_u8(a, b);
8631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshl_u16
8634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vrshl_u16(uint16x4_t a, int16x4_t b) {
8636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshl_u16(a, b);
8637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshl_u32
8640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vrshl_u32(uint32x2_t a, int32x2_t b) {
8642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshl_u32(a, b);
8643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshl_u64
8646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.u64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vrshl_u64(uint64x1_t a, int64x1_t b) {
8648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshl_u64(a, b);
8649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshlq_s8
8652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vrshlq_s8(int8x16_t a, int8x16_t b) {
8654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshlq_s8(a, b);
8655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshlq_s16
8658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vrshlq_s16(int16x8_t a, int16x8_t b) {
8660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshlq_s16(a, b);
8661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshlq_s32
8664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vrshlq_s32(int32x4_t a, int32x4_t b) {
8666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshlq_s32(a, b);
8667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshlq_s64
8670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.s64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vrshlq_s64(int64x2_t a, int64x2_t b) {
8672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshlq_s64(a, b);
8673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshlq_u8
8676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vrshlq_u8(uint8x16_t a, int8x16_t b) {
8678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshlq_u8(a, b);
8679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshlq_u16
8682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vrshlq_u16(uint16x8_t a, int16x8_t b) {
8684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshlq_u16(a, b);
8685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshlq_u32
8688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vrshlq_u32(uint32x4_t a, int32x4_t b) {
8690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshlq_u32(a, b);
8691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshlq_u64
8694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshl.u64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vrshlq_u64(uint64x2_t a, int64x2_t b) {
8696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshlq_u64(a, b);
8697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrn_n_s16
8701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshrn.i16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vrshrn_n_s16(int16x8_t a) {
8703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrn_n_s16(a, 1);
8704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrn_n_s32
8707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshrn.i32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vrshrn_n_s32(int32x4_t a) {
8709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrn_n_s32(a, 1);
8710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrn_n_s64
8713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshrn.i64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vrshrn_n_s64(int64x2_t a) {
8715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrn_n_s64(a, 1);
8716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrn_n_u16
8719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshrn.i16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vrshrn_n_u16(uint16x8_t a) {
8721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrn_n_u16(a, 1);
8722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrn_n_u32
8725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshrn.i32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vrshrn_n_u32(uint32x4_t a) {
8727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrn_n_u32(a, 1);
8728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrn_n_u64
8731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshrn.i64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vrshrn_n_u64(uint64x2_t a) {
8733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrn_n_u64(a, 1);
8734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshr_n_s8
8738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.s8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vrshr_n_s8(int8x8_t a) {
8740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshr_n_s8(a, 1);
8741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshr_n_s16
8744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.s16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vrshr_n_s16(int16x4_t a) {
8746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshr_n_s16(a, 1);
8747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshr_n_s32
8750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.s32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vrshr_n_s32(int32x2_t a) {
8752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshr_n_s32(a, 1);
8753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshr_n_s64
8756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.s64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vrshr_n_s64(int64x1_t a) {
8758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshr_n_s64(a, 1);
8759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshr_n_u8
8762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.u8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vrshr_n_u8(uint8x8_t a) {
8764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshr_n_u8(a, 1);
8765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshr_n_u16
8768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.u16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vrshr_n_u16(uint16x4_t a) {
8770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshr_n_u16(a, 1);
8771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshr_n_u32
8774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.u32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vrshr_n_u32(uint32x2_t a) {
8776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshr_n_u32(a, 1);
8777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshr_n_u64
8780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.u64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vrshr_n_u64(uint64x1_t a) {
8782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshr_n_u64(a, 1);
8783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrq_n_s8
8786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.s8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vrshrq_n_s8(int8x16_t a) {
8788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrq_n_s8(a, 1);
8789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrq_n_s16
8792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.s16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vrshrq_n_s16(int16x8_t a) {
8794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrq_n_s16(a, 1);
8795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrq_n_s32
8798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.s32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vrshrq_n_s32(int32x4_t a) {
8800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrq_n_s32(a, 1);
8801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrq_n_s64
8804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.s64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vrshrq_n_s64(int64x2_t a) {
8806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrq_n_s64(a, 1);
8807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrq_n_u8
8810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.u8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vrshrq_n_u8(uint8x16_t a) {
8812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrq_n_u8(a, 1);
8813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrq_n_u16
8816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.u16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vrshrq_n_u16(uint16x8_t a) {
8818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrq_n_u16(a, 1);
8819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrq_n_u32
8822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.u32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vrshrq_n_u32(uint32x4_t a) {
8824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrq_n_u32(a, 1);
8825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrshrq_n_u64
8828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrshr.u64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vrshrq_n_u64(uint64x2_t a) {
8830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrshrq_n_u64(a, 1);
8831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsqrte_f32
8835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsqrte.f32 d{{[0-9]+}}, d{{[0-9]+}}
8836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vrsqrte_f32(float32x2_t a) {
8837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsqrte_f32(a);
8838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsqrte_u32
8841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsqrte.u32 d{{[0-9]+}}, d{{[0-9]+}}
8842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vrsqrte_u32(uint32x2_t a) {
8843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsqrte_u32(a);
8844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsqrteq_f32
8847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsqrte.f32 q{{[0-9]+}}, q{{[0-9]+}}
8848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vrsqrteq_f32(float32x4_t a) {
8849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsqrteq_f32(a);
8850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsqrteq_u32
8853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsqrte.u32 q{{[0-9]+}}, q{{[0-9]+}}
8854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vrsqrteq_u32(uint32x4_t a) {
8855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsqrteq_u32(a);
8856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsqrts_f32
8860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsqrts.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
8861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vrsqrts_f32(float32x2_t a, float32x2_t b) {
8862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsqrts_f32(a, b);
8863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsqrtsq_f32
8866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsqrts.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vrsqrtsq_f32(float32x4_t a, float32x4_t b) {
8868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsqrtsq_f32(a, b);
8869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsra_n_s8
8873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.s8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vrsra_n_s8(int8x8_t a, int8x8_t b) {
8875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsra_n_s8(a, b, 1);
8876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsra_n_s16
8879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.s16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vrsra_n_s16(int16x4_t a, int16x4_t b) {
8881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsra_n_s16(a, b, 1);
8882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsra_n_s32
8885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.s32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vrsra_n_s32(int32x2_t a, int32x2_t b) {
8887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsra_n_s32(a, b, 1);
8888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsra_n_s64
8891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.s64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vrsra_n_s64(int64x1_t a, int64x1_t b) {
8893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsra_n_s64(a, b, 1);
8894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsra_n_u8
8897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.u8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vrsra_n_u8(uint8x8_t a, uint8x8_t b) {
8899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsra_n_u8(a, b, 1);
8900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsra_n_u16
8903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.u16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vrsra_n_u16(uint16x4_t a, uint16x4_t b) {
8905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsra_n_u16(a, b, 1);
8906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsra_n_u32
8909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.u32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vrsra_n_u32(uint32x2_t a, uint32x2_t b) {
8911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsra_n_u32(a, b, 1);
8912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsra_n_u64
8915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.u64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
8916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vrsra_n_u64(uint64x1_t a, uint64x1_t b) {
8917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsra_n_u64(a, b, 1);
8918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsraq_n_s8
8921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.s8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vrsraq_n_s8(int8x16_t a, int8x16_t b) {
8923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsraq_n_s8(a, b, 1);
8924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsraq_n_s16
8927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.s16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vrsraq_n_s16(int16x8_t a, int16x8_t b) {
8929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsraq_n_s16(a, b, 1);
8930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsraq_n_s32
8933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.s32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vrsraq_n_s32(int32x4_t a, int32x4_t b) {
8935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsraq_n_s32(a, b, 1);
8936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsraq_n_s64
8939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.s64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vrsraq_n_s64(int64x2_t a, int64x2_t b) {
8941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsraq_n_s64(a, b, 1);
8942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsraq_n_u8
8945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.u8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vrsraq_n_u8(uint8x16_t a, uint8x16_t b) {
8947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsraq_n_u8(a, b, 1);
8948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsraq_n_u16
8951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.u16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vrsraq_n_u16(uint16x8_t a, uint16x8_t b) {
8953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsraq_n_u16(a, b, 1);
8954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsraq_n_u32
8957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.u32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vrsraq_n_u32(uint32x4_t a, uint32x4_t b) {
8959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsraq_n_u32(a, b, 1);
8960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsraq_n_u64
8963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsra.u64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
8964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vrsraq_n_u64(uint64x2_t a, uint64x2_t b) {
8965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsraq_n_u64(a, b, 1);
8966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsubhn_s16
8970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsubhn.i16 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vrsubhn_s16(int16x8_t a, int16x8_t b) {
8972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsubhn_s16(a, b);
8973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsubhn_s32
8976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsubhn.i32 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vrsubhn_s32(int32x4_t a, int32x4_t b) {
8978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsubhn_s32(a, b);
8979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsubhn_s64
8982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsubhn.i64 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vrsubhn_s64(int64x2_t a, int64x2_t b) {
8984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsubhn_s64(a, b);
8985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsubhn_u16
8988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsubhn.i16 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vrsubhn_u16(uint16x8_t a, uint16x8_t b) {
8990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsubhn_u16(a, b);
8991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsubhn_u32
8994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsubhn.i32 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
8995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vrsubhn_u32(uint32x4_t a, uint32x4_t b) {
8996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsubhn_u32(a, b);
8997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
8998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
8999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vrsubhn_u64
9000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vrsubhn.i64 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
9001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vrsubhn_u64(uint64x2_t a, uint64x2_t b) {
9002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vrsubhn_u64(a, b);
9003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_u8
9007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vset_lane_u8(uint8_t a, uint8x8_t b) {
9009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_u8(a, b, 7);
9010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_u16
9013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vset_lane_u16(uint16_t a, uint16x4_t b) {
9015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_u16(a, b, 3);
9016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_u32
9019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vset_lane_u32(uint32_t a, uint32x2_t b) {
9021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_u32(a, b, 1);
9022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_s8
9025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vset_lane_s8(int8_t a, int8x8_t b) {
9027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_s8(a, b, 7);
9028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_s16
9031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vset_lane_s16(int16_t a, int16x4_t b) {
9033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_s16(a, b, 3);
9034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_s32
9037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vset_lane_s32(int32_t a, int32x2_t b) {
9039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_s32(a, b, 1);
9040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_p8
9043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vset_lane_p8(poly8_t a, poly8x8_t b) {
9045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_p8(a, b, 7);
9046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_p16
9049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vset_lane_p16(poly16_t a, poly16x4_t b) {
9051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_p16(a, b, 3);
9052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_f32
9055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vset_lane_f32(float32_t a, float32x2_t b) {
9057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_f32(a, b, 1);
9058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_u8
9061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vsetq_lane_u8(uint8_t a, uint8x16_t b) {
9063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_u8(a, b, 15);
9064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_u16
9067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vsetq_lane_u16(uint16_t a, uint16x8_t b) {
9069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_u16(a, b, 7);
9070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_u32
9073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vsetq_lane_u32(uint32_t a, uint32x4_t b) {
9075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_u32(a, b, 3);
9076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_s8
9079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vsetq_lane_s8(int8_t a, int8x16_t b) {
9081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_s8(a, b, 15);
9082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_s16
9085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vsetq_lane_s16(int16_t a, int16x8_t b) {
9087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_s16(a, b, 7);
9088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_s32
9091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vsetq_lane_s32(int32_t a, int32x4_t b) {
9093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_s32(a, b, 3);
9094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_p8
9097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vsetq_lane_p8(poly8_t a, poly8x16_t b) {
9099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_p8(a, b, 15);
9100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_p16
9103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vsetq_lane_p16(poly16_t a, poly16x8_t b) {
9105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_p16(a, b, 7);
9106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_f32
9109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vsetq_lane_f32(float32_t a, float32x4_t b) {
9111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_f32(a, b, 3);
9112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_s64
9115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vset_lane_s64(int64_t a, int64x1_t b) {
9117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_s64(a, b, 0);
9118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vset_lane_u64
9121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vset_lane_u64(uint64_t a, uint64x1_t b) {
9123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vset_lane_u64(a, b, 0);
9124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_s64
9127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vsetq_lane_s64(int64_t a, int64x2_t b) {
9129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_s64(a, b, 1);
9130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsetq_lane_u64
9133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vmov
9134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vsetq_lane_u64(uint64_t a, uint64x2_t b) {
9135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsetq_lane_u64(a, b, 1);
9136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_s8
9140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.s8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
9141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vshl_s8(int8x8_t a, int8x8_t b) {
9142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_s8(a, b);
9143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_s16
9146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.s16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
9147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vshl_s16(int16x4_t a, int16x4_t b) {
9148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_s16(a, b);
9149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_s32
9152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.s32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
9153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vshl_s32(int32x2_t a, int32x2_t b) {
9154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_s32(a, b);
9155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_s64
9158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.s64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
9159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vshl_s64(int64x1_t a, int64x1_t b) {
9160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_s64(a, b);
9161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_u8
9164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.u8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
9165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vshl_u8(uint8x8_t a, int8x8_t b) {
9166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_u8(a, b);
9167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_u16
9170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.u16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
9171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vshl_u16(uint16x4_t a, int16x4_t b) {
9172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_u16(a, b);
9173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_u32
9176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.u32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
9177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vshl_u32(uint32x2_t a, int32x2_t b) {
9178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_u32(a, b);
9179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_u64
9182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.u64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
9183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vshl_u64(uint64x1_t a, int64x1_t b) {
9184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_u64(a, b);
9185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_s8
9188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.s8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
9189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vshlq_s8(int8x16_t a, int8x16_t b) {
9190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_s8(a, b);
9191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_s16
9194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.s16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
9195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vshlq_s16(int16x8_t a, int16x8_t b) {
9196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_s16(a, b);
9197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_s32
9200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.s32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
9201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vshlq_s32(int32x4_t a, int32x4_t b) {
9202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_s32(a, b);
9203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_s64
9206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.s64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
9207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vshlq_s64(int64x2_t a, int64x2_t b) {
9208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_s64(a, b);
9209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_u8
9212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.u8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
9213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vshlq_u8(uint8x16_t a, int8x16_t b) {
9214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_u8(a, b);
9215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_u16
9218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.u16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
9219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vshlq_u16(uint16x8_t a, int16x8_t b) {
9220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_u16(a, b);
9221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_u32
9224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.u32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
9225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vshlq_u32(uint32x4_t a, int32x4_t b) {
9226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_u32(a, b);
9227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_u64
9230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.u64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
9231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vshlq_u64(uint64x2_t a, int64x2_t b) {
9232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_u64(a, b);
9233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshll_n_s8
9237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshll.s8 q{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vshll_n_s8(int8x8_t a) {
9239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshll_n_s8(a, 1);
9240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshll_n_s16
9243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshll.s16 q{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vshll_n_s16(int16x4_t a) {
9245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshll_n_s16(a, 1);
9246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshll_n_s32
9249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshll.s32 q{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vshll_n_s32(int32x2_t a) {
9251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshll_n_s32(a, 1);
9252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshll_n_u8
9255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshll.u8 q{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vshll_n_u8(uint8x8_t a) {
9257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshll_n_u8(a, 1);
9258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshll_n_u16
9261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshll.u16 q{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vshll_n_u16(uint16x4_t a) {
9263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshll_n_u16(a, 1);
9264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshll_n_u32
9267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshll.u32 q{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vshll_n_u32(uint32x2_t a) {
9269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshll_n_u32(a, 1);
9270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_n_s8
9274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vshl_n_s8(int8x8_t a) {
9276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_n_s8(a, 1);
9277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_n_s16
9280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vshl_n_s16(int16x4_t a) {
9282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_n_s16(a, 1);
9283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_n_s32
9286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vshl_n_s32(int32x2_t a) {
9288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_n_s32(a, 1);
9289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_n_s64
9292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vshl_n_s64(int64x1_t a) {
9294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_n_s64(a, 1);
9295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_n_u8
9298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vshl_n_u8(uint8x8_t a) {
9300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_n_u8(a, 1);
9301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_n_u16
9304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vshl_n_u16(uint16x4_t a) {
9306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_n_u16(a, 1);
9307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_n_u32
9310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vshl_n_u32(uint32x2_t a) {
9312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_n_u32(a, 1);
9313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshl_n_u64
9316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vshl_n_u64(uint64x1_t a) {
9318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshl_n_u64(a, 1);
9319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_n_s8
9322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vshlq_n_s8(int8x16_t a) {
9324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_n_s8(a, 1);
9325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_n_s16
9328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vshlq_n_s16(int16x8_t a) {
9330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_n_s16(a, 1);
9331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_n_s32
9334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vshlq_n_s32(int32x4_t a) {
9336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_n_s32(a, 1);
9337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_n_s64
9340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vshlq_n_s64(int64x2_t a) {
9342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_n_s64(a, 1);
9343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_n_u8
9346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vshlq_n_u8(uint8x16_t a) {
9348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_n_u8(a, 1);
9349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_n_u16
9352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vshlq_n_u16(uint16x8_t a) {
9354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_n_u16(a, 1);
9355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_n_u32
9358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vshlq_n_u32(uint32x4_t a) {
9360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_n_u32(a, 1);
9361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshlq_n_u64
9364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshl.i64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vshlq_n_u64(uint64x2_t a) {
9366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshlq_n_u64(a, 1);
9367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrn_n_s16
9371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshrn.i16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vshrn_n_s16(int16x8_t a) {
9373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrn_n_s16(a, 1);
9374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrn_n_s32
9377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshrn.i32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vshrn_n_s32(int32x4_t a) {
9379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrn_n_s32(a, 1);
9380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrn_n_s64
9383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshrn.i64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vshrn_n_s64(int64x2_t a) {
9385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrn_n_s64(a, 1);
9386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrn_n_u16
9389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshrn.i16 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vshrn_n_u16(uint16x8_t a) {
9391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrn_n_u16(a, 1);
9392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrn_n_u32
9395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshrn.i32 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vshrn_n_u32(uint32x4_t a) {
9397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrn_n_u32(a, 1);
9398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrn_n_u64
9401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshrn.i64 d{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vshrn_n_u64(uint64x2_t a) {
9403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrn_n_u64(a, 1);
9404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshr_n_s8
9408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.s8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vshr_n_s8(int8x8_t a) {
9410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshr_n_s8(a, 1);
9411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshr_n_s16
9414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.s16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vshr_n_s16(int16x4_t a) {
9416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshr_n_s16(a, 1);
9417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshr_n_s32
9420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.s32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vshr_n_s32(int32x2_t a) {
9422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshr_n_s32(a, 1);
9423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshr_n_s64
9426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.s64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vshr_n_s64(int64x1_t a) {
9428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshr_n_s64(a, 1);
9429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshr_n_u8
9432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.u8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vshr_n_u8(uint8x8_t a) {
9434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshr_n_u8(a, 1);
9435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshr_n_u16
9438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.u16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vshr_n_u16(uint16x4_t a) {
9440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshr_n_u16(a, 1);
9441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshr_n_u32
9444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.u32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vshr_n_u32(uint32x2_t a) {
9446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshr_n_u32(a, 1);
9447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshr_n_u64
9450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.u64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vshr_n_u64(uint64x1_t a) {
9452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshr_n_u64(a, 1);
9453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrq_n_s8
9456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.s8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vshrq_n_s8(int8x16_t a) {
9458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrq_n_s8(a, 1);
9459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrq_n_s16
9462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.s16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vshrq_n_s16(int16x8_t a) {
9464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrq_n_s16(a, 1);
9465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrq_n_s32
9468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.s32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vshrq_n_s32(int32x4_t a) {
9470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrq_n_s32(a, 1);
9471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrq_n_s64
9474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.s64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vshrq_n_s64(int64x2_t a) {
9476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrq_n_s64(a, 1);
9477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrq_n_u8
9480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.u8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vshrq_n_u8(uint8x16_t a) {
9482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrq_n_u8(a, 1);
9483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrq_n_u16
9486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.u16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vshrq_n_u16(uint16x8_t a) {
9488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrq_n_u16(a, 1);
9489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrq_n_u32
9492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.u32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vshrq_n_u32(uint32x4_t a) {
9494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrq_n_u32(a, 1);
9495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vshrq_n_u64
9498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vshr.u64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vshrq_n_u64(uint64x2_t a) {
9500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vshrq_n_u64(a, 1);
9501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_s8
9505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vsli_n_s8(int8x8_t a, int8x8_t b) {
9507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_s8(a, b, 1);
9508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_s16
9511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vsli_n_s16(int16x4_t a, int16x4_t b) {
9513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_s16(a, b, 1);
9514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_s32
9517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vsli_n_s32(int32x2_t a, int32x2_t b) {
9519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_s32(a, b, 1);
9520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_s64
9523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vsli_n_s64(int64x1_t a, int64x1_t b) {
9525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_s64(a, b, 1);
9526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_u8
9529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vsli_n_u8(uint8x8_t a, uint8x8_t b) {
9531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_u8(a, b, 1);
9532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_u16
9535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vsli_n_u16(uint16x4_t a, uint16x4_t b) {
9537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_u16(a, b, 1);
9538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_u32
9541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vsli_n_u32(uint32x2_t a, uint32x2_t b) {
9543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_u32(a, b, 1);
9544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_u64
9547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vsli_n_u64(uint64x1_t a, uint64x1_t b) {
9549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_u64(a, b, 1);
9550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_p8
9553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vsli_n_p8(poly8x8_t a, poly8x8_t b) {
9555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_p8(a, b, 1);
9556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsli_n_p16
9559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vsli_n_p16(poly16x4_t a, poly16x4_t b) {
9561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsli_n_p16(a, b, 1);
9562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_s8
9565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vsliq_n_s8(int8x16_t a, int8x16_t b) {
9567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_s8(a, b, 1);
9568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_s16
9571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vsliq_n_s16(int16x8_t a, int16x8_t b) {
9573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_s16(a, b, 1);
9574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_s32
9577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vsliq_n_s32(int32x4_t a, int32x4_t b) {
9579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_s32(a, b, 1);
9580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_s64
9583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vsliq_n_s64(int64x2_t a, int64x2_t b) {
9585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_s64(a, b, 1);
9586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_u8
9589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vsliq_n_u8(uint8x16_t a, uint8x16_t b) {
9591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_u8(a, b, 1);
9592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_u16
9595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vsliq_n_u16(uint16x8_t a, uint16x8_t b) {
9597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_u16(a, b, 1);
9598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_u32
9601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vsliq_n_u32(uint32x4_t a, uint32x4_t b) {
9603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_u32(a, b, 1);
9604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_u64
9607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vsliq_n_u64(uint64x2_t a, uint64x2_t b) {
9609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_u64(a, b, 1);
9610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_p8
9613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vsliq_n_p8(poly8x16_t a, poly8x16_t b) {
9615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_p8(a, b, 1);
9616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsliq_n_p16
9619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsli.16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vsliq_n_p16(poly16x8_t a, poly16x8_t b) {
9621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsliq_n_p16(a, b, 1);
9622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsra_n_s8
9626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.s8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vsra_n_s8(int8x8_t a, int8x8_t b) {
9628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsra_n_s8(a, b, 1);
9629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsra_n_s16
9632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.s16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vsra_n_s16(int16x4_t a, int16x4_t b) {
9634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsra_n_s16(a, b, 1);
9635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsra_n_s32
9638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.s32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vsra_n_s32(int32x2_t a, int32x2_t b) {
9640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsra_n_s32(a, b, 1);
9641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsra_n_s64
9644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.s64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vsra_n_s64(int64x1_t a, int64x1_t b) {
9646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsra_n_s64(a, b, 1);
9647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsra_n_u8
9650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.u8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vsra_n_u8(uint8x8_t a, uint8x8_t b) {
9652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsra_n_u8(a, b, 1);
9653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsra_n_u16
9656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.u16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vsra_n_u16(uint16x4_t a, uint16x4_t b) {
9658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsra_n_u16(a, b, 1);
9659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsra_n_u32
9662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.u32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vsra_n_u32(uint32x2_t a, uint32x2_t b) {
9664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsra_n_u32(a, b, 1);
9665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsra_n_u64
9668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.u64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vsra_n_u64(uint64x1_t a, uint64x1_t b) {
9670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsra_n_u64(a, b, 1);
9671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsraq_n_s8
9674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.s8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vsraq_n_s8(int8x16_t a, int8x16_t b) {
9676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsraq_n_s8(a, b, 1);
9677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsraq_n_s16
9680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.s16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vsraq_n_s16(int16x8_t a, int16x8_t b) {
9682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsraq_n_s16(a, b, 1);
9683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsraq_n_s32
9686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.s32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vsraq_n_s32(int32x4_t a, int32x4_t b) {
9688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsraq_n_s32(a, b, 1);
9689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsraq_n_s64
9692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.s64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vsraq_n_s64(int64x2_t a, int64x2_t b) {
9694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsraq_n_s64(a, b, 1);
9695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsraq_n_u8
9698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.u8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vsraq_n_u8(uint8x16_t a, uint8x16_t b) {
9700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsraq_n_u8(a, b, 1);
9701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsraq_n_u16
9704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.u16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vsraq_n_u16(uint16x8_t a, uint16x8_t b) {
9706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsraq_n_u16(a, b, 1);
9707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsraq_n_u32
9710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.u32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vsraq_n_u32(uint32x4_t a, uint32x4_t b) {
9712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsraq_n_u32(a, b, 1);
9713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsraq_n_u64
9716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsra.u64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vsraq_n_u64(uint64x2_t a, uint64x2_t b) {
9718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsraq_n_u64(a, b, 1);
9719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_s8
9723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vsri_n_s8(int8x8_t a, int8x8_t b) {
9725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_s8(a, b, 1);
9726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_s16
9729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vsri_n_s16(int16x4_t a, int16x4_t b) {
9731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_s16(a, b, 1);
9732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_s32
9735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vsri_n_s32(int32x2_t a, int32x2_t b) {
9737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_s32(a, b, 1);
9738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_s64
9741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vsri_n_s64(int64x1_t a, int64x1_t b) {
9743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_s64(a, b, 1);
9744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_u8
9747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vsri_n_u8(uint8x8_t a, uint8x8_t b) {
9749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_u8(a, b, 1);
9750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_u16
9753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vsri_n_u16(uint16x4_t a, uint16x4_t b) {
9755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_u16(a, b, 1);
9756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_u32
9759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.32 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vsri_n_u32(uint32x2_t a, uint32x2_t b) {
9761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_u32(a, b, 1);
9762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_u64
9765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.64 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vsri_n_u64(uint64x1_t a, uint64x1_t b) {
9767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_u64(a, b, 1);
9768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_p8
9771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.8 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vsri_n_p8(poly8x8_t a, poly8x8_t b) {
9773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_p8(a, b, 1);
9774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsri_n_p16
9777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.16 d{{[0-9]+}}, d{{[0-9]+}}, #{{[0-9]+}}
9778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4_t test_vsri_n_p16(poly16x4_t a, poly16x4_t b) {
9779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsri_n_p16(a, b, 1);
9780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_s8
9783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vsriq_n_s8(int8x16_t a, int8x16_t b) {
9785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_s8(a, b, 1);
9786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_s16
9789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vsriq_n_s16(int16x8_t a, int16x8_t b) {
9791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_s16(a, b, 1);
9792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_s32
9795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vsriq_n_s32(int32x4_t a, int32x4_t b) {
9797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_s32(a, b, 1);
9798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_s64
9801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vsriq_n_s64(int64x2_t a, int64x2_t b) {
9803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_s64(a, b, 1);
9804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_u8
9807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vsriq_n_u8(uint8x16_t a, uint8x16_t b) {
9809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_u8(a, b, 1);
9810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_u16
9813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vsriq_n_u16(uint16x8_t a, uint16x8_t b) {
9815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_u16(a, b, 1);
9816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_u32
9819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.32 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vsriq_n_u32(uint32x4_t a, uint32x4_t b) {
9821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_u32(a, b, 1);
9822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_u64
9825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.64 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vsriq_n_u64(uint64x2_t a, uint64x2_t b) {
9827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_u64(a, b, 1);
9828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_p8
9831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.8 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16_t test_vsriq_n_p8(poly8x16_t a, poly8x16_t b) {
9833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_p8(a, b, 1);
9834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsriq_n_p16
9837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsri.16 q{{[0-9]+}}, q{{[0-9]+}}, #{{[0-9]+}}
9838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8_t test_vsriq_n_p16(poly16x8_t a, poly16x8_t b) {
9839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsriq_n_p16(a, b, 1);
9840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_u8
9844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_u8(uint8_t * a, uint8x16_t b) {
9846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_u8(a, b);
9847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_u16
9850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_u16(uint16_t * a, uint16x8_t b) {
9852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_u16(a, b);
9853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_u32
9856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_u32(uint32_t * a, uint32x4_t b) {
9858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_u32(a, b);
9859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_u64
9862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_u64(uint64_t * a, uint64x2_t b) {
9864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_u64(a, b);
9865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_s8
9868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_s8(int8_t * a, int8x16_t b) {
9870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_s8(a, b);
9871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_s16
9874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_s16(int16_t * a, int16x8_t b) {
9876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_s16(a, b);
9877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_s32
9880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_s32(int32_t * a, int32x4_t b) {
9882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_s32(a, b);
9883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_s64
9886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_s64(int64_t * a, int64x2_t b) {
9888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_s64(a, b);
9889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_f16
9892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_f16(float16_t * a, float16x8_t b) {
9894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_f16(a, b);
9895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_f32
9898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_f32(float32_t * a, float32x4_t b) {
9900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_f32(a, b);
9901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_p8
9904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_p8(poly8_t * a, poly8x16_t b) {
9906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_p8(a, b);
9907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_p16
9910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
9911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_p16(poly16_t * a, poly16x8_t b) {
9912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_p16(a, b);
9913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_u8
9916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_u8(uint8_t * a, uint8x8_t b) {
9918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_u8(a, b);
9919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_u16
9922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_u16(uint16_t * a, uint16x4_t b) {
9924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_u16(a, b);
9925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_u32
9928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_u32(uint32_t * a, uint32x2_t b) {
9930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_u32(a, b);
9931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_u64
9934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_u64(uint64_t * a, uint64x1_t b) {
9936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_u64(a, b);
9937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_s8
9940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_s8(int8_t * a, int8x8_t b) {
9942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_s8(a, b);
9943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_s16
9946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_s16(int16_t * a, int16x4_t b) {
9948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_s16(a, b);
9949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_s32
9952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_s32(int32_t * a, int32x2_t b) {
9954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_s32(a, b);
9955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_s64
9958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_s64(int64_t * a, int64x1_t b) {
9960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_s64(a, b);
9961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_f16
9964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_f16(float16_t * a, float16x4_t b) {
9966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_f16(a, b);
9967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_f32
9970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_f32(float32_t * a, float32x2_t b) {
9972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_f32(a, b);
9973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_p8
9976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_p8(poly8_t * a, poly8x8_t b) {
9978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_p8(a, b);
9979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_p16
9982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}}, [r{{[0-9]+}}]
9983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_p16(poly16_t * a, poly16x4_t b) {
9984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_p16(a, b);
9985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_u8
9989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
9990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_u8(uint8_t * a, uint8x16_t b) {
9991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_u8(a, b, 15);
9992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
9994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_u16
9995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
9996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_u16(uint16_t * a, uint16x8_t b) {
9997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_u16(a, b, 7);
9998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
9999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_u32
10001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
10002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_u32(uint32_t * a, uint32x4_t b) {
10003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_u32(a, b, 3);
10004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_u64
10007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{str|vstr|vmov}}
10008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_u64(uint64_t * a, uint64x2_t b) {
10009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_u64(a, b, 1);
10010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_s8
10013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_s8(int8_t * a, int8x16_t b) {
10015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_s8(a, b, 15);
10016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_s16
10019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
10020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_s16(int16_t * a, int16x8_t b) {
10021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_s16(a, b, 7);
10022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_s32
10025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
10026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_s32(int32_t * a, int32x4_t b) {
10027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_s32(a, b, 3);
10028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_s64
10031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{str|vstr|vmov}}
10032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_s64(int64_t * a, int64x2_t b) {
10033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_s64(a, b, 1);
10034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_f16
10037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
10038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_f16(float16_t * a, float16x8_t b) {
10039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_f16(a, b, 7);
10040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_f32
10043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
10044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_f32(float32_t * a, float32x4_t b) {
10045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_f32(a, b, 3);
10046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_p8
10049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_p8(poly8_t * a, poly8x16_t b) {
10051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_p8(a, b, 15);
10052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1q_lane_p16
10055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
10056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1q_lane_p16(poly16_t * a, poly16x8_t b) {
10057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1q_lane_p16(a, b, 7);
10058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_u8
10061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_u8(uint8_t * a, uint8x8_t b) {
10063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_u8(a, b, 7);
10064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_u16
10067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
10068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_u16(uint16_t * a, uint16x4_t b) {
10069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_u16(a, b, 3);
10070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_u32
10073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
10074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_u32(uint32_t * a, uint32x2_t b) {
10075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_u32(a, b, 1);
10076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_u64
10079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{str|vstr|vmov}}
10080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_u64(uint64_t * a, uint64x1_t b) {
10081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_u64(a, b, 0);
10082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_s8
10085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_s8(int8_t * a, int8x8_t b) {
10087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_s8(a, b, 7);
10088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_s16
10091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
10092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_s16(int16_t * a, int16x4_t b) {
10093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_s16(a, b, 3);
10094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_s32
10097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
10098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_s32(int32_t * a, int32x2_t b) {
10099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_s32(a, b, 1);
10100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_s64
10103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{str|vstr|vmov}}
10104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_s64(int64_t * a, int64x1_t b) {
10105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_s64(a, b, 0);
10106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_f16
10109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
10110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_f16(float16_t * a, float16x4_t b) {
10111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_f16(a, b, 3);
10112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_f32
10115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.32 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:32]
10116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_f32(float32_t * a, float32x2_t b) {
10117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_f32(a, b, 1);
10118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_p8
10121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.8 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_p8(poly8_t * a, poly8x8_t b) {
10123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_p8(a, b, 7);
10124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst1_lane_p16
10127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.16 {d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}:16]
10128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst1_lane_p16(poly16_t * a, poly16x4_t b) {
10129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst1_lane_p16(a, b, 3);
10130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_u8
10134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_u8(uint8_t * a, uint8x16x2_t b) {
10136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_u8(a, b);
10137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_u16
10140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_u16(uint16_t * a, uint16x8x2_t b) {
10142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_u16(a, b);
10143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_u32
10146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_u32(uint32_t * a, uint32x4x2_t b) {
10148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_u32(a, b);
10149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_s8
10152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_s8(int8_t * a, int8x16x2_t b) {
10154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_s8(a, b);
10155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_s16
10158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_s16(int16_t * a, int16x8x2_t b) {
10160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_s16(a, b);
10161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_s32
10164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_s32(int32_t * a, int32x4x2_t b) {
10166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_s32(a, b);
10167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_f16
10170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_f16(float16_t * a, float16x8x2_t b) {
10172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_f16(a, b);
10173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_f32
10176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_f32(float32_t * a, float32x4x2_t b) {
10178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_f32(a, b);
10179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_p8
10182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_p8(poly8_t * a, poly8x16x2_t b) {
10184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_p8(a, b);
10185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_p16
10188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_p16(poly16_t * a, poly16x8x2_t b) {
10190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_p16(a, b);
10191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_u8
10194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_u8(uint8_t * a, uint8x8x2_t b) {
10196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_u8(a, b);
10197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_u16
10200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_u16(uint16_t * a, uint16x4x2_t b) {
10202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_u16(a, b);
10203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_u32
10206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_u32(uint32_t * a, uint32x2x2_t b) {
10208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_u32(a, b);
10209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_u64
10212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64
10213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_u64(uint64_t * a, uint64x1x2_t b) {
10214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_u64(a, b);
10215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_s8
10218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_s8(int8_t * a, int8x8x2_t b) {
10220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_s8(a, b);
10221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_s16
10224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_s16(int16_t * a, int16x4x2_t b) {
10226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_s16(a, b);
10227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_s32
10230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_s32(int32_t * a, int32x2x2_t b) {
10232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_s32(a, b);
10233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_s64
10236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64
10237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_s64(int64_t * a, int64x1x2_t b) {
10238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_s64(a, b);
10239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_f16
10242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_f16(float16_t * a, float16x4x2_t b) {
10244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_f16(a, b);
10245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_f32
10248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_f32(float32_t * a, float32x2x2_t b) {
10250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_f32(a, b);
10251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_p8
10254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_p8(poly8_t * a, poly8x8x2_t b) {
10256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_p8(a, b);
10257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_p16
10260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_p16(poly16_t * a, poly16x4x2_t b) {
10262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_p16(a, b);
10263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_lane_u16
10267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_lane_u16(uint16_t * a, uint16x8x2_t b) {
10269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_lane_u16(a, b, 7);
10270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_lane_u32
10273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_lane_u32(uint32_t * a, uint32x4x2_t b) {
10275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_lane_u32(a, b, 3);
10276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_lane_s16
10279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_lane_s16(int16_t * a, int16x8x2_t b) {
10281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_lane_s16(a, b, 7);
10282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_lane_s32
10285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_lane_s32(int32_t * a, int32x4x2_t b) {
10287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_lane_s32(a, b, 3);
10288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_lane_f16
10291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_lane_f16(float16_t * a, float16x8x2_t b) {
10293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_lane_f16(a, b, 7);
10294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_lane_f32
10297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_lane_f32(float32_t * a, float32x4x2_t b) {
10299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_lane_f32(a, b, 3);
10300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2q_lane_p16
10303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2q_lane_p16(poly16_t * a, poly16x8x2_t b) {
10305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2q_lane_p16(a, b, 7);
10306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_u8
10309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_u8(uint8_t * a, uint8x8x2_t b) {
10311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_u8(a, b, 7);
10312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_u16
10315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_u16(uint16_t * a, uint16x4x2_t b) {
10317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_u16(a, b, 3);
10318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_u32
10321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_u32(uint32_t * a, uint32x2x2_t b) {
10323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_u32(a, b, 1);
10324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_s8
10327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_s8(int8_t * a, int8x8x2_t b) {
10329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_s8(a, b, 7);
10330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_s16
10333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_s16(int16_t * a, int16x4x2_t b) {
10335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_s16(a, b, 3);
10336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_s32
10339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_s32(int32_t * a, int32x2x2_t b) {
10341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_s32(a, b, 1);
10342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_f16
10345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_f16(float16_t * a, float16x4x2_t b) {
10347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_f16(a, b, 3);
10348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_f32
10351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_f32(float32_t * a, float32x2x2_t b) {
10353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_f32(a, b, 1);
10354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_p8
10357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_p8(poly8_t * a, poly8x8x2_t b) {
10359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_p8(a, b, 7);
10360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst2_lane_p16
10363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst2.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst2_lane_p16(poly16_t * a, poly16x4x2_t b) {
10365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst2_lane_p16(a, b, 3);
10366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_u8
10370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_u8(uint8_t * a, uint8x16x3_t b) {
10372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_u8(a, b);
10373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_u16
10376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_u16(uint16_t * a, uint16x8x3_t b) {
10378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_u16(a, b);
10379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_u32
10382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_u32(uint32_t * a, uint32x4x3_t b) {
10384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_u32(a, b);
10385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_s8
10388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_s8(int8_t * a, int8x16x3_t b) {
10390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_s8(a, b);
10391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_s16
10394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_s16(int16_t * a, int16x8x3_t b) {
10396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_s16(a, b);
10397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_s32
10400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_s32(int32_t * a, int32x4x3_t b) {
10402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_s32(a, b);
10403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_f16
10406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_f16(float16_t * a, float16x8x3_t b) {
10408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_f16(a, b);
10409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_f32
10412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_f32(float32_t * a, float32x4x3_t b) {
10414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_f32(a, b);
10415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_p8
10418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_p8(poly8_t * a, poly8x16x3_t b) {
10420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_p8(a, b);
10421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_p16
10424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_p16(poly16_t * a, poly16x8x3_t b) {
10426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_p16(a, b);
10427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_u8
10430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_u8(uint8_t * a, uint8x8x3_t b) {
10432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_u8(a, b);
10433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_u16
10436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_u16(uint16_t * a, uint16x4x3_t b) {
10438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_u16(a, b);
10439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_u32
10442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_u32(uint32_t * a, uint32x2x3_t b) {
10444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_u32(a, b);
10445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_u64
10448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64
10449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_u64(uint64_t * a, uint64x1x3_t b) {
10450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_u64(a, b);
10451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_s8
10454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_s8(int8_t * a, int8x8x3_t b) {
10456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_s8(a, b);
10457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_s16
10460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_s16(int16_t * a, int16x4x3_t b) {
10462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_s16(a, b);
10463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_s32
10466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_s32(int32_t * a, int32x2x3_t b) {
10468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_s32(a, b);
10469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_s64
10472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64
10473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_s64(int64_t * a, int64x1x3_t b) {
10474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_s64(a, b);
10475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_f16
10478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_f16(float16_t * a, float16x4x3_t b) {
10480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_f16(a, b);
10481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_f32
10484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_f32(float32_t * a, float32x2x3_t b) {
10486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_f32(a, b);
10487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_p8
10490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_p8(poly8_t * a, poly8x8x3_t b) {
10492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_p8(a, b);
10493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_p16
10496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_p16(poly16_t * a, poly16x4x3_t b) {
10498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_p16(a, b);
10499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_lane_u16
10503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_lane_u16(uint16_t * a, uint16x8x3_t b) {
10505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_lane_u16(a, b, 7);
10506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_lane_u32
10509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_lane_u32(uint32_t * a, uint32x4x3_t b) {
10511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_lane_u32(a, b, 3);
10512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_lane_s16
10515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_lane_s16(int16_t * a, int16x8x3_t b) {
10517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_lane_s16(a, b, 7);
10518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_lane_s32
10521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_lane_s32(int32_t * a, int32x4x3_t b) {
10523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_lane_s32(a, b, 3);
10524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_lane_f16
10527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_lane_f16(float16_t * a, float16x8x3_t b) {
10529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_lane_f16(a, b, 7);
10530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_lane_f32
10533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_lane_f32(float32_t * a, float32x4x3_t b) {
10535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_lane_f32(a, b, 3);
10536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3q_lane_p16
10539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3q_lane_p16(poly16_t * a, poly16x8x3_t b) {
10541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3q_lane_p16(a, b, 7);
10542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_u8
10545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_u8(uint8_t * a, uint8x8x3_t b) {
10547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_u8(a, b, 7);
10548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_u16
10551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_u16(uint16_t * a, uint16x4x3_t b) {
10553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_u16(a, b, 3);
10554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_u32
10557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_u32(uint32_t * a, uint32x2x3_t b) {
10559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_u32(a, b, 1);
10560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_s8
10563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_s8(int8_t * a, int8x8x3_t b) {
10565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_s8(a, b, 7);
10566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_s16
10569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_s16(int16_t * a, int16x4x3_t b) {
10571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_s16(a, b, 3);
10572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_s32
10575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_s32(int32_t * a, int32x2x3_t b) {
10577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_s32(a, b, 1);
10578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_f16
10581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_f16(float16_t * a, float16x4x3_t b) {
10583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_f16(a, b, 3);
10584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_f32
10587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_f32(float32_t * a, float32x2x3_t b) {
10589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_f32(a, b, 1);
10590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_p8
10593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_p8(poly8_t * a, poly8x8x3_t b) {
10595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_p8(a, b, 7);
10596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst3_lane_p16
10599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst3.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst3_lane_p16(poly16_t * a, poly16x4x3_t b) {
10601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst3_lane_p16(a, b, 3);
10602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_u8
10606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_u8(uint8_t * a, uint8x16x4_t b) {
10608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_u8(a, b);
10609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_u16
10612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_u16(uint16_t * a, uint16x8x4_t b) {
10614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_u16(a, b);
10615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_u32
10618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_u32(uint32_t * a, uint32x4x4_t b) {
10620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_u32(a, b);
10621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_s8
10624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10625267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_s8(int8_t * a, int8x16x4_t b) {
10626267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_s8(a, b);
10627267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10628267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10629267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_s16
10630267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10631267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_s16(int16_t * a, int16x8x4_t b) {
10632267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_s16(a, b);
10633267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10634267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10635267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_s32
10636267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10637267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_s32(int32_t * a, int32x4x4_t b) {
10638267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_s32(a, b);
10639267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10640267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10641267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_f16
10642267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10643267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_f16(float16_t * a, float16x8x4_t b) {
10644267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_f16(a, b);
10645267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10646267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10647267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_f32
10648267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10649267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_f32(float32_t * a, float32x4x4_t b) {
10650267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_f32(a, b);
10651267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10652267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10653267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_p8
10654267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10655267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_p8(poly8_t * a, poly8x16x4_t b) {
10656267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_p8(a, b);
10657267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10658267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10659267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_p16
10660267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}
10661267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_p16(poly16_t * a, poly16x8x4_t b) {
10662267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_p16(a, b);
10663267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10664267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10665267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_u8
10666267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10667267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_u8(uint8_t * a, uint8x8x4_t b) {
10668267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_u8(a, b);
10669267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10670267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10671267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_u16
10672267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10673267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_u16(uint16_t * a, uint16x4x4_t b) {
10674267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_u16(a, b);
10675267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10676267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10677267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_u32
10678267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10679267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_u32(uint32_t * a, uint32x2x4_t b) {
10680267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_u32(a, b);
10681267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10682267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10683267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_u64
10684267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64
10685267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_u64(uint64_t * a, uint64x1x4_t b) {
10686267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_u64(a, b);
10687267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10688267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10689267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_s8
10690267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10691267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_s8(int8_t * a, int8x8x4_t b) {
10692267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_s8(a, b);
10693267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10694267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10695267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_s16
10696267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10697267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_s16(int16_t * a, int16x4x4_t b) {
10698267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_s16(a, b);
10699267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10700267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10701267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_s32
10702267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10703267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_s32(int32_t * a, int32x2x4_t b) {
10704267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_s32(a, b);
10705267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10706267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10707267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_s64
10708267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst1.64
10709267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_s64(int64_t * a, int64x1x4_t b) {
10710267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_s64(a, b);
10711267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10712267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10713267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_f16
10714267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10715267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_f16(float16_t * a, float16x4x4_t b) {
10716267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_f16(a, b);
10717267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10718267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10719267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_f32
10720267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10721267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_f32(float32_t * a, float32x2x4_t b) {
10722267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_f32(a, b);
10723267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10724267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10725267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_p8
10726267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.8 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10727267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_p8(poly8_t * a, poly8x8x4_t b) {
10728267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_p8(a, b);
10729267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10730267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10731267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_p16
10732267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, [r{{[0-9]+}}]
10733267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_p16(poly16_t * a, poly16x4x4_t b) {
10734267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_p16(a, b);
10735267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10736267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10737267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10738267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_lane_u16
10739267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10740267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_lane_u16(uint16_t * a, uint16x8x4_t b) {
10741267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_lane_u16(a, b, 7);
10742267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10743267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10744267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_lane_u32
10745267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10746267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_lane_u32(uint32_t * a, uint32x4x4_t b) {
10747267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_lane_u32(a, b, 3);
10748267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10749267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10750267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_lane_s16
10751267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10752267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_lane_s16(int16_t * a, int16x8x4_t b) {
10753267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_lane_s16(a, b, 7);
10754267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10755267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10756267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_lane_s32
10757267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10758267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_lane_s32(int32_t * a, int32x4x4_t b) {
10759267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_lane_s32(a, b, 3);
10760267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10761267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10762267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_lane_f16
10763267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10764267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_lane_f16(float16_t * a, float16x8x4_t b) {
10765267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_lane_f16(a, b, 7);
10766267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10767267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10768267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_lane_f32
10769267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10770267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_lane_f32(float32_t * a, float32x4x4_t b) {
10771267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_lane_f32(a, b, 3);
10772267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10773267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10774267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4q_lane_p16
10775267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}
10776267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4q_lane_p16(poly16_t * a, poly16x8x4_t b) {
10777267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4q_lane_p16(a, b, 7);
10778267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10779267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10780267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_u8
10781267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10782267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_u8(uint8_t * a, uint8x8x4_t b) {
10783267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_u8(a, b, 7);
10784267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10785267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10786267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_u16
10787267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10788267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_u16(uint16_t * a, uint16x4x4_t b) {
10789267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_u16(a, b, 3);
10790267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10791267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10792267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_u32
10793267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10794267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_u32(uint32_t * a, uint32x2x4_t b) {
10795267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_u32(a, b, 1);
10796267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10797267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10798267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_s8
10799267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10800267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_s8(int8_t * a, int8x8x4_t b) {
10801267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_s8(a, b, 7);
10802267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10803267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10804267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_s16
10805267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10806267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_s16(int16_t * a, int16x4x4_t b) {
10807267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_s16(a, b, 3);
10808267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10809267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10810267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_s32
10811267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10812267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_s32(int32_t * a, int32x2x4_t b) {
10813267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_s32(a, b, 1);
10814267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10815267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10816267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_f16
10817267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10818267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_f16(float16_t * a, float16x4x4_t b) {
10819267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_f16(a, b, 3);
10820267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10821267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10822267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_f32
10823267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.32 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10824267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_f32(float32_t * a, float32x2x4_t b) {
10825267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_f32(a, b, 1);
10826267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10827267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10828267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_p8
10829267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.8 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10830267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_p8(poly8_t * a, poly8x8x4_t b) {
10831267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_p8(a, b, 7);
10832267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10833267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10834267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vst4_lane_p16
10835267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vst4.16 {d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}], d{{[0-9]+}}[{{[0-9]+}}]}, [r{{[0-9]+}}]
10836267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanvoid test_vst4_lane_p16(poly16_t * a, poly16x4x4_t b) {
10837267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  vst4_lane_p16(a, b, 3);
10838267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10839267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10840267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10841267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsub_s8
10842267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10843267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vsub_s8(int8x8_t a, int8x8_t b) {
10844267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsub_s8(a, b);
10845267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10846267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10847267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsub_s16
10848267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10849267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vsub_s16(int16x4_t a, int16x4_t b) {
10850267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsub_s16(a, b);
10851267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10852267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10853267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsub_s32
10854267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10855267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vsub_s32(int32x2_t a, int32x2_t b) {
10856267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsub_s32(a, b);
10857267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10858267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10859267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsub_s64
10860267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10861267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x1_t test_vsub_s64(int64x1_t a, int64x1_t b) {
10862267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsub_s64(a, b);
10863267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10864267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10865267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsub_f32
10866267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.f32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10867267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2_t test_vsub_f32(float32x2_t a, float32x2_t b) {
10868267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsub_f32(a, b);
10869267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10870267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10871267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsub_u8
10872267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10873267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vsub_u8(uint8x8_t a, uint8x8_t b) {
10874267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsub_u8(a, b);
10875267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10876267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10877267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsub_u16
10878267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10879267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vsub_u16(uint16x4_t a, uint16x4_t b) {
10880267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsub_u16(a, b);
10881267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10882267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10883267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsub_u32
10884267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10885267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vsub_u32(uint32x2_t a, uint32x2_t b) {
10886267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsub_u32(a, b);
10887267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10888267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10889267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsub_u64
10890267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i64 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10891267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x1_t test_vsub_u64(uint64x1_t a, uint64x1_t b) {
10892267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsub_u64(a, b);
10893267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10894267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10895267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubq_s8
10896267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10897267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16_t test_vsubq_s8(int8x16_t a, int8x16_t b) {
10898267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubq_s8(a, b);
10899267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10900267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10901267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubq_s16
10902267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10903267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vsubq_s16(int16x8_t a, int16x8_t b) {
10904267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubq_s16(a, b);
10905267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10906267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10907267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubq_s32
10908267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10909267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vsubq_s32(int32x4_t a, int32x4_t b) {
10910267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubq_s32(a, b);
10911267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10912267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10913267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubq_s64
10914267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10915267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vsubq_s64(int64x2_t a, int64x2_t b) {
10916267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubq_s64(a, b);
10917267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10918267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10919267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubq_f32
10920267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.f32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10921267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4_t test_vsubq_f32(float32x4_t a, float32x4_t b) {
10922267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubq_f32(a, b);
10923267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10924267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10925267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubq_u8
10926267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10927267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vsubq_u8(uint8x16_t a, uint8x16_t b) {
10928267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubq_u8(a, b);
10929267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10930267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10931267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubq_u16
10932267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10933267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vsubq_u16(uint16x8_t a, uint16x8_t b) {
10934267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubq_u16(a, b);
10935267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10936267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10937267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubq_u32
10938267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10939267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vsubq_u32(uint32x4_t a, uint32x4_t b) {
10940267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubq_u32(a, b);
10941267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10942267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10943267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubq_u64
10944267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsub.i64 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10945267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vsubq_u64(uint64x2_t a, uint64x2_t b) {
10946267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubq_u64(a, b);
10947267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10948267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10949267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10950267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubhn_s16
10951267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubhn.i16 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10952267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vsubhn_s16(int16x8_t a, int16x8_t b) {
10953267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubhn_s16(a, b);
10954267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10955267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10956267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubhn_s32
10957267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubhn.i32 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10958267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4_t test_vsubhn_s32(int32x4_t a, int32x4_t b) {
10959267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubhn_s32(a, b);
10960267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10961267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10962267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubhn_s64
10963267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubhn.i64 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10964267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2_t test_vsubhn_s64(int64x2_t a, int64x2_t b) {
10965267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubhn_s64(a, b);
10966267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10967267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10968267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubhn_u16
10969267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubhn.i16 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10970267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vsubhn_u16(uint16x8_t a, uint16x8_t b) {
10971267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubhn_u16(a, b);
10972267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10973267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10974267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubhn_u32
10975267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubhn.i32 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10976267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vsubhn_u32(uint32x4_t a, uint32x4_t b) {
10977267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubhn_u32(a, b);
10978267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10979267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10980267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubhn_u64
10981267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubhn.i64 d{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
10982267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vsubhn_u64(uint64x2_t a, uint64x2_t b) {
10983267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubhn_u64(a, b);
10984267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10985267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10986267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10987267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubl_s8
10988267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubl.s8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10989267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vsubl_s8(int8x8_t a, int8x8_t b) {
10990267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubl_s8(a, b);
10991267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10992267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10993267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubl_s16
10994267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubl.s16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
10995267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vsubl_s16(int16x4_t a, int16x4_t b) {
10996267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubl_s16(a, b);
10997267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
10998267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
10999267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubl_s32
11000267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubl.s32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11001267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vsubl_s32(int32x2_t a, int32x2_t b) {
11002267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubl_s32(a, b);
11003267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11004267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11005267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubl_u8
11006267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubl.u8 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11007267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vsubl_u8(uint8x8_t a, uint8x8_t b) {
11008267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubl_u8(a, b);
11009267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11010267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11011267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubl_u16
11012267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubl.u16 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11013267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vsubl_u16(uint16x4_t a, uint16x4_t b) {
11014267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubl_u16(a, b);
11015267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11016267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11017267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubl_u32
11018267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubl.u32 q{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11019267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vsubl_u32(uint32x2_t a, uint32x2_t b) {
11020267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubl_u32(a, b);
11021267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11022267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11023267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11024267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubw_s8
11025267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubw.s8 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
11026267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8_t test_vsubw_s8(int16x8_t a, int8x8_t b) {
11027267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubw_s8(a, b);
11028267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11029267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11030267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubw_s16
11031267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubw.s16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
11032267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4_t test_vsubw_s16(int32x4_t a, int16x4_t b) {
11033267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubw_s16(a, b);
11034267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11035267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11036267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubw_s32
11037267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubw.s32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
11038267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint64x2_t test_vsubw_s32(int64x2_t a, int32x2_t b) {
11039267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubw_s32(a, b);
11040267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11041267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11042267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubw_u8
11043267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubw.u8 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
11044267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vsubw_u8(uint16x8_t a, uint8x8_t b) {
11045267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubw_u8(a, b);
11046267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11047267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11048267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubw_u16
11049267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubw.u16 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
11050267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vsubw_u16(uint32x4_t a, uint16x4_t b) {
11051267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubw_u16(a, b);
11052267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11053267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11054267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vsubw_u32
11055267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vsubw.u32 q{{[0-9]+}}, q{{[0-9]+}}, d{{[0-9]+}}
11056267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint64x2_t test_vsubw_u32(uint64x2_t a, uint32x2_t b) {
11057267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vsubw_u32(a, b);
11058267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11059267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11060267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11061267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl1_u8
11062267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}}, d{{[0-9]+}}
11063267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtbl1_u8(uint8x8_t a, uint8x8_t b) {
11064267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl1_u8(a, b);
11065267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11066267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11067267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl1_s8
11068267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}}, d{{[0-9]+}}
11069267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vtbl1_s8(int8x8_t a, int8x8_t b) {
11070267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl1_s8(a, b);
11071267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11072267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11073267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl1_p8
11074267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}}, d{{[0-9]+}}
11075267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vtbl1_p8(poly8x8_t a, uint8x8_t b) {
11076267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl1_p8(a, b);
11077267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11078267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11079267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11080267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl2_u8
11081267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11082267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtbl2_u8(uint8x8x2_t a, uint8x8_t b) {
11083267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl2_u8(a, b);
11084267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11085267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11086267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl2_s8
11087267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11088267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vtbl2_s8(int8x8x2_t a, int8x8_t b) {
11089267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl2_s8(a, b);
11090267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11091267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11092267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl2_p8
11093267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11094267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vtbl2_p8(poly8x8x2_t a, uint8x8_t b) {
11095267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl2_p8(a, b);
11096267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11097267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11098267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11099267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl3_u8
11100267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11101267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtbl3_u8(uint8x8x3_t a, uint8x8_t b) {
11102267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl3_u8(a, b);
11103267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11104267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11105267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl3_s8
11106267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11107267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vtbl3_s8(int8x8x3_t a, int8x8_t b) {
11108267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl3_s8(a, b);
11109267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11110267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11111267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl3_p8
11112267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11113267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vtbl3_p8(poly8x8x3_t a, uint8x8_t b) {
11114267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl3_p8(a, b);
11115267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11116267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11117267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11118267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl4_u8
11119267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11120267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtbl4_u8(uint8x8x4_t a, uint8x8_t b) {
11121267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl4_u8(a, b);
11122267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11123267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11124267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl4_s8
11125267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11126267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vtbl4_s8(int8x8x4_t a, int8x8_t b) {
11127267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl4_s8(a, b);
11128267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11129267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11130267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbl4_p8
11131267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbl.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11132267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vtbl4_p8(poly8x8x4_t a, uint8x8_t b) {
11133267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbl4_p8(a, b);
11134267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11135267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11136267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11137267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx1_u8
11138267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}}, d{{[0-9]+}}
11139267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtbx1_u8(uint8x8_t a, uint8x8_t b, uint8x8_t c) {
11140267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx1_u8(a, b, c);
11141267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11142267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11143267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx1_s8
11144267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}}, d{{[0-9]+}}
11145267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vtbx1_s8(int8x8_t a, int8x8_t b, int8x8_t c) {
11146267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx1_s8(a, b, c);
11147267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11148267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11149267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx1_p8
11150267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}}, d{{[0-9]+}}
11151267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vtbx1_p8(poly8x8_t a, poly8x8_t b, uint8x8_t c) {
11152267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx1_p8(a, b, c);
11153267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11154267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11155267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11156267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx2_u8
11157267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11158267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtbx2_u8(uint8x8_t a, uint8x8x2_t b, uint8x8_t c) {
11159267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx2_u8(a, b, c);
11160267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11161267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11162267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx2_s8
11163267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11164267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vtbx2_s8(int8x8_t a, int8x8x2_t b, int8x8_t c) {
11165267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx2_s8(a, b, c);
11166267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11167267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11168267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx2_p8
11169267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11170267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vtbx2_p8(poly8x8_t a, poly8x8x2_t b, uint8x8_t c) {
11171267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx2_p8(a, b, c);
11172267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11173267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11174267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11175267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx3_u8
11176267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11177267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtbx3_u8(uint8x8_t a, uint8x8x3_t b, uint8x8_t c) {
11178267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx3_u8(a, b, c);
11179267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11180267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11181267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx3_s8
11182267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11183267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vtbx3_s8(int8x8_t a, int8x8x3_t b, int8x8_t c) {
11184267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx3_s8(a, b, c);
11185267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11186267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11187267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx3_p8
11188267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11189267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vtbx3_p8(poly8x8_t a, poly8x8x3_t b, uint8x8_t c) {
11190267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx3_p8(a, b, c);
11191267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11192267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11193267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11194267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx4_u8
11195267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11196267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtbx4_u8(uint8x8_t a, uint8x8x4_t b, uint8x8_t c) {
11197267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx4_u8(a, b, c);
11198267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11199267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11200267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx4_s8
11201267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11202267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8_t test_vtbx4_s8(int8x8_t a, int8x8x4_t b, int8x8_t c) {
11203267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx4_s8(a, b, c);
11204267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11205267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11206267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtbx4_p8
11207267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtbx.8 d{{[0-9]+}}, {d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}}, d{{[0-9]+}}
11208267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8_t test_vtbx4_p8(poly8x8_t a, poly8x8x4_t b, uint8x8_t c) {
11209267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtbx4_p8(a, b, c);
11210267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11211267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11212267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11213267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrn_s8
11214267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.8 d{{[0-9]+}}, d{{[0-9]+}}
11215267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x2_t test_vtrn_s8(int8x8_t a, int8x8_t b) {
11216267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrn_s8(a, b);
11217267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11218267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11219267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrn_s16
11220267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.16 d{{[0-9]+}}, d{{[0-9]+}}
11221267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x2_t test_vtrn_s16(int16x4_t a, int16x4_t b) {
11222267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrn_s16(a, b);
11223267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11224267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11225267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrn_s32
11226267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.32 d{{[0-9]+}}, d{{[0-9]+}}
11227267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x2_t test_vtrn_s32(int32x2_t a, int32x2_t b) {
11228267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrn_s32(a, b);
11229267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11230267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11231267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrn_u8
11232267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.8 d{{[0-9]+}}, d{{[0-9]+}}
11233267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x2_t test_vtrn_u8(uint8x8_t a, uint8x8_t b) {
11234267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrn_u8(a, b);
11235267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11236267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11237267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrn_u16
11238267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.16 d{{[0-9]+}}, d{{[0-9]+}}
11239267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x2_t test_vtrn_u16(uint16x4_t a, uint16x4_t b) {
11240267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrn_u16(a, b);
11241267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11242267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11243267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrn_u32
11244267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.32 d{{[0-9]+}}, d{{[0-9]+}}
11245267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x2_t test_vtrn_u32(uint32x2_t a, uint32x2_t b) {
11246267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrn_u32(a, b);
11247267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11248267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11249267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrn_f32
11250267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.32 d{{[0-9]+}}, d{{[0-9]+}}
11251267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x2_t test_vtrn_f32(float32x2_t a, float32x2_t b) {
11252267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrn_f32(a, b);
11253267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11254267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11255267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrn_p8
11256267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.8 d{{[0-9]+}}, d{{[0-9]+}}
11257267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x2_t test_vtrn_p8(poly8x8_t a, poly8x8_t b) {
11258267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrn_p8(a, b);
11259267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11260267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11261267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrn_p16
11262267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.16 d{{[0-9]+}}, d{{[0-9]+}}
11263267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x2_t test_vtrn_p16(poly16x4_t a, poly16x4_t b) {
11264267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrn_p16(a, b);
11265267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11266267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11267267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrnq_s8
11268267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.8 q{{[0-9]+}}, q{{[0-9]+}}
11269267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16x2_t test_vtrnq_s8(int8x16_t a, int8x16_t b) {
11270267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrnq_s8(a, b);
11271267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11272267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11273267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrnq_s16
11274267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.16 q{{[0-9]+}}, q{{[0-9]+}}
11275267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8x2_t test_vtrnq_s16(int16x8_t a, int16x8_t b) {
11276267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrnq_s16(a, b);
11277267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11278267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11279267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrnq_s32
11280267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.32 q{{[0-9]+}}, q{{[0-9]+}}
11281267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4x2_t test_vtrnq_s32(int32x4_t a, int32x4_t b) {
11282267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrnq_s32(a, b);
11283267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11284267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11285267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrnq_u8
11286267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.8 q{{[0-9]+}}, q{{[0-9]+}}
11287267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16x2_t test_vtrnq_u8(uint8x16_t a, uint8x16_t b) {
11288267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrnq_u8(a, b);
11289267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11290267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11291267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrnq_u16
11292267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.16 q{{[0-9]+}}, q{{[0-9]+}}
11293267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8x2_t test_vtrnq_u16(uint16x8_t a, uint16x8_t b) {
11294267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrnq_u16(a, b);
11295267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11296267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11297267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrnq_u32
11298267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.32 q{{[0-9]+}}, q{{[0-9]+}}
11299267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4x2_t test_vtrnq_u32(uint32x4_t a, uint32x4_t b) {
11300267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrnq_u32(a, b);
11301267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11302267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11303267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrnq_f32
11304267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.32 q{{[0-9]+}}, q{{[0-9]+}}
11305267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4x2_t test_vtrnq_f32(float32x4_t a, float32x4_t b) {
11306267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrnq_f32(a, b);
11307267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11308267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11309267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrnq_p8
11310267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.8 q{{[0-9]+}}, q{{[0-9]+}}
11311267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16x2_t test_vtrnq_p8(poly8x16_t a, poly8x16_t b) {
11312267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrnq_p8(a, b);
11313267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11314267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11315267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtrnq_p16
11316267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtrn.16 q{{[0-9]+}}, q{{[0-9]+}}
11317267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8x2_t test_vtrnq_p16(poly16x8_t a, poly16x8_t b) {
11318267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtrnq_p16(a, b);
11319267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11320267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11321267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11322267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtst_s8
11323267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11324267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtst_s8(int8x8_t a, int8x8_t b) {
11325267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtst_s8(a, b);
11326267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11327267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11328267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtst_s16
11329267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11330267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vtst_s16(int16x4_t a, int16x4_t b) {
11331267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtst_s16(a, b);
11332267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11333267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11334267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtst_s32
11335267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11336267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vtst_s32(int32x2_t a, int32x2_t b) {
11337267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtst_s32(a, b);
11338267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11339267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11340267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtst_u8
11341267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11342267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtst_u8(uint8x8_t a, uint8x8_t b) {
11343267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtst_u8(a, b);
11344267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11345267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11346267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtst_u16
11347267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.16 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11348267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4_t test_vtst_u16(uint16x4_t a, uint16x4_t b) {
11349267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtst_u16(a, b);
11350267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11351267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11352267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtst_u32
11353267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.32 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11354267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2_t test_vtst_u32(uint32x2_t a, uint32x2_t b) {
11355267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtst_u32(a, b);
11356267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11357267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11358267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtst_p8
11359267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.8 d{{[0-9]+}}, d{{[0-9]+}}, d{{[0-9]+}}
11360267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8_t test_vtst_p8(poly8x8_t a, poly8x8_t b) {
11361267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtst_p8(a, b);
11362267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11363267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11364267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtstq_s8
11365267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
11366267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vtstq_s8(int8x16_t a, int8x16_t b) {
11367267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtstq_s8(a, b);
11368267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11369267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11370267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtstq_s16
11371267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
11372267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vtstq_s16(int16x8_t a, int16x8_t b) {
11373267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtstq_s16(a, b);
11374267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11375267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11376267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtstq_s32
11377267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
11378267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vtstq_s32(int32x4_t a, int32x4_t b) {
11379267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtstq_s32(a, b);
11380267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11381267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11382267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtstq_u8
11383267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
11384267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vtstq_u8(uint8x16_t a, uint8x16_t b) {
11385267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtstq_u8(a, b);
11386267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11387267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11388267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtstq_u16
11389267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.16 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
11390267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8_t test_vtstq_u16(uint16x8_t a, uint16x8_t b) {
11391267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtstq_u16(a, b);
11392267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11393267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11394267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtstq_u32
11395267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.32 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
11396267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4_t test_vtstq_u32(uint32x4_t a, uint32x4_t b) {
11397267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtstq_u32(a, b);
11398267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11399267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11400267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vtstq_p8
11401267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vtst.8 q{{[0-9]+}}, q{{[0-9]+}}, q{{[0-9]+}}
11402267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16_t test_vtstq_p8(poly8x16_t a, poly8x16_t b) {
11403267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vtstq_p8(a, b);
11404267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11405267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11406267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11407267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzp_s8
11408267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.8 d{{[0-9]+}}, d{{[0-9]+}}
11409267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x2_t test_vuzp_s8(int8x8_t a, int8x8_t b) {
11410267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzp_s8(a, b);
11411267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11412267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11413267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzp_s16
11414267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.16 d{{[0-9]+}}, d{{[0-9]+}}
11415267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x2_t test_vuzp_s16(int16x4_t a, int16x4_t b) {
11416267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzp_s16(a, b);
11417267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11418267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11419267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzp_s32
11420267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vuzp}}.32 d{{[0-9]+}}, d{{[0-9]+}}
11421267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x2_t test_vuzp_s32(int32x2_t a, int32x2_t b) {
11422267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzp_s32(a, b);
11423267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11424267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11425267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzp_u8
11426267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.8 d{{[0-9]+}}, d{{[0-9]+}}
11427267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x2_t test_vuzp_u8(uint8x8_t a, uint8x8_t b) {
11428267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzp_u8(a, b);
11429267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11430267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11431267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzp_u16
11432267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.16 d{{[0-9]+}}, d{{[0-9]+}}
11433267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x2_t test_vuzp_u16(uint16x4_t a, uint16x4_t b) {
11434267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzp_u16(a, b);
11435267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11436267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11437267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzp_u32
11438267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vuzp}}.32 d{{[0-9]+}}, d{{[0-9]+}}
11439267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x2_t test_vuzp_u32(uint32x2_t a, uint32x2_t b) {
11440267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzp_u32(a, b);
11441267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11442267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11443267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzp_f32
11444267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vuzp}}.32 d{{[0-9]+}}, d{{[0-9]+}}
11445267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x2_t test_vuzp_f32(float32x2_t a, float32x2_t b) {
11446267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzp_f32(a, b);
11447267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11448267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11449267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzp_p8
11450267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.8 d{{[0-9]+}}, d{{[0-9]+}}
11451267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x2_t test_vuzp_p8(poly8x8_t a, poly8x8_t b) {
11452267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzp_p8(a, b);
11453267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11454267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11455267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzp_p16
11456267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.16 d{{[0-9]+}}, d{{[0-9]+}}
11457267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x2_t test_vuzp_p16(poly16x4_t a, poly16x4_t b) {
11458267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzp_p16(a, b);
11459267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11460267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11461267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzpq_s8
11462267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.8 q{{[0-9]+}}, q{{[0-9]+}}
11463267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16x2_t test_vuzpq_s8(int8x16_t a, int8x16_t b) {
11464267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzpq_s8(a, b);
11465267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11466267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11467267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzpq_s16
11468267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.16 q{{[0-9]+}}, q{{[0-9]+}}
11469267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8x2_t test_vuzpq_s16(int16x8_t a, int16x8_t b) {
11470267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzpq_s16(a, b);
11471267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11472267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11473267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzpq_s32
11474267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vuzp}}.32 q{{[0-9]+}}, q{{[0-9]+}}
11475267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4x2_t test_vuzpq_s32(int32x4_t a, int32x4_t b) {
11476267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzpq_s32(a, b);
11477267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11478267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11479267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzpq_u8
11480267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.8 q{{[0-9]+}}, q{{[0-9]+}}
11481267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16x2_t test_vuzpq_u8(uint8x16_t a, uint8x16_t b) {
11482267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzpq_u8(a, b);
11483267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11484267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11485267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzpq_u16
11486267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.16 q{{[0-9]+}}, q{{[0-9]+}}
11487267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8x2_t test_vuzpq_u16(uint16x8_t a, uint16x8_t b) {
11488267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzpq_u16(a, b);
11489267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11490267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11491267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzpq_u32
11492267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vuzp}}.32 q{{[0-9]+}}, q{{[0-9]+}}
11493267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4x2_t test_vuzpq_u32(uint32x4_t a, uint32x4_t b) {
11494267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzpq_u32(a, b);
11495267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11496267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11497267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzpq_f32
11498267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vuzp}}.32 q{{[0-9]+}}, q{{[0-9]+}}
11499267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4x2_t test_vuzpq_f32(float32x4_t a, float32x4_t b) {
11500267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzpq_f32(a, b);
11501267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11502267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11503267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzpq_p8
11504267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.8 q{{[0-9]+}}, q{{[0-9]+}}
11505267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16x2_t test_vuzpq_p8(poly8x16_t a, poly8x16_t b) {
11506267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzpq_p8(a, b);
11507267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11508267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11509267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vuzpq_p16
11510267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vuzp.16 q{{[0-9]+}}, q{{[0-9]+}}
11511267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8x2_t test_vuzpq_p16(poly16x8_t a, poly16x8_t b) {
11512267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vuzpq_p16(a, b);
11513267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11514267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11515267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11516267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzip_s8
11517267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.8 d{{[0-9]+}}, d{{[0-9]+}}
11518267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x8x2_t test_vzip_s8(int8x8_t a, int8x8_t b) {
11519267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzip_s8(a, b);
11520267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11521267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11522267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzip_s16
11523267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.16 d{{[0-9]+}}, d{{[0-9]+}}
11524267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x4x2_t test_vzip_s16(int16x4_t a, int16x4_t b) {
11525267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzip_s16(a, b);
11526267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11527267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11528267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzip_s32
11529267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vzip}}.32 d{{[0-9]+}}, d{{[0-9]+}}
11530267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x2x2_t test_vzip_s32(int32x2_t a, int32x2_t b) {
11531267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzip_s32(a, b);
11532267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11533267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11534267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzip_u8
11535267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.8 d{{[0-9]+}}, d{{[0-9]+}}
11536267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x8x2_t test_vzip_u8(uint8x8_t a, uint8x8_t b) {
11537267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzip_u8(a, b);
11538267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11539267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11540267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzip_u16
11541267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.16 d{{[0-9]+}}, d{{[0-9]+}}
11542267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x4x2_t test_vzip_u16(uint16x4_t a, uint16x4_t b) {
11543267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzip_u16(a, b);
11544267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11545267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11546267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzip_u32
11547267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vzip}}.32 d{{[0-9]+}}, d{{[0-9]+}}
11548267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x2x2_t test_vzip_u32(uint32x2_t a, uint32x2_t b) {
11549267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzip_u32(a, b);
11550267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11551267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11552267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzip_f32
11553267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vzip}}.32 d{{[0-9]+}}, d{{[0-9]+}}
11554267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x2x2_t test_vzip_f32(float32x2_t a, float32x2_t b) {
11555267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzip_f32(a, b);
11556267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11557267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11558267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzip_p8
11559267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.8 d{{[0-9]+}}, d{{[0-9]+}}
11560267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x8x2_t test_vzip_p8(poly8x8_t a, poly8x8_t b) {
11561267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzip_p8(a, b);
11562267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11563267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11564267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzip_p16
11565267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.16 d{{[0-9]+}}, d{{[0-9]+}}
11566267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x4x2_t test_vzip_p16(poly16x4_t a, poly16x4_t b) {
11567267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzip_p16(a, b);
11568267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11569267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11570267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzipq_s8
11571267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.8 q{{[0-9]+}}, q{{[0-9]+}}
11572267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint8x16x2_t test_vzipq_s8(int8x16_t a, int8x16_t b) {
11573267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzipq_s8(a, b);
11574267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11575267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11576267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzipq_s16
11577267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.16 q{{[0-9]+}}, q{{[0-9]+}}
11578267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint16x8x2_t test_vzipq_s16(int16x8_t a, int16x8_t b) {
11579267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzipq_s16(a, b);
11580267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11581267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11582267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzipq_s32
11583267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vzip}}.32 q{{[0-9]+}}, q{{[0-9]+}}
11584267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanint32x4x2_t test_vzipq_s32(int32x4_t a, int32x4_t b) {
11585267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzipq_s32(a, b);
11586267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11587267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11588267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzipq_u8
11589267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.8 q{{[0-9]+}}, q{{[0-9]+}}
11590267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint8x16x2_t test_vzipq_u8(uint8x16_t a, uint8x16_t b) {
11591267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzipq_u8(a, b);
11592267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11593267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11594267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzipq_u16
11595267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.16 q{{[0-9]+}}, q{{[0-9]+}}
11596267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint16x8x2_t test_vzipq_u16(uint16x8_t a, uint16x8_t b) {
11597267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzipq_u16(a, b);
11598267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11599267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11600267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzipq_u32
11601267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vzip}}.32 q{{[0-9]+}}, q{{[0-9]+}}
11602267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanuint32x4x2_t test_vzipq_u32(uint32x4_t a, uint32x4_t b) {
11603267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzipq_u32(a, b);
11604267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11605267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11606267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzipq_f32
11607267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: {{vtrn|vzip}}.32 q{{[0-9]+}}, q{{[0-9]+}}
11608267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanfloat32x4x2_t test_vzipq_f32(float32x4_t a, float32x4_t b) {
11609267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzipq_f32(a, b);
11610267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11611267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11612267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzipq_p8
11613267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.8 q{{[0-9]+}}, q{{[0-9]+}}
11614267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly8x16x2_t test_vzipq_p8(poly8x16_t a, poly8x16_t b) {
11615267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzipq_p8(a, b);
11616267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11617267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11618267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: test_vzipq_p16
11619267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman// CHECK: vzip.16 q{{[0-9]+}}, q{{[0-9]+}}
11620267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesmanpoly16x8x2_t test_vzipq_p16(poly16x8_t a, poly16x8_t b) {
11621267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman  return vzipq_p16(a, b);
11622267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman}
11623267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11624267fad813b763a68947a1c2fbc469a7ff82c141aMichael Gottesman
11625