1c568f1e98938584c0ef0b12ae5018ff7d90a4072Stephen Hines// REQUIRES: aarch64-registered-target
26bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// RUN: %clang_cc1 -triple arm64-none-linux-gnu -target-feature +neon \
3651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// RUN:   -ffp-contract=fast -S -O3 -o - %s | FileCheck %s
42a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
52a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// Test new aarch64 intrinsics and types
62a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
72a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin#include <arm_neon.h>
82a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_s8
10651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #{{0x0|0}}
112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vceqz_s8(int8x8_t a) {
122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqz_s8(a);
132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_s16
16651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #{{0x0|0}}
172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vceqz_s16(int16x4_t a) {
182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqz_s16(a);
192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
21651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_s32
22651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #{{0x0|0}}
232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vceqz_s32(int32x2_t a) {
242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqz_s32(a);
252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
27651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_s64
28651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq {{d[0-9]+}}, {{d[0-9]+}}, #{{0x0|0}}
29612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vceqz_s64(int64x1_t a) {
30612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling  return vceqz_s64(a);
31612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling}
32612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling
33651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_u64
34651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq {{d[0-9]+}}, {{d[0-9]+}}, #{{0x0|0}}
35612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vceqz_u64(uint64x1_t a) {
36612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling  return vceqz_u64(a);
37612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling}
38612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling
39651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_p64
40651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq {{d[0-9]+}}, {{d[0-9]+}}, #{{0x0|0}}
41612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vceqz_p64(poly64x1_t a) {
42612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling  return vceqz_p64(a);
43612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling}
44612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling
45651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_s8
46651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #{{0x0|0}}
472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vceqzq_s8(int8x16_t a) {
482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_s8(a);
492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
51651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_s16
52651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #{{0x0|0}}
532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vceqzq_s16(int16x8_t a) {
542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_s16(a);
552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
57651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_s32
58651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #{{0x0|0}}
592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vceqzq_s32(int32x4_t a) {
602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_s32(a);
612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
63651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_s64
64651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #{{0x0|0}}
652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vceqzq_s64(int64x2_t a) {
662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_s64(a);
672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
69651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_u8
70651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #{{0x0|0}}
712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vceqz_u8(uint8x8_t a) {
722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqz_u8(a);
732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
75651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_u16
76651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #{{0x0|0}}
772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vceqz_u16(uint16x4_t a) {
782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqz_u16(a);
792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
81651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_u32
82651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #{{0x0|0}}
832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vceqz_u32(uint32x2_t a) {
842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqz_u32(a);
852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
87651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_u8
88651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #{{0x0|0}}
892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vceqzq_u8(uint8x16_t a) {
902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_u8(a);
912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
93651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_u16
94651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #{{0x0|0}}
952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vceqzq_u16(uint16x8_t a) {
962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_u16(a);
972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
99651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_u32
100651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #{{0x0|0}}
1012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vceqzq_u32(uint32x4_t a) {
1022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_u32(a);
1032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
105651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_u64
106651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #{{0x0|0}}
1072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vceqzq_u64(uint64x2_t a) {
1082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_u64(a);
1092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
111651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_f32
1122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmeq  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0
1132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vceqz_f32(float32x2_t a) {
1142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqz_f32(a);
1152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
117651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_f64
118d6f42ac4ce92771d486c8ce459d3e1266567c244Bill Wendling// CHECK: fcmeq  {{d[0-9]+}}, {{d[0-9]+}}, #0
119d6f42ac4ce92771d486c8ce459d3e1266567c244Bill Wendlinguint64x1_t test_vceqz_f64(float64x1_t a) {
120d6f42ac4ce92771d486c8ce459d3e1266567c244Bill Wendling  return vceqz_f64(a);
121d6f42ac4ce92771d486c8ce459d3e1266567c244Bill Wendling}
122d6f42ac4ce92771d486c8ce459d3e1266567c244Bill Wendling
123651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_f32
1242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmeq  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0
1252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vceqzq_f32(float32x4_t a) {
1262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_f32(a);
1272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
129651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_p8
130651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #{{0x0|0}}
131651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesuint8x8_t test_vceqz_p8(poly8x8_t a) {
132651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  return vceqz_p8(a);
133651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines}
134651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines
135651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_p8
136651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #{{0x0|0}}
137651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesuint8x16_t test_vceqzq_p8(poly8x16_t a) {
138651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  return vceqzq_p8(a);
139651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines}
140651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines
141651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqz_p16
142651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #{{0x0|0}}
1432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vceqz_p16(poly16x4_t a) {
1442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqz_p16(a);
1452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
147651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_p16
148651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmeq  {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #{{0x0|0}}
1492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vceqzq_p16(poly16x8_t a) {
1502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_p16(a);
1512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
153651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_f64
1542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmeq  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0
1552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vceqzq_f64(float64x2_t a) {
1562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vceqzq_f64(a);
1572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
159651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vceqzq_p64
160612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: cmeq  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0
161612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x2_t test_vceqzq_p64(poly64x2_t a) {
162612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling  return vceqzq_p64(a);
163612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling}
164612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling
165651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgez_s8
166651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmge  {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #{{0x0|0}}
1672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vcgez_s8(int8x8_t a) {
1682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgez_s8(a);
1692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
171651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgez_s16
172651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmge  {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #{{0x0|0}}
1732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vcgez_s16(int16x4_t a) {
1742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgez_s16(a);
1752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
177651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgez_s32
178651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmge  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #{{0x0|0}}
1792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcgez_s32(int32x2_t a) {
1802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgez_s32(a);
1812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
183651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgez_s64
184651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmge {{d[0-9]+}}, {{d[0-9]+}}, #{{0x0|0}}
185612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vcgez_s64(int64x1_t a) {
186612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling  return vcgez_s64(a);
187612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling}
188612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling
189651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgezq_s8
190651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmge  {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #{{0x0|0}}
1912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vcgezq_s8(int8x16_t a) {
1922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgezq_s8(a);
1932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
1942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
195651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgezq_s16
196651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmge  {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #{{0x0|0}}
1972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vcgezq_s16(int16x8_t a) {
1982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgezq_s16(a);
1992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
201651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgezq_s32
202651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmge  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #{{0x0|0}}
2032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcgezq_s32(int32x4_t a) {
2042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgezq_s32(a);
2052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
207651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgezq_s64
208651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmge  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #{{0x0|0}}
2092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcgezq_s64(int64x2_t a) {
2102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgezq_s64(a);
2112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
213651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgez_f32
2142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmge  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0
2152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcgez_f32(float32x2_t a) {
2162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgez_f32(a);
2172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
219651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgez_f64
220651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: fcmge  {{d[0-9]+}}, {{d[0-9]+}}, #0
221651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesuint64x1_t test_vcgez_f64(float64x1_t a) {
222651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  return vcgez_f64(a);
223651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines}
224651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines
225651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgezq_f32
2262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmge  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0
2272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcgezq_f32(float32x4_t a) {
2282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgezq_f32(a);
2292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
231651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgezq_f64
2322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmge  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0
2332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcgezq_f64(float64x2_t a) {
2342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgezq_f64(a);
2352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
237651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclez_s8
238651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmle  {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #{{0x0|0}}
2392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vclez_s8(int8x8_t a) {
2402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclez_s8(a);
2412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
243651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclez_s16
244651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmle  {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #{{0x0|0}}
2452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vclez_s16(int16x4_t a) {
2462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclez_s16(a);
2472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
249651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclez_s32
250651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmle  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #{{0x0|0}}
2512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vclez_s32(int32x2_t a) {
2522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclez_s32(a);
2532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
255651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclez_s64
256651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmle {{d[0-9]+}}, {{d[0-9]+}}, #{{0x0|0}}
257612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vclez_s64(int64x1_t a) {
258612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling  return vclez_s64(a);
259612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling}
260612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling
261651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclezq_s8
262651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmle  {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #{{0x0|0}}
2632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vclezq_s8(int8x16_t a) {
2642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclezq_s8(a);
2652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
267651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclezq_s16
268651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmle  {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #{{0x0|0}}
2692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vclezq_s16(int16x8_t a) {
2702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclezq_s16(a);
2712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
273651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclezq_s32
274651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmle  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #{{0x0|0}}
2752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vclezq_s32(int32x4_t a) {
2762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclezq_s32(a);
2772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
279651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclezq_s64
280651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmle  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #{{0x0|0}}
2812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vclezq_s64(int64x2_t a) {
2822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclezq_s64(a);
2832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
285651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclez_f32
2862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmle  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0
2872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vclez_f32(float32x2_t a) {
2882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclez_f32(a);
2892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
291651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclez_f64
292651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: fcmle  {{d[0-9]+}}, {{d[0-9]+}}, #0
293651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesuint64x1_t test_vclez_f64(float64x1_t a) {
294651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  return vclez_f64(a);
295651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines}
296651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines
297651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclezq_f32
2982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmle  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0
2992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vclezq_f32(float32x4_t a) {
3002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclezq_f32(a);
3012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
303651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vclezq_f64
3042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmle  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0
3052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vclezq_f64(float64x2_t a) {
3062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclezq_f64(a);
3072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
309651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtz_s8
310651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmgt  {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #{{0x0|0}}
3112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vcgtz_s8(int8x8_t a) {
3122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtz_s8(a);
3132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
315651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtz_s16
316651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmgt  {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #{{0x0|0}}
3172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vcgtz_s16(int16x4_t a) {
3182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtz_s16(a);
3192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
321651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtz_s32
322651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmgt  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #{{0x0|0}}
3232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcgtz_s32(int32x2_t a) {
3242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtz_s32(a);
3252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
327651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtz_s64
328651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmgt {{d[0-9]+}}, {{d[0-9]+}}, #{{0x0|0}}
329612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vcgtz_s64(int64x1_t a) {
330612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling  return vcgtz_s64(a);
331612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling}
332612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling
333651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtzq_s8
334651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmgt  {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #{{0x0|0}}
3352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vcgtzq_s8(int8x16_t a) {
3362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtzq_s8(a);
3372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
339651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtzq_s16
340651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmgt  {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #{{0x0|0}}
3412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vcgtzq_s16(int16x8_t a) {
3422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtzq_s16(a);
3432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
345651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtzq_s32
346651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmgt  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #{{0x0|0}}
3472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcgtzq_s32(int32x4_t a) {
3482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtzq_s32(a);
3492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
351651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtzq_s64
352651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: cmgt  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #{{0x0|0}}
3532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcgtzq_s64(int64x2_t a) {
3542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtzq_s64(a);
3552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
357651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtz_f32
3582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmgt  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0
3592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcgtz_f32(float32x2_t a) {
3602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtz_f32(a);
3612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
363651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtz_f64
364651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: fcmgt  {{d[0-9]+}}, {{d[0-9]+}}, #0
365651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesuint64x1_t test_vcgtz_f64(float64x1_t a) {
366651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  return vcgtz_f64(a);
367651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines}
368651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines
369651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtzq_f32
3702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmgt  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0
3712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcgtzq_f32(float32x4_t a) {
3722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtzq_f32(a);
3732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
375651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcgtzq_f64
3762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmgt  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0
3772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcgtzq_f64(float64x2_t a) {
3782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcgtzq_f64(a);
3792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
381651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltz_s8
382651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: sshr  {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #7
3832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vcltz_s8(int8x8_t a) {
3842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltz_s8(a);
3852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
387651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltz_s16
388651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: sshr  {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #15
3892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vcltz_s16(int16x4_t a) {
3902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltz_s16(a);
3912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
393651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltz_s32
394651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: sshr  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #31
3952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcltz_s32(int32x2_t a) {
3962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltz_s32(a);
3972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
3982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
399651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltz_s64
400651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: sshr {{d[0-9]+}}, {{d[0-9]+}}, #63
401612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vcltz_s64(int64x1_t a) {
402612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling  return vcltz_s64(a);
403612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling}
404612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling
405651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltzq_s8
406651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: sshr  {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #7
4072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vcltzq_s8(int8x16_t a) {
4082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltzq_s8(a);
4092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
411651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltzq_s16
412651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: sshr  {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #15
4132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vcltzq_s16(int16x8_t a) {
4142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltzq_s16(a);
4152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
417651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltzq_s32
418651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: sshr  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #31
4192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcltzq_s32(int32x4_t a) {
4202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltzq_s32(a);
4212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
423651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltzq_s64
424651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: sshr  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #63
4252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcltzq_s64(int64x2_t a) {
4262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltzq_s64(a);
4272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
429651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltz_f32
4302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmlt  {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0
4312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcltz_f32(float32x2_t a) {
4322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltz_f32(a);
4332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
434651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines
435651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltz_f64
436651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK: fcmlt  {{d[0-9]+}}, {{d[0-9]+}}, #0
437651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesuint64x1_t test_vcltz_f64(float64x1_t a) {
438651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  return vcltz_f64(a);
439651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines}
4402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
441651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltzq_f32
4422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmlt  {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0
4432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcltzq_f32(float32x4_t a) {
4442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltzq_f32(a);
4452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
447651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vcltzq_f64
4482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmlt  {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0
4492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcltzq_f64(float64x2_t a) {
4502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcltzq_f64(a);
4512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
453651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev16_s8
4542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
4552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vrev16_s8(int8x8_t a) {
4562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev16_s8(a);
4572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
459651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev16_u8
4602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
4612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vrev16_u8(uint8x8_t a) {
4622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev16_u8(a);
4632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
465651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev16_p8
4662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
4672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vrev16_p8(poly8x8_t a) {
4682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev16_p8(a);
4692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
471651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev16q_s8
4722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
4732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vrev16q_s8(int8x16_t a) {
4742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev16q_s8(a);
4752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
477651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev16q_u8
4782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
4792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vrev16q_u8(uint8x16_t a) {
4802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev16q_u8(a);
4812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
483651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev16q_p8
4842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
4852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vrev16q_p8(poly8x16_t a) {
4862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev16q_p8(a);
4872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
489651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32_s8
4902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
4912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vrev32_s8(int8x8_t a) {
4922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32_s8(a);
4932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
4942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
495651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32_s16
4962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
4972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vrev32_s16(int16x4_t a) {
4982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32_s16(a);
4992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
501651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32_u8
5022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
5032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vrev32_u8(uint8x8_t a) {
5042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32_u8(a);
5052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
507651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32_u16
5082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
5092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vrev32_u16(uint16x4_t a) {
5102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32_u16(a);
5112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
513651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32_p8
5142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
5152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vrev32_p8(poly8x8_t a) {
5162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32_p8(a);
5172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
519651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32_p16
5202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
5212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly16x4_t test_vrev32_p16(poly16x4_t a) {
5222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32_p16(a);
5232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
525651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32q_s8
5262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
5272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vrev32q_s8(int8x16_t a) {
5282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32q_s8(a);
5292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
531651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32q_s16
5322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
5332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vrev32q_s16(int16x8_t a) {
5342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32q_s16(a);
5352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
537651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32q_u8
5382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
5392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vrev32q_u8(uint8x16_t a) {
5402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32q_u8(a);
5412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
543651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32q_u16
5442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
5452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vrev32q_u16(uint16x8_t a) {
5462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32q_u16(a);
5472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
549651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32q_p8
5502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
5512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vrev32q_p8(poly8x16_t a) {
5522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32q_p8(a);
5532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
555651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev32q_p16
5562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
5572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly16x8_t test_vrev32q_p16(poly16x8_t a) {
5582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev32q_p16(a);
5592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
561651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64_s8
5622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
5632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vrev64_s8(int8x8_t a) {
5642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64_s8(a);
5652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
567651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64_s16
5682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
5692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vrev64_s16(int16x4_t a) {
5702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64_s16(a);
5712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
573651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64_s32
5742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
5752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vrev64_s32(int32x2_t a) {
5762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64_s32(a);
5772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
579651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64_u8
5802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
5812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vrev64_u8(uint8x8_t a) {
5822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64_u8(a);
5832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
585651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64_u16
5862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
5872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vrev64_u16(uint16x4_t a) {
5882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64_u16(a);
5892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
591651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64_u32
5922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
5932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vrev64_u32(uint32x2_t a) {
5942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64_u32(a);
5952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
5962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
597651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64_p8
5982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
5992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vrev64_p8(poly8x8_t a) {
6002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64_p8(a);
6012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
603651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64_p16
6042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
6052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly16x4_t test_vrev64_p16(poly16x4_t a) {
6062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64_p16(a);
6072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
609651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64_f32
6102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
6112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrev64_f32(float32x2_t a) {
6122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64_f32(a);
6132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
615651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64q_s8
6162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
6172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vrev64q_s8(int8x16_t a) {
6182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64q_s8(a);
6192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
621651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64q_s16
6222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
6232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vrev64q_s16(int16x8_t a) {
6242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64q_s16(a);
6252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
627651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64q_s32
6282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
6292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vrev64q_s32(int32x4_t a) {
6302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64q_s32(a);
6312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
633651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64q_u8
6342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
6352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vrev64q_u8(uint8x16_t a) {
6362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64q_u8(a);
6372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
639651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64q_u16
6402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
6412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vrev64q_u16(uint16x8_t a) {
6422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64q_u16(a);
6432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
645651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64q_u32
6462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
6472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vrev64q_u32(uint32x4_t a) {
6482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64q_u32(a);
6492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
651651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64q_p8
6522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
6532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vrev64q_p8(poly8x16_t a) {
6542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64q_p8(a);
6552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
657651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64q_p16
6582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
6592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly16x8_t test_vrev64q_p16(poly16x8_t a) {
6602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64q_p16(a);
6612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
663651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK-LABEL: test_vrev64q_f32
6642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
6652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrev64q_f32(float32x4_t a) {
6662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrev64q_f32(a);
6672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
6692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vpaddl_s8(int8x8_t a) {
670651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddl_s8
6712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddl_s8(a);
6722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: saddlp v{{[0-9]+}}.4h, v{{[0-9]+}}.8b
6732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
6752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vpaddl_s16(int16x4_t a) {
676651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddl_s16
6772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddl_s16(a);
6782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: saddlp v{{[0-9]+}}.2s, v{{[0-9]+}}.4h
6792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
6812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x1_t test_vpaddl_s32(int32x2_t a) {
682651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddl_s32
6832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddl_s32(a);
6842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: saddlp v{{[0-9]+}}.1d, v{{[0-9]+}}.2s
6852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
6872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vpaddl_u8(uint8x8_t a) {
688651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddl_u8
6892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddl_u8(a);
6902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uaddlp v{{[0-9]+}}.4h, v{{[0-9]+}}.8b
6912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
6932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vpaddl_u16(uint16x4_t a) {
694651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddl_u16
6952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddl_u16(a);
6962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uaddlp v{{[0-9]+}}.2s, v{{[0-9]+}}.4h
6972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
6982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
6992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x1_t test_vpaddl_u32(uint32x2_t a) {
700651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddl_u32
7012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddl_u32(a);
7022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uaddlp v{{[0-9]+}}.1d, v{{[0-9]+}}.2s
7032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vpaddlq_s8(int8x16_t a) {
706651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddlq_s8
7072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddlq_s8(a);
7082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: saddlp v{{[0-9]+}}.8h, v{{[0-9]+}}.16b
7092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vpaddlq_s16(int16x8_t a) {
712651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddlq_s16
7132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddlq_s16(a);
7142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: saddlp v{{[0-9]+}}.4s, v{{[0-9]+}}.8h
7152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vpaddlq_s32(int32x4_t a) {
718651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddlq_s32
7192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddlq_s32(a);
7202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: saddlp v{{[0-9]+}}.2d, v{{[0-9]+}}.4s
7212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vpaddlq_u8(uint8x16_t a) {
724651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddlq_u8
7252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddlq_u8(a);
7262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uaddlp v{{[0-9]+}}.8h, v{{[0-9]+}}.16b
7272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vpaddlq_u16(uint16x8_t a) {
730651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddlq_u16
7312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddlq_u16(a);
7322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uaddlp v{{[0-9]+}}.4s, v{{[0-9]+}}.8h
7332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vpaddlq_u32(uint32x4_t a) {
736651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpaddlq_u32
7372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpaddlq_u32(a);
7382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uaddlp v{{[0-9]+}}.2d, v{{[0-9]+}}.4s
7392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vpadal_s8(int16x4_t a, int8x8_t b) {
742651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadal_s8
7432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadal_s8(a, b);
7442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sadalp v{{[0-9]+}}.4h, v{{[0-9]+}}.8b
7452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vpadal_s16(int32x2_t a, int16x4_t b) {
748651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadal_s16
7492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadal_s16(a, b);
7502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sadalp v{{[0-9]+}}.2s, v{{[0-9]+}}.4h
7512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x1_t test_vpadal_s32(int64x1_t a, int32x2_t b) {
754651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadal_s32
7552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadal_s32(a, b);
7562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sadalp v{{[0-9]+}}.1d, v{{[0-9]+}}.2s
7572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vpadal_u8(uint16x4_t a, uint8x8_t b) {
760651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadal_u8
7612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadal_u8(a, b);
7622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uadalp v{{[0-9]+}}.4h, v{{[0-9]+}}.8b
7632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vpadal_u16(uint32x2_t a, uint16x4_t b) {
766651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadal_u16
7672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadal_u16(a, b);
7682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uadalp v{{[0-9]+}}.2s, v{{[0-9]+}}.4h
7692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x1_t test_vpadal_u32(uint64x1_t a, uint32x2_t b) {
772651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadal_u32
7732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadal_u32(a, b);
7742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uadalp v{{[0-9]+}}.1d, v{{[0-9]+}}.2s
7752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vpadalq_s8(int16x8_t a, int8x16_t b) {
778651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadalq_s8
7792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadalq_s8(a, b);
7802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sadalp v{{[0-9]+}}.8h, v{{[0-9]+}}.16b
7812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vpadalq_s16(int32x4_t a, int16x8_t b) {
784651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadalq_s16
7852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadalq_s16(a, b);
7862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sadalp v{{[0-9]+}}.4s, v{{[0-9]+}}.8h
7872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vpadalq_s32(int64x2_t a, int32x4_t b) {
790651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadalq_s32
7912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadalq_s32(a, b);
7922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sadalp v{{[0-9]+}}.2d, v{{[0-9]+}}.4s
7932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
7942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
7952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vpadalq_u8(uint16x8_t a, uint8x16_t b) {
796651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadalq_u8
7972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadalq_u8(a, b);
7982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uadalp v{{[0-9]+}}.8h, v{{[0-9]+}}.16b
7992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vpadalq_u16(uint32x4_t a, uint16x8_t b) {
802651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadalq_u16
8032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadalq_u16(a, b);
8042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uadalp v{{[0-9]+}}.4s, v{{[0-9]+}}.8h
8052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vpadalq_u32(uint64x2_t a, uint32x4_t b) {
808651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vpadalq_u32
8092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vpadalq_u32(a, b);
8102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uadalp v{{[0-9]+}}.2d, v{{[0-9]+}}.4s
8112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vqabs_s8(int8x8_t a) {
814651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqabs_s8
8152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqabs_s8(a);
8162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqabs v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
8172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vqabsq_s8(int8x16_t a) {
820651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqabsq_s8
8212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqabsq_s8(a);
8222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqabs v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
8232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vqabs_s16(int16x4_t a) {
826651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqabs_s16
8272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqabs_s16(a);
8282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqabs v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
8292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vqabsq_s16(int16x8_t a) {
832651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqabsq_s16
8332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqabsq_s16(a);
8342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqabs v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
8352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vqabs_s32(int32x2_t a) {
838651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqabs_s32
8392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqabs_s32(a);
8402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqabs v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
8412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vqabsq_s32(int32x4_t a) {
844651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqabsq_s32
8452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqabsq_s32(a);
8462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqabs v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
8472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vqabsq_s64(int64x2_t a) {
850651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqabsq_s64
8512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqabsq_s64(a);
8522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqabs v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
8532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vqneg_s8(int8x8_t a) {
856651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqneg_s8
8572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqneg_s8(a);
8582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqneg v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
8592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vqnegq_s8(int8x16_t a) {
862651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqnegq_s8
8632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqnegq_s8(a);
8642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqneg v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
8652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vqneg_s16(int16x4_t a) {
868651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqneg_s16
8692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqneg_s16(a);
8702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqneg v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
8712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vqnegq_s16(int16x8_t a) {
874651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqnegq_s16
8752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqnegq_s16(a);
8762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqneg v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
8772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vqneg_s32(int32x2_t a) {
880651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqneg_s32
8812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqneg_s32(a);
8822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqneg v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
8832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vqnegq_s32(int32x4_t a) {
886651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqnegq_s32
8872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqnegq_s32(a);
8882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqneg v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
8892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vqnegq_s64(int64x2_t a) {
892651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqnegq_s64
8932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqnegq_s64(a);
8942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqneg v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
8952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
8962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
8972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vneg_s8(int8x8_t a) {
898651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vneg_s8
8992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vneg_s8(a);
9002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: neg v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
9012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vnegq_s8(int8x16_t a) {
904651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vnegq_s8
9052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vnegq_s8(a);
9062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: neg v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
9072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vneg_s16(int16x4_t a) {
910651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vneg_s16
9112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vneg_s16(a);
9122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: neg v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
9132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vnegq_s16(int16x8_t a) {
916651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vnegq_s16
9172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vnegq_s16(a);
9182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: neg v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
9192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vneg_s32(int32x2_t a) {
922651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vneg_s32
9232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vneg_s32(a);
9242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: neg v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
9252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vnegq_s32(int32x4_t a) {
928651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vnegq_s32
9292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vnegq_s32(a);
9302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: neg v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
9312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vnegq_s64(int64x2_t a) {
934651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vnegq_s64
9352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vnegq_s64(a);
9362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: neg v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
9372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vneg_f32(float32x2_t a) {
940651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vneg_f32
9412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vneg_f32(a);
9422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fneg v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
9432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vnegq_f32(float32x4_t a) {
946651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vnegq_f32
9472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vnegq_f32(a);
9482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fneg v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
9492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vnegq_f64(float64x2_t a) {
952651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vnegq_f64
9532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vnegq_f64(a);
9542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fneg v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
9552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vabs_s8(int8x8_t a) {
958651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabs_s8
9592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabs_s8(a);
9602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: abs v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
9612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vabsq_s8(int8x16_t a) {
964651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabsq_s8
9652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabsq_s8(a);
9662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: abs v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
9672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vabs_s16(int16x4_t a) {
970651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabs_s16
9712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabs_s16(a);
9722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: abs v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
9732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vabsq_s16(int16x8_t a) {
976651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabsq_s16
9772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabsq_s16(a);
9782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: abs v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
9792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vabs_s32(int32x2_t a) {
982651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabs_s32
9832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabs_s32(a);
9842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: abs v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
9852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vabsq_s32(int32x4_t a) {
988651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabsq_s32
9892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabsq_s32(a);
9902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: abs v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
9912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vabsq_s64(int64x2_t a) {
994651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabsq_s64
9952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabsq_s64(a);
9962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: abs v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
9972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
9982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
9992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vabs_f32(float32x2_t a) {
1000651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabs_f32
10012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabs_f32(a);
10022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fabs v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
10032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vabsq_f32(float32x4_t a) {
1006651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabsq_f32
10072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabsq_f32(a);
10082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fabs v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
10092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vabsq_f64(float64x2_t a) {
1012651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vabsq_f64
10132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vabsq_f64(a);
10142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fabs v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
10152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vuqadd_s8(int8x8_t a, int8x8_t b) {
1018651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vuqadd_s8
10192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vuqadd_s8(a, b);
10202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: suqadd v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
10212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vuqaddq_s8(int8x16_t a, int8x16_t b) {
1024651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vuqaddq_s8
10252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vuqaddq_s8(a, b);
10262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: suqadd v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
10272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vuqadd_s16(int16x4_t a, int16x4_t b) {
1030651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vuqadd_s16
10312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vuqadd_s16(a, b);
10322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: suqadd v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
10332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vuqaddq_s16(int16x8_t a, int16x8_t b) {
1036651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vuqaddq_s16
10372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vuqaddq_s16(a, b);
10382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: suqadd v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
10392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vuqadd_s32(int32x2_t a, int32x2_t b) {
1042651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vuqadd_s32
10432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vuqadd_s32(a, b);
10442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: suqadd v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
10452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vuqaddq_s32(int32x4_t a, int32x4_t b) {
1048651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vuqaddq_s32
10492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vuqaddq_s32(a, b);
10502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: suqadd v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
10512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vuqaddq_s64(int64x2_t a, int64x2_t b) {
1054651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vuqaddq_s64
10552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vuqaddq_s64(a, b);
10562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: suqadd v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
10572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vcls_s8(int8x8_t a) {
1060651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vcls_s8
10612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcls_s8(a);
10622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cls v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
10632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vclsq_s8(int8x16_t a) {
1066651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclsq_s8
10672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclsq_s8(a);
10682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cls v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
10692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vcls_s16(int16x4_t a) {
1072651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vcls_s16
10732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcls_s16(a);
10742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cls v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
10752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vclsq_s16(int16x8_t a) {
1078651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclsq_s16
10792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclsq_s16(a);
10802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cls v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
10812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcls_s32(int32x2_t a) {
1084651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vcls_s32
10852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcls_s32(a);
10862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cls v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
10872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vclsq_s32(int32x4_t a) {
1090651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclsq_s32
10912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclsq_s32(a);
10922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cls v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
10932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
10942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
10952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vclz_s8(int8x8_t a) {
1096651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclz_s8
10972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclz_s8(a);
10982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
10992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vclzq_s8(int8x16_t a) {
1102651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclzq_s8
11032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclzq_s8(a);
11042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
11052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vclz_s16(int16x4_t a) {
1108651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclz_s16
11092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclz_s16(a);
11102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
11112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vclzq_s16(int16x8_t a) {
1114651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclzq_s16
11152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclzq_s16(a);
11162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
11172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vclz_s32(int32x2_t a) {
1120651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclz_s32
11212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclz_s32(a);
11222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
11232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vclzq_s32(int32x4_t a) {
1126651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclzq_s32
11272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclzq_s32(a);
11282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
11292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vclz_u8(uint8x8_t a) {
1132651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclz_u8
11332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclz_u8(a);
11342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
11352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vclzq_u8(uint8x16_t a) {
1138651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclzq_u8
11392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclzq_u8(a);
11402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
11412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vclz_u16(uint16x4_t a) {
1144651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclz_u16
11452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclz_u16(a);
11462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.4h, v{{[0-9]+}}.4h
11472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vclzq_u16(uint16x8_t a) {
1150651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclzq_u16
11512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclzq_u16(a);
11522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.8h, v{{[0-9]+}}.8h
11532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vclz_u32(uint32x2_t a) {
1156651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclz_u32
11572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclz_u32(a);
11582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
11592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vclzq_u32(uint32x4_t a) {
1162651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vclzq_u32
11632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vclzq_u32(a);
11642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: clz v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
11652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vcnt_s8(int8x8_t a) {
1168651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vcnt_s8
11692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcnt_s8(a);
11702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cnt v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
11712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vcntq_s8(int8x16_t a) {
1174651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vcntq_s8
11752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcntq_s8(a);
11762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cnt v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
11772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vcnt_u8(uint8x8_t a) {
1180651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vcnt_u8
11812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcnt_u8(a);
11822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cnt v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
11832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vcntq_u8(uint8x16_t a) {
1186651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vcntq_u8
11872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcntq_u8(a);
11882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cnt v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
11892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vcnt_p8(poly8x8_t a) {
1192651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vcnt_p8
11932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcnt_p8(a);
11942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cnt v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
11952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
11962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
11972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vcntq_p8(poly8x16_t a) {
1198651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vcntq_p8
11992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcntq_p8(a);
12002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: cnt v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
12012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vmvn_s8(int8x8_t a) {
1204651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvn_s8
12052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvn_s8(a);
12066bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
12072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vmvnq_s8(int8x16_t a) {
1210651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvnq_s8
12112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvnq_s8(a);
12126bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
12132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vmvn_s16(int16x4_t a) {
1216651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvn_s16
12172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvn_s16(a);
12186bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
12192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vmvnq_s16(int16x8_t a) {
1222651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvnq_s16
12232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvnq_s16(a);
12246bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
12252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vmvn_s32(int32x2_t a) {
1228651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvn_s32
12292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvn_s32(a);
12306bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
12312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vmvnq_s32(int32x4_t a) {
1234651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvnq_s32
12352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvnq_s32(a);
12366bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
12372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vmvn_u8(uint8x8_t a) {
1240651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvn_u8
12412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvn_u8(a);
12426bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
12432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vmvnq_u8(uint8x16_t a) {
1246651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvnq_u8
12472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvnq_u8(a);
12486bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
12492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vmvn_u16(uint16x4_t a) {
1252651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvn_u16
12532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvn_u16(a);
12546bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
12552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vmvnq_u16(uint16x8_t a) {
1258651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvnq_u16
12592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvnq_u16(a);
12606bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
12612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vmvn_u32(uint32x2_t a) {
1264651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvn_u32
12652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvn_u32(a);
12666bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
12672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vmvnq_u32(uint32x4_t a) {
1270651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvnq_u32
12712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvnq_u32(a);
12726bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
12732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vmvn_p8(poly8x8_t a) {
1276651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvn_p8
12772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvn_p8(a);
12786bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
12792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vmvnq_p8(poly8x16_t a) {
1282651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmvnq_p8
12832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmvnq_p8(a);
12846bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK: {{mvn|not}} v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
12852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vrbit_s8(int8x8_t a) {
1288651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vrbit_s8
12892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrbit_s8(a);
12902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: rbit v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
12912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vrbitq_s8(int8x16_t a) {
1294651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vrbitq_s8
12952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrbitq_s8(a);
12962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: rbit v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
12972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
12982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
12992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vrbit_u8(uint8x8_t a) {
1300651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vrbit_u8
13012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrbit_u8(a);
13022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: rbit v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
13032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vrbitq_u8(uint8x16_t a) {
1306651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vrbitq_u8
13072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrbitq_u8(a);
13082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: rbit v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
13092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vrbit_p8(poly8x8_t a) {
1312651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vrbit_p8
13132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrbit_p8(a);
13142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: rbit v{{[0-9]+}}.8b, v{{[0-9]+}}.8b
13152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vrbitq_p8(poly8x16_t a) {
1318651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vrbitq_p8
13192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrbitq_p8(a);
13202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: rbit v{{[0-9]+}}.16b, v{{[0-9]+}}.16b
13212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vmovn_s16(int16x8_t a) {
1324651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_s16
13252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_s16(a);
13262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn v{{[0-9]+}}.8b, v{{[0-9]+}}.8h
13272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vmovn_s32(int32x4_t a) {
1330651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_s32
13312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_s32(a);
13322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s
13332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vmovn_s64(int64x2_t a) {
1336651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_s64
13372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_s64(a);
13382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d
13392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vmovn_u16(uint16x8_t a) {
1342651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_u16
13432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_u16(a);
13442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn v{{[0-9]+}}.8b, v{{[0-9]+}}.8h
13452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vmovn_u32(uint32x4_t a) {
1348651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_u32
13492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_u32(a);
13502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s
13512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vmovn_u64(uint64x2_t a) {
1354651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_u64
13552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_u64(a);
13562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d
13572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vmovn_high_s16(int8x8_t a, int16x8_t b) {
1360651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_high_s16
13612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_high_s16(a, b);
13622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h
13632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vmovn_high_s32(int16x4_t a, int32x4_t b) {
1366651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_high_s32
13672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_high_s32(a, b);
13682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s
13692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vmovn_high_s64(int32x2_t a, int64x2_t b) {
1372651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_high_s64
13732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_high_s64(a, b);
13742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d
13752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vmovn_high_u16(int8x8_t a, int16x8_t b) {
1378651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_high_u16
13792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_high_u16(a, b);
13802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h
13812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vmovn_high_u32(int16x4_t a, int32x4_t b) {
1384651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_high_u32
13852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_high_u32(a, b);
13862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s
13872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vmovn_high_u64(int32x2_t a, int64x2_t b) {
1390651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vmovn_high_u64
13912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vmovn_high_u64(a, b);
13922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: xtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d
13932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
13942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
13952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vqmovun_s16(int16x8_t a) {
1396651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovun_s16
13972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovun_s16(a);
13982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtun v{{[0-9]+}}.8b, v{{[0-9]+}}.8h
13992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vqmovun_s32(int32x4_t a) {
1402651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovun_s32
14032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovun_s32(a);
14042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtun v{{[0-9]+}}.4h, v{{[0-9]+}}.4s
14052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vqmovun_s64(int64x2_t a) {
1408651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovun_s64
14092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovun_s64(a);
14102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtun v{{[0-9]+}}.2s, v{{[0-9]+}}.2d
14112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vqmovun_high_s16(int8x8_t a, int16x8_t b) {
1414651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovun_high_s16
14152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovun_high_s16(a, b);
14162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtun2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h
14172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vqmovun_high_s32(int16x4_t a, int32x4_t b) {
1420651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovun_high_s32
14212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovun_high_s32(a, b);
14222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtun2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s
14232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vqmovun_high_s64(int32x2_t a, int64x2_t b) {
1426651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovun_high_s64
14272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovun_high_s64(a, b);
14282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtun2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d
14292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vqmovn_s16(int16x8_t a) {
1432651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_s16
14332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_s16(a);
14342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtn v{{[0-9]+}}.8b, v{{[0-9]+}}.8h
14352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vqmovn_s32(int32x4_t a) {
1438651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_s32
14392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_s32(a);
14402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s
14412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vqmovn_s64(int64x2_t a) {
1444651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_s64
14452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_s64(a);
14462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d
14472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vqmovn_high_s16(int8x8_t a, int16x8_t b) {
1450651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_high_s16
14512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_high_s16(a, b);
14522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtn2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h
14532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vqmovn_high_s32(int16x4_t a, int32x4_t b) {
1456651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_high_s32
14572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_high_s32(a, b);
14582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s
14592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vqmovn_high_s64(int32x2_t a, int64x2_t b) {
1462651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_high_s64
14632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_high_s64(a, b);
14642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: sqxtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d
14652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vqmovn_u16(uint16x8_t a) {
1468651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_u16
14692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_u16(a);
14702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uqxtn v{{[0-9]+}}.8b, v{{[0-9]+}}.8h
14712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vqmovn_u32(uint32x4_t a) {
1474651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_u32
14752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_u32(a);
14762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uqxtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s
14772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vqmovn_u64(uint64x2_t a) {
1480651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_u64
14812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_u64(a);
14822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uqxtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d
14832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vqmovn_high_u16(uint8x8_t a, uint16x8_t b) {
1486651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_high_u16
14872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_high_u16(a, b);
14882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uqxtn2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h
14892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vqmovn_high_u32(uint16x4_t a, uint32x4_t b) {
1492651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_high_u32
14932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_high_u32(a, b);
14942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uqxtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s
14952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
14962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
14972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vqmovn_high_u64(uint32x2_t a, uint64x2_t b) {
1498651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vqmovn_high_u64
14992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vqmovn_high_u64(a, b);
15002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: uqxtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d
15012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vshll_n_s8(int8x8_t a) {
1504651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_n_s8
15052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_n_s8(a, 8);
15062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll {{v[0-9]+}}.8h, {{v[0-9]+}}.8b, #8
15072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vshll_n_s16(int16x4_t a) {
1510651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_n_s16
15112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_n_s16(a, 16);
15122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll {{v[0-9]+}}.4s, {{v[0-9]+}}.4h, #16
15132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vshll_n_s32(int32x2_t a) {
1516651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_n_s32
15172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_n_s32(a, 32);
15182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll {{v[0-9]+}}.2d, {{v[0-9]+}}.2s, #32
15192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vshll_n_u8(uint8x8_t a) {
1522651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_n_u8
15232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_n_u8(a, 8);
15242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll {{v[0-9]+}}.8h, {{v[0-9]+}}.8b, #8
15252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vshll_n_u16(uint16x4_t a) {
1528651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_n_u16
15292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_n_u16(a, 16);
15302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll {{v[0-9]+}}.4s, {{v[0-9]+}}.4h, #16
15312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vshll_n_u32(uint32x2_t a) {
1534651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_n_u32
15352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_n_u32(a, 32);
15362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll {{v[0-9]+}}.2d, {{v[0-9]+}}.2s, #32
15372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vshll_high_n_s8(int8x16_t a) {
1540651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_high_n_s8
15412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_high_n_s8(a, 8);
15422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll2 {{v[0-9]+}}.8h, {{v[0-9]+}}.16b, #8
15432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vshll_high_n_s16(int16x8_t a) {
1546651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_high_n_s16
15472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_high_n_s16(a, 16);
15482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll2 {{v[0-9]+}}.4s, {{v[0-9]+}}.8h, #16
15492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vshll_high_n_s32(int32x4_t a) {
1552651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_high_n_s32
15532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_high_n_s32(a, 32);
15542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll2 {{v[0-9]+}}.2d, {{v[0-9]+}}.4s, #32
15552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vshll_high_n_u8(uint8x16_t a) {
1558651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_high_n_u8
15592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_high_n_u8(a, 8);
15602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll2 {{v[0-9]+}}.8h, {{v[0-9]+}}.16b, #8
15612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vshll_high_n_u16(uint16x8_t a) {
1564651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_high_n_u16
15652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_high_n_u16(a, 16);
15662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll2 {{v[0-9]+}}.4s, {{v[0-9]+}}.8h, #16
15672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vshll_high_n_u32(uint32x4_t a) {
1570651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-LABEL: test_vshll_high_n_u32
15712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vshll_high_n_u32(a, 32);
15722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: shll2 {{v[0-9]+}}.2d, {{v[0-9]+}}.4s, #32
15732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat16x4_t test_vcvt_f16_f32(float32x4_t a) {
1576651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_f16_f32
15772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_f16_f32(a);
15782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s
15792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat16x8_t test_vcvt_high_f16_f32(float16x4_t a, float32x4_t b) {
1582651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_high_f16_f32
15832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_high_f16_f32(a, b);
15842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s
15852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vcvt_f32_f64(float64x2_t a) {
1588651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_f32_f64
15892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_f32_f64(a);
15902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d
15912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvt_high_f32_f64(float32x2_t a, float64x2_t b) {
1594651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_high_f32_f64
15952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_high_f32_f64(a, b);
15962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d
15972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
15982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
15992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vcvtx_f32_f64(float64x2_t a) {
1600651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtx_f32_f64
16012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtx_f32_f64(a);
16022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtxn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d
16032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvtx_high_f32_f64(float32x2_t a, float64x2_t b) {
1606651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtx_high_f32_f64
16072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtx_high_f32_f64(a, b);
16082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtxn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d
16092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvt_f32_f16(float16x4_t a) {
1612651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_f32_f16
16132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_f32_f16(a);
16142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtl v{{[0-9]+}}.4s, v{{[0-9]+}}.4h
16152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvt_high_f32_f16(float16x8_t a) {
1618651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_high_f32_f16
16192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_high_f32_f16(a);
16202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtl2 v{{[0-9]+}}.4s, v{{[0-9]+}}.8h
16212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vcvt_f64_f32(float32x2_t a) {
1624651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_f64_f32
16252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_f64_f32(a);
16262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtl v{{[0-9]+}}.2d, v{{[0-9]+}}.2s
16272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vcvt_high_f64_f32(float32x4_t a) {
1630651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_high_f64_f32
16312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_high_f64_f32(a);
16322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtl2 v{{[0-9]+}}.2d, v{{[0-9]+}}.4s
16332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndn_f32(float32x2_t a) {
1636651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndn_f32
16372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndn_f32(a);
16382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintn v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
16392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndnq_f32(float32x4_t a) {
1642651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndnq_f32
16432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndnq_f32(a);
16442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintn v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
16452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndnq_f64(float64x2_t a) {
1648651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndnq_f64
16492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndnq_f64(a);
16502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintn v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
16512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrnda_f32(float32x2_t a) {
1654651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrnda_f32
16552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrnda_f32(a);
16562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frinta v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
16572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndaq_f32(float32x4_t a) {
1660651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndaq_f32
16612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndaq_f32(a);
16622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frinta v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
16632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndaq_f64(float64x2_t a) {
1666651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndaq_f64
16672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndaq_f64(a);
16682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frinta v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
16692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndp_f32(float32x2_t a) {
1672651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndp_f32
16732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndp_f32(a);
16742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintp v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
16752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndpq_f32(float32x4_t a) {
1678651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndpq_f32
16792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndpq_f32(a);
16802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintp v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
16812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndpq_f64(float64x2_t a) {
1684651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndpq_f64
16852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndpq_f64(a);
16862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintp v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
16872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndm_f32(float32x2_t a) {
1690651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndm_f32
16912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndm_f32(a);
16922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintm v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
16932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
16942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
16952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndmq_f32(float32x4_t a) {
1696651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndmq_f32
16972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndmq_f32(a);
16982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintm v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
16992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndmq_f64(float64x2_t a) {
1702651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndmq_f64
17032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndmq_f64(a);
17042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintm v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
17052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndx_f32(float32x2_t a) {
1708651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndx_f32
17092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndx_f32(a);
17102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintx v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
17112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndxq_f32(float32x4_t a) {
1714651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndxq_f32
17152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndxq_f32(a);
17162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintx v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
17172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndxq_f64(float64x2_t a) {
1720651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndxq_f64
17212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndxq_f64(a);
17222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintx v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
17232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrnd_f32(float32x2_t a) {
1726651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrnd_f32
17272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrnd_f32(a);
17282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintz v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
17292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndq_f32(float32x4_t a) {
1732651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndq_f32
17332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndq_f32(a);
17342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintz v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
17352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndq_f64(float64x2_t a) {
1738651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndq_f64
17392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndq_f64(a);
17402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frintz v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
17412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndi_f32(float32x2_t a) {
1744651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndi_f32
17452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndi_f32(a);
17462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frinti v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
17472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndiq_f32(float32x4_t a) {
1750651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndiq_f32
17512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndiq_f32(a);
17522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frinti v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
17532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndiq_f64(float64x2_t a) {
1756651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrndiq_f64
17572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrndiq_f64(a);
17582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frinti v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
17592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvt_s32_f32(float32x2_t a) {
1762651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_s32_f32
17632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_s32_f32(a);
17642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtzs v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
17652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtq_s32_f32(float32x4_t a) {
1768651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtq_s32_f32
17692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtq_s32_f32(a);
17702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtzs v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
17712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtq_s64_f64(float64x2_t a) {
1774651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtq_s64_f64
17752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtq_s64_f64(a);
17762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtzs v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
17772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvt_u32_f32(float32x2_t a) {
1780651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_u32_f32
17812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_u32_f32(a);
17822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtzu v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
17832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtq_u32_f32(float32x4_t a) {
1786651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtq_u32_f32
17872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtq_u32_f32(a);
17882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtzu v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
17892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtq_u64_f64(float64x2_t a) {
1792651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtq_u64_f64
17932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtq_u64_f64(a);
17942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtzu v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
17952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
17962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
17972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvtn_s32_f32(float32x2_t a) {
1798651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtn_s32_f32
17992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtn_s32_f32(a);
18002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtns v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
18012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtnq_s32_f32(float32x4_t a) {
1804651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtnq_s32_f32
18052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtnq_s32_f32(a);
18062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtns v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
18072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtnq_s64_f64(float64x2_t a) {
1810651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtnq_s64_f64
18112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtnq_s64_f64(a);
18122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtns v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
18132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvtn_u32_f32(float32x2_t a) {
1816651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtn_u32_f32
18172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtn_u32_f32(a);
18182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtnu v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
18192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtnq_u32_f32(float32x4_t a) {
1822651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtnq_u32_f32
18232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtnq_u32_f32(a);
18242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtnu v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
18252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtnq_u64_f64(float64x2_t a) {
1828651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtnq_u64_f64
18292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtnq_u64_f64(a);
18302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtnu v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
18312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvtp_s32_f32(float32x2_t a) {
1834651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtp_s32_f32
18352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtp_s32_f32(a);
18362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtps v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
18372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtpq_s32_f32(float32x4_t a) {
1840651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtpq_s32_f32
18412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtpq_s32_f32(a);
18422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtps v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
18432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtpq_s64_f64(float64x2_t a) {
1846651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtpq_s64_f64
18472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtpq_s64_f64(a);
18482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtps v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
18492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvtp_u32_f32(float32x2_t a) {
1852651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtp_u32_f32
18532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtp_u32_f32(a);
18542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtpu v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
18552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtpq_u32_f32(float32x4_t a) {
1858651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtpq_u32_f32
18592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtpq_u32_f32(a);
18602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtpu v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
18612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtpq_u64_f64(float64x2_t a) {
1864651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtpq_u64_f64
18652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtpq_u64_f64(a);
18662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtpu v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
18672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvtm_s32_f32(float32x2_t a) {
1870651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtm_s32_f32
18712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtm_s32_f32(a);
18722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtms v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
18732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtmq_s32_f32(float32x4_t a) {
1876651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtmq_s32_f32
18772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtmq_s32_f32(a);
18782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtms v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
18792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtmq_s64_f64(float64x2_t a) {
1882651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtmq_s64_f64
18832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtmq_s64_f64(a);
18842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtms v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
18852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvtm_u32_f32(float32x2_t a) {
1888651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtm_u32_f32
18892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtm_u32_f32(a);
18902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtmu v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
18912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtmq_u32_f32(float32x4_t a) {
1894651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtmq_u32_f32
18952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtmq_u32_f32(a);
18962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtmu v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
18972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
18982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
18992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtmq_u64_f64(float64x2_t a) {
1900651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtmq_u64_f64
19012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtmq_u64_f64(a);
19022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtmu v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
19032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvta_s32_f32(float32x2_t a) {
1906651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvta_s32_f32
19072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvta_s32_f32(a);
19082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtas v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
19092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtaq_s32_f32(float32x4_t a) {
1912651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtaq_s32_f32
19132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtaq_s32_f32(a);
19142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtas v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
19152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtaq_s64_f64(float64x2_t a) {
1918651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtaq_s64_f64
19192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtaq_s64_f64(a);
19202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtas v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
19212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvta_u32_f32(float32x2_t a) {
1924651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvta_u32_f32
19252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvta_u32_f32(a);
19262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtau v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
19272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtaq_u32_f32(float32x4_t a) {
1930651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtaq_u32_f32
19312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtaq_u32_f32(a);
19322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtau v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
19332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtaq_u64_f64(float64x2_t a) {
1936651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtaq_u64_f64
19372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtaq_u64_f64(a);
19382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fcvtau v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
19392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrsqrte_f32(float32x2_t a) {
1942651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrsqrte_f32
19432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrsqrte_f32(a);
19442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frsqrte v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
19452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrsqrteq_f32(float32x4_t a) {
1948651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrsqrteq_f32
19492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrsqrteq_f32(a);
19502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frsqrte v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
19512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrsqrteq_f64(float64x2_t a) {
1954651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrsqrteq_f64
19552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrsqrteq_f64(a);
19562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frsqrte v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
19572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrecpe_f32(float32x2_t a) {
1960651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrecpe_f32
19612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrecpe_f32(a);
19622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frecpe v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
19632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrecpeq_f32(float32x4_t a) {
1966651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrecpeq_f32
19672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrecpeq_f32(a);
19682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frecpe v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
19692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrecpeq_f64(float64x2_t a) {
1972651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrecpeq_f64
19732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrecpeq_f64(a);
19742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: frecpe v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
19752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vrecpe_u32(uint32x2_t a) {
1978651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrecpe_u32
19792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrecpe_u32(a);
19802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: urecpe v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
19812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vrecpeq_u32(uint32x4_t a) {
1984651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vrecpeq_u32
19852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vrecpeq_u32(a);
19862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: urecpe v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
19872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vsqrt_f32(float32x2_t a) {
1990651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vsqrt_f32
19912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vsqrt_f32(a);
19922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fsqrt v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
19932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
19942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
19952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vsqrtq_f32(float32x4_t a) {
1996651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vsqrtq_f32
19972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vsqrtq_f32(a);
19982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fsqrt v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
19992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
20002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
20012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vsqrtq_f64(float64x2_t a) {
2002651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vsqrtq_f64
20032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vsqrtq_f64(a);
20042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  // CHECK: fsqrt v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
20052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
20062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
20072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vcvt_f32_s32(int32x2_t a) {
2008651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_f32_s32
20092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_f32_s32(a);
20102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  //CHECK: scvtf v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
20112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
20122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
20132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vcvt_f32_u32(uint32x2_t a) {
2014651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvt_f32_u32
20152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvt_f32_u32(a);
20162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  //CHECK: ucvtf v{{[0-9]+}}.2s, v{{[0-9]+}}.2s
20172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
20182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
20192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvtq_f32_s32(int32x4_t a) {
2020651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtq_f32_s32
20212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtq_f32_s32(a);
20222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  //CHECK: scvtf v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
20232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
20242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
20252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvtq_f32_u32(uint32x4_t a) {
2026651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtq_f32_u32
20272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtq_f32_u32(a);
20282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  //CHECK: ucvtf v{{[0-9]+}}.4s, v{{[0-9]+}}.4s
20292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
20302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
20312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vcvtq_f64_s64(int64x2_t a) {
2032651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtq_f64_s64
20332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtq_f64_s64(a);
20342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  //CHECK: scvtf v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
20352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
20362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin
20372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vcvtq_f64_u64(uint64x2_t a) {
2038651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  //CHECK-LABEL: test_vcvtq_f64_u64
20392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  return vcvtq_f64_u64(a);
20402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin  //CHECK: ucvtf v{{[0-9]+}}.2d, v{{[0-9]+}}.2d
20412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin}
2042