aarch64-neon-misc.c revision 612f5bfeac5c4d923bb448b2f06e3aeab318130f
12a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// REQUIRES: aarch64-registered-target 22a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +neon \ 32a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// 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 92a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqz_s8 102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #0x0 112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vceqz_s8(int8x8_t a) { 122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqz_s8(a); 132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqz_s16 162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #0x0 172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vceqz_s16(int16x4_t a) { 182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqz_s16(a); 192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqz_s32 222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0x0 232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vceqz_s32(int32x2_t a) { 242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqz_s32(a); 252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 27612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: test_vceqz_s64 28612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: cmeq {{d[0-9]+}}, {{d[0-9]+}}, #0x0 29612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vceqz_s64(int64x1_t a) { 30612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling return vceqz_s64(a); 31612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling} 32612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling 33612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: test_vceqz_u64 34612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: cmeq {{d[0-9]+}}, {{d[0-9]+}}, #0x0 35612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vceqz_u64(uint64x1_t a) { 36612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling return vceqz_u64(a); 37612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling} 38612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling 39612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: test_vceqz_p64 40612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: cmeq {{d[0-9]+}}, {{d[0-9]+}}, #0x0 41612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vceqz_p64(poly64x1_t a) { 42612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling return vceqz_p64(a); 43612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling} 44612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling 452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_s8 462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #0x0 472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vceqzq_s8(int8x16_t a) { 482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_s8(a); 492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_s16 522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #0x0 532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vceqzq_s16(int16x8_t a) { 542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_s16(a); 552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_s32 582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0x0 592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vceqzq_s32(int32x4_t a) { 602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_s32(a); 612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_s64 642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0x0 652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vceqzq_s64(int64x2_t a) { 662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_s64(a); 672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqz_u8 702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #0x0 712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vceqz_u8(uint8x8_t a) { 722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqz_u8(a); 732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqz_u16 762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #0x0 772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vceqz_u16(uint16x4_t a) { 782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqz_u16(a); 792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqz_u32 822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0x0 832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vceqz_u32(uint32x2_t a) { 842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqz_u32(a); 852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_u8 882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #0x0 892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vceqzq_u8(uint8x16_t a) { 902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_u8(a); 912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_u16 942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #0x0 952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vceqzq_u16(uint16x8_t a) { 962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_u16(a); 972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_u32 1002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0x0 1012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vceqzq_u32(uint32x4_t a) { 1022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_u32(a); 1032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_u64 1062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0x0 1072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vceqzq_u64(uint64x2_t a) { 1082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_u64(a); 1092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: 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 1172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_f32 1182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmeq {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0 1192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vceqzq_f32(float32x4_t a) { 1202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_f32(a); 1212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqz_p16 1242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #0x0 1252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vceqz_p16(poly16x4_t a) { 1262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqz_p16(a); 1272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_p16 1302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmeq {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #0x0 1312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vceqzq_p16(poly16x8_t a) { 1322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_p16(a); 1332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vceqzq_f64 1362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmeq {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0 1372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vceqzq_f64(float64x2_t a) { 1382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vceqzq_f64(a); 1392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 141612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: test_vceqzq_p64 142612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: cmeq {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0 143612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x2_t test_vceqzq_p64(poly64x2_t a) { 144612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling return vceqzq_p64(a); 145612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling} 146612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling 1472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgez_s8 1482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmge {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #0x0 1492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vcgez_s8(int8x8_t a) { 1502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgez_s8(a); 1512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgez_s16 1542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmge {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #0x0 1552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vcgez_s16(int16x4_t a) { 1562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgez_s16(a); 1572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgez_s32 1602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmge {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0x0 1612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcgez_s32(int32x2_t a) { 1622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgez_s32(a); 1632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 165612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: test_vcgez_s64 166612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: cmge {{d[0-9]+}}, {{d[0-9]+}}, #0x0 167612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vcgez_s64(int64x1_t a) { 168612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling return vcgez_s64(a); 169612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling} 170612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling 1712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgezq_s8 1722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmge {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #0x0 1732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vcgezq_s8(int8x16_t a) { 1742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgezq_s8(a); 1752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgezq_s16 1782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmge {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #0x0 1792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vcgezq_s16(int16x8_t a) { 1802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgezq_s16(a); 1812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgezq_s32 1842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmge {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0x0 1852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcgezq_s32(int32x4_t a) { 1862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgezq_s32(a); 1872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgezq_s64 1902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmge {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0x0 1912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcgezq_s64(int64x2_t a) { 1922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgezq_s64(a); 1932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 1942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 1952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgez_f32 1962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmge {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0 1972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcgez_f32(float32x2_t a) { 1982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgez_f32(a); 1992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgezq_f32 2022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmge {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0 2032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcgezq_f32(float32x4_t a) { 2042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgezq_f32(a); 2052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgezq_f64 2082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmge {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0 2092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcgezq_f64(float64x2_t a) { 2102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgezq_f64(a); 2112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclez_s8 2142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmle {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #0x0 2152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vclez_s8(int8x8_t a) { 2162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclez_s8(a); 2172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclez_s16 2202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmle {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #0x0 2212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vclez_s16(int16x4_t a) { 2222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclez_s16(a); 2232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclez_s32 2262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmle {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0x0 2272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vclez_s32(int32x2_t a) { 2282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclez_s32(a); 2292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 231612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: test_vclez_s64 232612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: cmle {{d[0-9]+}}, {{d[0-9]+}}, #0x0 233612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vclez_s64(int64x1_t a) { 234612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling return vclez_s64(a); 235612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling} 236612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling 2372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclezq_s8 2382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmle {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #0x0 2392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vclezq_s8(int8x16_t a) { 2402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclezq_s8(a); 2412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclezq_s16 2442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmle {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #0x0 2452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vclezq_s16(int16x8_t a) { 2462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclezq_s16(a); 2472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclezq_s32 2502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmle {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0x0 2512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vclezq_s32(int32x4_t a) { 2522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclezq_s32(a); 2532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclezq_s64 2562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmle {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0x0 2572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vclezq_s64(int64x2_t a) { 2582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclezq_s64(a); 2592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclez_f32 2622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmle {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0 2632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vclez_f32(float32x2_t a) { 2642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclez_f32(a); 2652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclezq_f32 2682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmle {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0 2692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vclezq_f32(float32x4_t a) { 2702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclezq_f32(a); 2712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vclezq_f64 2742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmle {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0 2752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vclezq_f64(float64x2_t a) { 2762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclezq_f64(a); 2772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtz_s8 2802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmgt {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #0x0 2812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vcgtz_s8(int8x8_t a) { 2822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtz_s8(a); 2832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtz_s16 2862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmgt {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #0x0 2872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vcgtz_s16(int16x4_t a) { 2882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtz_s16(a); 2892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 2912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtz_s32 2922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmgt {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0x0 2932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcgtz_s32(int32x2_t a) { 2942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtz_s32(a); 2952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 297612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: test_vcgtz_s64 298612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: cmgt {{d[0-9]+}}, {{d[0-9]+}}, #0x0 299612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vcgtz_s64(int64x1_t a) { 300612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling return vcgtz_s64(a); 301612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling} 302612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling 3032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtzq_s8 3042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmgt {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #0x0 3052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vcgtzq_s8(int8x16_t a) { 3062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtzq_s8(a); 3072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtzq_s16 3102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmgt {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #0x0 3112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vcgtzq_s16(int16x8_t a) { 3122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtzq_s16(a); 3132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtzq_s32 3162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmgt {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0x0 3172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcgtzq_s32(int32x4_t a) { 3182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtzq_s32(a); 3192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtzq_s64 3222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmgt {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0x0 3232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcgtzq_s64(int64x2_t a) { 3242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtzq_s64(a); 3252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtz_f32 3282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmgt {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0 3292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcgtz_f32(float32x2_t a) { 3302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtz_f32(a); 3312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtzq_f32 3342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmgt {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0 3352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcgtzq_f32(float32x4_t a) { 3362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtzq_f32(a); 3372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcgtzq_f64 3402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmgt {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0 3412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcgtzq_f64(float64x2_t a) { 3422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcgtzq_f64(a); 3432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltz_s8 3462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmlt {{v[0-9]+}}.8b, {{v[0-9]+}}.8b, #0 3472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vcltz_s8(int8x8_t a) { 3482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltz_s8(a); 3492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltz_s16 3522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmlt {{v[0-9]+}}.4h, {{v[0-9]+}}.4h, #0 3532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vcltz_s16(int16x4_t a) { 3542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltz_s16(a); 3552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltz_s32 3582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmlt {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0 3592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcltz_s32(int32x2_t a) { 3602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltz_s32(a); 3612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 363612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: test_vcltz_s64 364612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling// CHECK: cmlt {{d[0-9]+}}, {{d[0-9]+}}, #0 365612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendlinguint64x1_t test_vcltz_s64(int64x1_t a) { 366612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling return vcltz_s64(a); 367612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling} 368612f5bfeac5c4d923bb448b2f06e3aeab318130fBill Wendling 3692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltzq_s8 3702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmlt {{v[0-9]+}}.16b, {{v[0-9]+}}.16b, #0 3712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vcltzq_s8(int8x16_t a) { 3722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltzq_s8(a); 3732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltzq_s16 3762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmlt {{v[0-9]+}}.8h, {{v[0-9]+}}.8h, #0 3772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vcltzq_s16(int16x8_t a) { 3782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltzq_s16(a); 3792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltzq_s32 3822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmlt {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0 3832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcltzq_s32(int32x4_t a) { 3842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltzq_s32(a); 3852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltzq_s64 3882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: cmlt {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0 3892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcltzq_s64(int64x2_t a) { 3902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltzq_s64(a); 3912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltz_f32 3942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmlt {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, #0 3952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcltz_f32(float32x2_t a) { 3962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltz_f32(a); 3972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 3982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 3992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltzq_f32 4002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmlt {{v[0-9]+}}.4s, {{v[0-9]+}}.4s, #0 4012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcltzq_f32(float32x4_t a) { 4022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltzq_f32(a); 4032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vcltzq_f64 4062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: fcmlt {{v[0-9]+}}.2d, {{v[0-9]+}}.2d, #0 4072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcltzq_f64(float64x2_t a) { 4082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcltzq_f64(a); 4092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev16_s8 4122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 4132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vrev16_s8(int8x8_t a) { 4142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev16_s8(a); 4152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev16_u8 4182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 4192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vrev16_u8(uint8x8_t a) { 4202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev16_u8(a); 4212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev16_p8 4242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 4252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vrev16_p8(poly8x8_t a) { 4262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev16_p8(a); 4272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev16q_s8 4302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 4312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vrev16q_s8(int8x16_t a) { 4322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev16q_s8(a); 4332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev16q_u8 4362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 4372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vrev16q_u8(uint8x16_t a) { 4382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev16q_u8(a); 4392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev16q_p8 4422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev16 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 4432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vrev16q_p8(poly8x16_t a) { 4442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev16q_p8(a); 4452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32_s8 4482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 4492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vrev32_s8(int8x8_t a) { 4502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32_s8(a); 4512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32_s16 4542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 4552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vrev32_s16(int16x4_t a) { 4562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32_s16(a); 4572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32_u8 4602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 4612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vrev32_u8(uint8x8_t a) { 4622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32_u8(a); 4632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32_u16 4662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 4672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vrev32_u16(uint16x4_t a) { 4682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32_u16(a); 4692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32_p8 4722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 4732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vrev32_p8(poly8x8_t a) { 4742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32_p8(a); 4752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32_p16 4782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 4792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly16x4_t test_vrev32_p16(poly16x4_t a) { 4802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32_p16(a); 4812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32q_s8 4842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 4852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vrev32q_s8(int8x16_t a) { 4862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32q_s8(a); 4872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32q_s16 4902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 4912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vrev32q_s16(int16x8_t a) { 4922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32q_s16(a); 4932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 4942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 4952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32q_u8 4962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 4972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vrev32q_u8(uint8x16_t a) { 4982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32q_u8(a); 4992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32q_u16 5022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 5032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vrev32q_u16(uint16x8_t a) { 5042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32q_u16(a); 5052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32q_p8 5082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 5092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vrev32q_p8(poly8x16_t a) { 5102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32q_p8(a); 5112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev32q_p16 5142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev32 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 5152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly16x8_t test_vrev32q_p16(poly16x8_t a) { 5162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev32q_p16(a); 5172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64_s8 5202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 5212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vrev64_s8(int8x8_t a) { 5222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64_s8(a); 5232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64_s16 5262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 5272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vrev64_s16(int16x4_t a) { 5282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64_s16(a); 5292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64_s32 5322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 5332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vrev64_s32(int32x2_t a) { 5342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64_s32(a); 5352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64_u8 5382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 5392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vrev64_u8(uint8x8_t a) { 5402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64_u8(a); 5412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64_u16 5442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 5452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vrev64_u16(uint16x4_t a) { 5462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64_u16(a); 5472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64_u32 5502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 5512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vrev64_u32(uint32x2_t a) { 5522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64_u32(a); 5532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64_p8 5562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 5572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vrev64_p8(poly8x8_t a) { 5582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64_p8(a); 5592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64_p16 5622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 5632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly16x4_t test_vrev64_p16(poly16x4_t a) { 5642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64_p16(a); 5652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64_f32 5682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 5692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrev64_f32(float32x2_t a) { 5702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64_f32(a); 5712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64q_s8 5742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 5752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vrev64q_s8(int8x16_t a) { 5762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64q_s8(a); 5772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64q_s16 5802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 5812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vrev64q_s16(int16x8_t a) { 5822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64q_s16(a); 5832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64q_s32 5862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 5872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vrev64q_s32(int32x4_t a) { 5882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64q_s32(a); 5892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64q_u8 5922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 5932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vrev64q_u8(uint8x16_t a) { 5942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64q_u8(a); 5952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 5962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 5972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64q_u16 5982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 5992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vrev64q_u16(uint16x8_t a) { 6002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64q_u16(a); 6012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64q_u32 6042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 6052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vrev64q_u32(uint32x4_t a) { 6062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64q_u32(a); 6072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64q_p8 6102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 6112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vrev64q_p8(poly8x16_t a) { 6122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64q_p8(a); 6132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64q_p16 6162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 6172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly16x8_t test_vrev64q_p16(poly16x8_t a) { 6182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64q_p16(a); 6192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: test_vrev64q_f32 6222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin// CHECK: rev64 v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 6232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrev64q_f32(float32x4_t a) { 6242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrev64q_f32(a); 6252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vpaddl_s8(int8x8_t a) { 6282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddl_s8 6292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddl_s8(a); 6302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: saddlp v{{[0-9]+}}.4h, v{{[0-9]+}}.8b 6312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vpaddl_s16(int16x4_t a) { 6342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddl_s16 6352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddl_s16(a); 6362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: saddlp v{{[0-9]+}}.2s, v{{[0-9]+}}.4h 6372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x1_t test_vpaddl_s32(int32x2_t a) { 6402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddl_s32 6412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddl_s32(a); 6422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: saddlp v{{[0-9]+}}.1d, v{{[0-9]+}}.2s 6432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vpaddl_u8(uint8x8_t a) { 6462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddl_u8 6472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddl_u8(a); 6482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uaddlp v{{[0-9]+}}.4h, v{{[0-9]+}}.8b 6492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vpaddl_u16(uint16x4_t a) { 6522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddl_u16 6532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddl_u16(a); 6542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uaddlp v{{[0-9]+}}.2s, v{{[0-9]+}}.4h 6552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x1_t test_vpaddl_u32(uint32x2_t a) { 6582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddl_u32 6592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddl_u32(a); 6602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uaddlp v{{[0-9]+}}.1d, v{{[0-9]+}}.2s 6612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vpaddlq_s8(int8x16_t a) { 6642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddlq_s8 6652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddlq_s8(a); 6662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: saddlp v{{[0-9]+}}.8h, v{{[0-9]+}}.16b 6672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vpaddlq_s16(int16x8_t a) { 6702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddlq_s16 6712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddlq_s16(a); 6722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: saddlp v{{[0-9]+}}.4s, v{{[0-9]+}}.8h 6732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vpaddlq_s32(int32x4_t a) { 6762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddlq_s32 6772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddlq_s32(a); 6782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: saddlp v{{[0-9]+}}.2d, v{{[0-9]+}}.4s 6792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vpaddlq_u8(uint8x16_t a) { 6822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddlq_u8 6832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddlq_u8(a); 6842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uaddlp v{{[0-9]+}}.8h, v{{[0-9]+}}.16b 6852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vpaddlq_u16(uint16x8_t a) { 6882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddlq_u16 6892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddlq_u16(a); 6902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uaddlp v{{[0-9]+}}.4s, v{{[0-9]+}}.8h 6912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vpaddlq_u32(uint32x4_t a) { 6942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpaddlq_u32 6952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpaddlq_u32(a); 6962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uaddlp v{{[0-9]+}}.2d, v{{[0-9]+}}.4s 6972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 6982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 6992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vpadal_s8(int16x4_t a, int8x8_t b) { 7002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadal_s8 7012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadal_s8(a, b); 7022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sadalp v{{[0-9]+}}.4h, v{{[0-9]+}}.8b 7032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vpadal_s16(int32x2_t a, int16x4_t b) { 7062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadal_s16 7072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadal_s16(a, b); 7082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sadalp v{{[0-9]+}}.2s, v{{[0-9]+}}.4h 7092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x1_t test_vpadal_s32(int64x1_t a, int32x2_t b) { 7122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadal_s32 7132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadal_s32(a, b); 7142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sadalp v{{[0-9]+}}.1d, v{{[0-9]+}}.2s 7152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vpadal_u8(uint16x4_t a, uint8x8_t b) { 7182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadal_u8 7192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadal_u8(a, b); 7202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uadalp v{{[0-9]+}}.4h, v{{[0-9]+}}.8b 7212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vpadal_u16(uint32x2_t a, uint16x4_t b) { 7242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadal_u16 7252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadal_u16(a, b); 7262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uadalp v{{[0-9]+}}.2s, v{{[0-9]+}}.4h 7272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x1_t test_vpadal_u32(uint64x1_t a, uint32x2_t b) { 7302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadal_u32 7312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadal_u32(a, b); 7322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uadalp v{{[0-9]+}}.1d, v{{[0-9]+}}.2s 7332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vpadalq_s8(int16x8_t a, int8x16_t b) { 7362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadalq_s8 7372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadalq_s8(a, b); 7382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sadalp v{{[0-9]+}}.8h, v{{[0-9]+}}.16b 7392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vpadalq_s16(int32x4_t a, int16x8_t b) { 7422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadalq_s16 7432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadalq_s16(a, b); 7442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sadalp v{{[0-9]+}}.4s, v{{[0-9]+}}.8h 7452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vpadalq_s32(int64x2_t a, int32x4_t b) { 7482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadalq_s32 7492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadalq_s32(a, b); 7502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sadalp v{{[0-9]+}}.2d, v{{[0-9]+}}.4s 7512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vpadalq_u8(uint16x8_t a, uint8x16_t b) { 7542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadalq_u8 7552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadalq_u8(a, b); 7562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uadalp v{{[0-9]+}}.8h, v{{[0-9]+}}.16b 7572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vpadalq_u16(uint32x4_t a, uint16x8_t b) { 7602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadalq_u16 7612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadalq_u16(a, b); 7622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uadalp v{{[0-9]+}}.4s, v{{[0-9]+}}.8h 7632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vpadalq_u32(uint64x2_t a, uint32x4_t b) { 7662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vpadalq_u32 7672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vpadalq_u32(a, b); 7682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uadalp v{{[0-9]+}}.2d, v{{[0-9]+}}.4s 7692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vqabs_s8(int8x8_t a) { 7722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqabs_s8 7732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqabs_s8(a); 7742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqabs v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 7752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vqabsq_s8(int8x16_t a) { 7782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqabsq_s8 7792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqabsq_s8(a); 7802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqabs v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 7812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vqabs_s16(int16x4_t a) { 7842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqabs_s16 7852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqabs_s16(a); 7862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqabs v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 7872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vqabsq_s16(int16x8_t a) { 7902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqabsq_s16 7912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqabsq_s16(a); 7922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqabs v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 7932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 7942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 7952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vqabs_s32(int32x2_t a) { 7962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqabs_s32 7972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqabs_s32(a); 7982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqabs v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 7992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vqabsq_s32(int32x4_t a) { 8022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqabsq_s32 8032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqabsq_s32(a); 8042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqabs v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 8052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vqabsq_s64(int64x2_t a) { 8082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqabsq_s64 8092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqabsq_s64(a); 8102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqabs v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 8112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vqneg_s8(int8x8_t a) { 8142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqneg_s8 8152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqneg_s8(a); 8162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqneg v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 8172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vqnegq_s8(int8x16_t a) { 8202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqnegq_s8 8212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqnegq_s8(a); 8222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqneg v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 8232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vqneg_s16(int16x4_t a) { 8262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqneg_s16 8272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqneg_s16(a); 8282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqneg v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 8292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vqnegq_s16(int16x8_t a) { 8322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqnegq_s16 8332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqnegq_s16(a); 8342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqneg v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 8352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vqneg_s32(int32x2_t a) { 8382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqneg_s32 8392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqneg_s32(a); 8402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqneg v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 8412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vqnegq_s32(int32x4_t a) { 8442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqnegq_s32 8452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqnegq_s32(a); 8462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqneg v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 8472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vqnegq_s64(int64x2_t a) { 8502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqnegq_s64 8512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqnegq_s64(a); 8522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqneg v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 8532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vneg_s8(int8x8_t a) { 8562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vneg_s8 8572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vneg_s8(a); 8582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: neg v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 8592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vnegq_s8(int8x16_t a) { 8622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vnegq_s8 8632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vnegq_s8(a); 8642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: neg v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 8652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vneg_s16(int16x4_t a) { 8682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vneg_s16 8692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vneg_s16(a); 8702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: neg v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 8712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vnegq_s16(int16x8_t a) { 8742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vnegq_s16 8752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vnegq_s16(a); 8762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: neg v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 8772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vneg_s32(int32x2_t a) { 8802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vneg_s32 8812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vneg_s32(a); 8822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: neg v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 8832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vnegq_s32(int32x4_t a) { 8862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vnegq_s32 8872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vnegq_s32(a); 8882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: neg v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 8892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vnegq_s64(int64x2_t a) { 8922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vnegq_s64 8932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vnegq_s64(a); 8942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: neg v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 8952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 8962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 8972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vneg_f32(float32x2_t a) { 8982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vneg_f32 8992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vneg_f32(a); 9002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fneg v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 9012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vnegq_f32(float32x4_t a) { 9042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vnegq_f32 9052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vnegq_f32(a); 9062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fneg v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 9072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vnegq_f64(float64x2_t a) { 9102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vnegq_f64 9112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vnegq_f64(a); 9122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fneg v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 9132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vabs_s8(int8x8_t a) { 9162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabs_s8 9172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabs_s8(a); 9182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: abs v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 9192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vabsq_s8(int8x16_t a) { 9222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabsq_s8 9232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabsq_s8(a); 9242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: abs v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 9252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vabs_s16(int16x4_t a) { 9282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabs_s16 9292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabs_s16(a); 9302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: abs v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 9312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vabsq_s16(int16x8_t a) { 9342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabsq_s16 9352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabsq_s16(a); 9362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: abs v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 9372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vabs_s32(int32x2_t a) { 9402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabs_s32 9412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabs_s32(a); 9422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: abs v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 9432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vabsq_s32(int32x4_t a) { 9462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabsq_s32 9472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabsq_s32(a); 9482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: abs v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 9492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vabsq_s64(int64x2_t a) { 9522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabsq_s64 9532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabsq_s64(a); 9542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: abs v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 9552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vabs_f32(float32x2_t a) { 9582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabs_f32 9592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabs_f32(a); 9602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fabs v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 9612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vabsq_f32(float32x4_t a) { 9642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabsq_f32 9652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabsq_f32(a); 9662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fabs v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 9672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vabsq_f64(float64x2_t a) { 9702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vabsq_f64 9712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vabsq_f64(a); 9722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fabs v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 9732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vuqadd_s8(int8x8_t a, int8x8_t b) { 9762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vuqadd_s8 9772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vuqadd_s8(a, b); 9782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: suqadd v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 9792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vuqaddq_s8(int8x16_t a, int8x16_t b) { 9822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vuqaddq_s8 9832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vuqaddq_s8(a, b); 9842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: suqadd v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 9852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vuqadd_s16(int16x4_t a, int16x4_t b) { 9882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vuqadd_s16 9892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vuqadd_s16(a, b); 9902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: suqadd v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 9912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vuqaddq_s16(int16x8_t a, int16x8_t b) { 9942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vuqaddq_s16 9952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vuqaddq_s16(a, b); 9962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: suqadd v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 9972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 9982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 9992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vuqadd_s32(int32x2_t a, int32x2_t b) { 10002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vuqadd_s32 10012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vuqadd_s32(a, b); 10022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: suqadd v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 10032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vuqaddq_s32(int32x4_t a, int32x4_t b) { 10062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vuqaddq_s32 10072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vuqaddq_s32(a, b); 10082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: suqadd v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 10092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vuqaddq_s64(int64x2_t a, int64x2_t b) { 10122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vuqaddq_s64 10132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vuqaddq_s64(a, b); 10142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: suqadd v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 10152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vcls_s8(int8x8_t a) { 10182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vcls_s8 10192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcls_s8(a); 10202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cls v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 10212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vclsq_s8(int8x16_t a) { 10242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclsq_s8 10252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclsq_s8(a); 10262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cls v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 10272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vcls_s16(int16x4_t a) { 10302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vcls_s16 10312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcls_s16(a); 10322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cls v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 10332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vclsq_s16(int16x8_t a) { 10362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclsq_s16 10372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclsq_s16(a); 10382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cls v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 10392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcls_s32(int32x2_t a) { 10422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vcls_s32 10432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcls_s32(a); 10442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cls v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 10452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vclsq_s32(int32x4_t a) { 10482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclsq_s32 10492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclsq_s32(a); 10502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cls v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 10512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vclz_s8(int8x8_t a) { 10542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclz_s8 10552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclz_s8(a); 10562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 10572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vclzq_s8(int8x16_t a) { 10602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclzq_s8 10612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclzq_s8(a); 10622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 10632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vclz_s16(int16x4_t a) { 10662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclz_s16 10672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclz_s16(a); 10682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 10692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vclzq_s16(int16x8_t a) { 10722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclzq_s16 10732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclzq_s16(a); 10742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 10752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vclz_s32(int32x2_t a) { 10782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclz_s32 10792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclz_s32(a); 10802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 10812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vclzq_s32(int32x4_t a) { 10842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclzq_s32 10852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclzq_s32(a); 10862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 10872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vclz_u8(uint8x8_t a) { 10902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclz_u8 10912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclz_u8(a); 10922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 10932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 10942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 10952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vclzq_u8(uint8x16_t a) { 10962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclzq_u8 10972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclzq_u8(a); 10982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 10992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vclz_u16(uint16x4_t a) { 11022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclz_u16 11032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclz_u16(a); 11042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.4h, v{{[0-9]+}}.4h 11052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vclzq_u16(uint16x8_t a) { 11082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclzq_u16 11092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclzq_u16(a); 11102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.8h, v{{[0-9]+}}.8h 11112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vclz_u32(uint32x2_t a) { 11142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclz_u32 11152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclz_u32(a); 11162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 11172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vclzq_u32(uint32x4_t a) { 11202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vclzq_u32 11212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vclzq_u32(a); 11222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: clz v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 11232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vcnt_s8(int8x8_t a) { 11262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vcnt_s8 11272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcnt_s8(a); 11282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cnt v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 11292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vcntq_s8(int8x16_t a) { 11322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vcntq_s8 11332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcntq_s8(a); 11342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cnt v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 11352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vcnt_u8(uint8x8_t a) { 11382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vcnt_u8 11392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcnt_u8(a); 11402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cnt v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 11412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vcntq_u8(uint8x16_t a) { 11442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vcntq_u8 11452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcntq_u8(a); 11462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cnt v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 11472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vcnt_p8(poly8x8_t a) { 11502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vcnt_p8 11512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcnt_p8(a); 11522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cnt v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 11532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vcntq_p8(poly8x16_t a) { 11562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vcntq_p8 11572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcntq_p8(a); 11582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: cnt v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 11592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vmvn_s8(int8x8_t a) { 11622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvn_s8 11632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvn_s8(a); 11642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 11652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vmvnq_s8(int8x16_t a) { 11682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvnq_s8 11692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvnq_s8(a); 11702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 11712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vmvn_s16(int16x4_t a) { 11742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvn_s16 11752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvn_s16(a); 11762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 11772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vmvnq_s16(int16x8_t a) { 11802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvnq_s16 11812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvnq_s16(a); 11822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 11832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vmvn_s32(int32x2_t a) { 11862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvn_s32 11872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvn_s32(a); 11882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 11892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vmvnq_s32(int32x4_t a) { 11922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvnq_s32 11932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvnq_s32(a); 11942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 11952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 11962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 11972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vmvn_u8(uint8x8_t a) { 11982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvn_u8 11992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvn_u8(a); 12002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 12012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vmvnq_u8(uint8x16_t a) { 12042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvnq_u8 12052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvnq_u8(a); 12062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 12072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vmvn_u16(uint16x4_t a) { 12102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvn_u16 12112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvn_u16(a); 12122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 12132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vmvnq_u16(uint16x8_t a) { 12162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvnq_u16 12172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvnq_u16(a); 12182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 12192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vmvn_u32(uint32x2_t a) { 12222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvn_u32 12232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvn_u32(a); 12242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 12252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vmvnq_u32(uint32x4_t a) { 12282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvnq_u32 12292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvnq_u32(a); 12302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 12312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vmvn_p8(poly8x8_t a) { 12342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvn_p8 12352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvn_p8(a); 12362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 12372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vmvnq_p8(poly8x16_t a) { 12402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmvnq_p8 12412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmvnq_p8(a); 12422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: not v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 12432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vrbit_s8(int8x8_t a) { 12462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vrbit_s8 12472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrbit_s8(a); 12482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: rbit v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 12492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vrbitq_s8(int8x16_t a) { 12522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vrbitq_s8 12532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrbitq_s8(a); 12542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: rbit v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 12552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vrbit_u8(uint8x8_t a) { 12582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vrbit_u8 12592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrbit_u8(a); 12602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: rbit v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 12612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vrbitq_u8(uint8x16_t a) { 12642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vrbitq_u8 12652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrbitq_u8(a); 12662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: rbit v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 12672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x8_t test_vrbit_p8(poly8x8_t a) { 12702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vrbit_p8 12712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrbit_p8(a); 12722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: rbit v{{[0-9]+}}.8b, v{{[0-9]+}}.8b 12732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinpoly8x16_t test_vrbitq_p8(poly8x16_t a) { 12762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vrbitq_p8 12772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrbitq_p8(a); 12782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: rbit v{{[0-9]+}}.16b, v{{[0-9]+}}.16b 12792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vmovn_s16(int16x8_t a) { 12822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_s16 12832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_s16(a); 12842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn v{{[0-9]+}}.8b, v{{[0-9]+}}.8h 12852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vmovn_s32(int32x4_t a) { 12882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_s32 12892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_s32(a); 12902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s 12912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vmovn_s64(int64x2_t a) { 12942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_s64 12952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_s64(a); 12962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d 12972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 12982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 12992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vmovn_u16(uint16x8_t a) { 13002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_u16 13012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_u16(a); 13022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn v{{[0-9]+}}.8b, v{{[0-9]+}}.8h 13032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vmovn_u32(uint32x4_t a) { 13062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_u32 13072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_u32(a); 13082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s 13092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vmovn_u64(uint64x2_t a) { 13122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_u64 13132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_u64(a); 13142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d 13152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vmovn_high_s16(int8x8_t a, int16x8_t b) { 13182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_high_s16 13192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_high_s16(a, b); 13202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h 13212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vmovn_high_s32(int16x4_t a, int32x4_t b) { 13242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_high_s32 13252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_high_s32(a, b); 13262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s 13272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vmovn_high_s64(int32x2_t a, int64x2_t b) { 13302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_high_s64 13312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_high_s64(a, b); 13322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d 13332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vmovn_high_u16(int8x8_t a, int16x8_t b) { 13362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_high_u16 13372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_high_u16(a, b); 13382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h 13392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vmovn_high_u32(int16x4_t a, int32x4_t b) { 13422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_high_u32 13432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_high_u32(a, b); 13442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s 13452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vmovn_high_u64(int32x2_t a, int64x2_t b) { 13482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vmovn_high_u64 13492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vmovn_high_u64(a, b); 13502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: xtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d 13512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vqmovun_s16(int16x8_t a) { 13542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovun_s16 13552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovun_s16(a); 13562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtun v{{[0-9]+}}.8b, v{{[0-9]+}}.8h 13572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vqmovun_s32(int32x4_t a) { 13602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovun_s32 13612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovun_s32(a); 13622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtun v{{[0-9]+}}.4h, v{{[0-9]+}}.4s 13632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vqmovun_s64(int64x2_t a) { 13662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovun_s64 13672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovun_s64(a); 13682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtun v{{[0-9]+}}.2s, v{{[0-9]+}}.2d 13692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vqmovun_high_s16(int8x8_t a, int16x8_t b) { 13722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovun_high_s16 13732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovun_high_s16(a, b); 13742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtun2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h 13752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vqmovun_high_s32(int16x4_t a, int32x4_t b) { 13782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovun_high_s32 13792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovun_high_s32(a, b); 13802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtun2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s 13812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vqmovun_high_s64(int32x2_t a, int64x2_t b) { 13842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovun_high_s64 13852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovun_high_s64(a, b); 13862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtun2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d 13872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x8_t test_vqmovn_s16(int16x8_t a) { 13902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_s16 13912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_s16(a); 13922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtn v{{[0-9]+}}.8b, v{{[0-9]+}}.8h 13932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 13942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 13952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x4_t test_vqmovn_s32(int32x4_t a) { 13962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_s32 13972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_s32(a); 13982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s 13992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vqmovn_s64(int64x2_t a) { 14022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_s64 14032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_s64(a); 14042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d 14052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint8x16_t test_vqmovn_high_s16(int8x8_t a, int16x8_t b) { 14082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_high_s16 14092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_high_s16(a, b); 14102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtn2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h 14112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vqmovn_high_s32(int16x4_t a, int32x4_t b) { 14142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_high_s32 14152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_high_s32(a, b); 14162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s 14172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vqmovn_high_s64(int32x2_t a, int64x2_t b) { 14202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_high_s64 14212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_high_s64(a, b); 14222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: sqxtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d 14232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x8_t test_vqmovn_u16(uint16x8_t a) { 14262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_u16 14272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_u16(a); 14282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uqxtn v{{[0-9]+}}.8b, v{{[0-9]+}}.8h 14292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x4_t test_vqmovn_u32(uint32x4_t a) { 14322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_u32 14332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_u32(a); 14342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uqxtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s 14352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vqmovn_u64(uint64x2_t a) { 14382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_u64 14392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_u64(a); 14402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uqxtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d 14412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint8x16_t test_vqmovn_high_u16(uint8x8_t a, uint16x8_t b) { 14442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_high_u16 14452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_high_u16(a, b); 14462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uqxtn2 v{{[0-9]+}}.16b, v{{[0-9]+}}.8h 14472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vqmovn_high_u32(uint16x4_t a, uint32x4_t b) { 14502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_high_u32 14512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_high_u32(a, b); 14522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uqxtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s 14532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vqmovn_high_u64(uint32x2_t a, uint64x2_t b) { 14562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vqmovn_high_u64 14572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vqmovn_high_u64(a, b); 14582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: uqxtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d 14592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vshll_n_s8(int8x8_t a) { 14622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_n_s8 14632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_n_s8(a, 8); 14642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll {{v[0-9]+}}.8h, {{v[0-9]+}}.8b, #8 14652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vshll_n_s16(int16x4_t a) { 14682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_n_s16 14692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_n_s16(a, 16); 14702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll {{v[0-9]+}}.4s, {{v[0-9]+}}.4h, #16 14712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vshll_n_s32(int32x2_t a) { 14742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_n_s32 14752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_n_s32(a, 32); 14762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll {{v[0-9]+}}.2d, {{v[0-9]+}}.2s, #32 14772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vshll_n_u8(uint8x8_t a) { 14802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_n_u8 14812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_n_u8(a, 8); 14822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll {{v[0-9]+}}.8h, {{v[0-9]+}}.8b, #8 14832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vshll_n_u16(uint16x4_t a) { 14862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_n_u16 14872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_n_u16(a, 16); 14882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll {{v[0-9]+}}.4s, {{v[0-9]+}}.4h, #16 14892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vshll_n_u32(uint32x2_t a) { 14922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_n_u32 14932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_n_u32(a, 32); 14942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll {{v[0-9]+}}.2d, {{v[0-9]+}}.2s, #32 14952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 14962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 14972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint16x8_t test_vshll_high_n_s8(int8x16_t a) { 14982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_high_n_s8 14992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_high_n_s8(a, 8); 15002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll2 {{v[0-9]+}}.8h, {{v[0-9]+}}.16b, #8 15012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vshll_high_n_s16(int16x8_t a) { 15042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_high_n_s16 15052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_high_n_s16(a, 16); 15062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll2 {{v[0-9]+}}.4s, {{v[0-9]+}}.8h, #16 15072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vshll_high_n_s32(int32x4_t a) { 15102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_high_n_s32 15112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_high_n_s32(a, 32); 15122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll2 {{v[0-9]+}}.2d, {{v[0-9]+}}.4s, #32 15132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint16x8_t test_vshll_high_n_u8(uint8x16_t a) { 15162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_high_n_u8 15172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_high_n_u8(a, 8); 15182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll2 {{v[0-9]+}}.8h, {{v[0-9]+}}.16b, #8 15192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vshll_high_n_u16(uint16x8_t a) { 15222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_high_n_u16 15232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_high_n_u16(a, 16); 15242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll2 {{v[0-9]+}}.4s, {{v[0-9]+}}.8h, #16 15252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vshll_high_n_u32(uint32x4_t a) { 15282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: test_vshll_high_n_u32 15292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vshll_high_n_u32(a, 32); 15302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: shll2 {{v[0-9]+}}.2d, {{v[0-9]+}}.4s, #32 15312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat16x4_t test_vcvt_f16_f32(float32x4_t a) { 15342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_f16_f32 15352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_f16_f32(a); 15362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtn v{{[0-9]+}}.4h, v{{[0-9]+}}.4s 15372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat16x8_t test_vcvt_high_f16_f32(float16x4_t a, float32x4_t b) { 15402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_high_f16_f32 15412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_high_f16_f32(a, b); 15422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtn2 v{{[0-9]+}}.8h, v{{[0-9]+}}.4s 15432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vcvt_f32_f64(float64x2_t a) { 15462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_f32_f64 15472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_f32_f64(a); 15482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d 15492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvt_high_f32_f64(float32x2_t a, float64x2_t b) { 15522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_high_f32_f64 15532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_high_f32_f64(a, b); 15542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d 15552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vcvtx_f32_f64(float64x2_t a) { 15582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtx_f32_f64 15592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtx_f32_f64(a); 15602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtxn v{{[0-9]+}}.2s, v{{[0-9]+}}.2d 15612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvtx_high_f32_f64(float32x2_t a, float64x2_t b) { 15642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtx_high_f32_f64 15652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtx_high_f32_f64(a, b); 15662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtxn2 v{{[0-9]+}}.4s, v{{[0-9]+}}.2d 15672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvt_f32_f16(float16x4_t a) { 15702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_f32_f16 15712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_f32_f16(a); 15722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtl v{{[0-9]+}}.4s, v{{[0-9]+}}.4h 15732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvt_high_f32_f16(float16x8_t a) { 15762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_high_f32_f16 15772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_high_f32_f16(a); 15782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtl2 v{{[0-9]+}}.4s, v{{[0-9]+}}.8h 15792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vcvt_f64_f32(float32x2_t a) { 15822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_f64_f32 15832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_f64_f32(a); 15842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtl v{{[0-9]+}}.2d, v{{[0-9]+}}.2s 15852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vcvt_high_f64_f32(float32x4_t a) { 15882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_high_f64_f32 15892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_high_f64_f32(a); 15902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtl2 v{{[0-9]+}}.2d, v{{[0-9]+}}.4s 15912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndn_f32(float32x2_t a) { 15942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndn_f32 15952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndn_f32(a); 15962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintn v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 15972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 15982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 15992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndnq_f32(float32x4_t a) { 16002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndnq_f32 16012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndnq_f32(a); 16022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintn v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 16032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndnq_f64(float64x2_t a) { 16062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndnq_f64 16072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndnq_f64(a); 16082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintn v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 16092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrnda_f32(float32x2_t a) { 16122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrnda_f32 16132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrnda_f32(a); 16142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frinta v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 16152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndaq_f32(float32x4_t a) { 16182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndaq_f32 16192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndaq_f32(a); 16202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frinta v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 16212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndaq_f64(float64x2_t a) { 16242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndaq_f64 16252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndaq_f64(a); 16262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frinta v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 16272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndp_f32(float32x2_t a) { 16302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndp_f32 16312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndp_f32(a); 16322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintp v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 16332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndpq_f32(float32x4_t a) { 16362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndpq_f32 16372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndpq_f32(a); 16382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintp v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 16392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndpq_f64(float64x2_t a) { 16422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndpq_f64 16432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndpq_f64(a); 16442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintp v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 16452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndm_f32(float32x2_t a) { 16482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndm_f32 16492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndm_f32(a); 16502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintm v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 16512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndmq_f32(float32x4_t a) { 16542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndmq_f32 16552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndmq_f32(a); 16562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintm v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 16572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndmq_f64(float64x2_t a) { 16602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndmq_f64 16612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndmq_f64(a); 16622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintm v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 16632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndx_f32(float32x2_t a) { 16662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndx_f32 16672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndx_f32(a); 16682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintx v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 16692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndxq_f32(float32x4_t a) { 16722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndxq_f32 16732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndxq_f32(a); 16742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintx v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 16752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndxq_f64(float64x2_t a) { 16782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndxq_f64 16792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndxq_f64(a); 16802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintx v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 16812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrnd_f32(float32x2_t a) { 16842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrnd_f32 16852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrnd_f32(a); 16862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintz v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 16872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndq_f32(float32x4_t a) { 16902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndq_f32 16912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndq_f32(a); 16922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintz v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 16932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 16942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 16952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndq_f64(float64x2_t a) { 16962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndq_f64 16972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndq_f64(a); 16982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frintz v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 16992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrndi_f32(float32x2_t a) { 17022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndi_f32 17032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndi_f32(a); 17042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frinti v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 17052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrndiq_f32(float32x4_t a) { 17082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndiq_f32 17092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndiq_f32(a); 17102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frinti v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 17112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrndiq_f64(float64x2_t a) { 17142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrndiq_f64 17152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrndiq_f64(a); 17162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frinti v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 17172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvt_s32_f32(float32x2_t a) { 17202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_s32_f32 17212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_s32_f32(a); 17222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtzs v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 17232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtq_s32_f32(float32x4_t a) { 17262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtq_s32_f32 17272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtq_s32_f32(a); 17282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtzs v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 17292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtq_s64_f64(float64x2_t a) { 17322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtq_s64_f64 17332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtq_s64_f64(a); 17342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtzs v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 17352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvt_u32_f32(float32x2_t a) { 17382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_u32_f32 17392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_u32_f32(a); 17402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtzu v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 17412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtq_u32_f32(float32x4_t a) { 17442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtq_u32_f32 17452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtq_u32_f32(a); 17462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtzu v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 17472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtq_u64_f64(float64x2_t a) { 17502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtq_u64_f64 17512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtq_u64_f64(a); 17522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtzu v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 17532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvtn_s32_f32(float32x2_t a) { 17562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtn_s32_f32 17572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtn_s32_f32(a); 17582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtns v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 17592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtnq_s32_f32(float32x4_t a) { 17622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtnq_s32_f32 17632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtnq_s32_f32(a); 17642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtns v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 17652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtnq_s64_f64(float64x2_t a) { 17682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtnq_s64_f64 17692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtnq_s64_f64(a); 17702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtns v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 17712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvtn_u32_f32(float32x2_t a) { 17742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtn_u32_f32 17752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtn_u32_f32(a); 17762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtnu v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 17772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtnq_u32_f32(float32x4_t a) { 17802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtnq_u32_f32 17812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtnq_u32_f32(a); 17822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtnu v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 17832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtnq_u64_f64(float64x2_t a) { 17862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtnq_u64_f64 17872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtnq_u64_f64(a); 17882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtnu v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 17892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvtp_s32_f32(float32x2_t a) { 17922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtp_s32_f32 17932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtp_s32_f32(a); 17942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtps v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 17952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 17962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 17972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtpq_s32_f32(float32x4_t a) { 17982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtpq_s32_f32 17992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtpq_s32_f32(a); 18002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtps v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 18012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtpq_s64_f64(float64x2_t a) { 18042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtpq_s64_f64 18052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtpq_s64_f64(a); 18062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtps v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 18072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvtp_u32_f32(float32x2_t a) { 18102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtp_u32_f32 18112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtp_u32_f32(a); 18122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtpu v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 18132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtpq_u32_f32(float32x4_t a) { 18162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtpq_u32_f32 18172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtpq_u32_f32(a); 18182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtpu v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 18192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtpq_u64_f64(float64x2_t a) { 18222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtpq_u64_f64 18232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtpq_u64_f64(a); 18242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtpu v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 18252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvtm_s32_f32(float32x2_t a) { 18282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtm_s32_f32 18292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtm_s32_f32(a); 18302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtms v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 18312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtmq_s32_f32(float32x4_t a) { 18342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtmq_s32_f32 18352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtmq_s32_f32(a); 18362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtms v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 18372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtmq_s64_f64(float64x2_t a) { 18402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtmq_s64_f64 18412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtmq_s64_f64(a); 18422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtms v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 18432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvtm_u32_f32(float32x2_t a) { 18462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtm_u32_f32 18472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtm_u32_f32(a); 18482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtmu v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 18492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtmq_u32_f32(float32x4_t a) { 18522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtmq_u32_f32 18532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtmq_u32_f32(a); 18542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtmu v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 18552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtmq_u64_f64(float64x2_t a) { 18582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtmq_u64_f64 18592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtmq_u64_f64(a); 18602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtmu v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 18612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x2_t test_vcvta_s32_f32(float32x2_t a) { 18642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvta_s32_f32 18652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvta_s32_f32(a); 18662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtas v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 18672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint32x4_t test_vcvtaq_s32_f32(float32x4_t a) { 18702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtaq_s32_f32 18712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtaq_s32_f32(a); 18722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtas v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 18732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinint64x2_t test_vcvtaq_s64_f64(float64x2_t a) { 18762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtaq_s64_f64 18772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtaq_s64_f64(a); 18782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtas v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 18792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vcvta_u32_f32(float32x2_t a) { 18822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvta_u32_f32 18832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvta_u32_f32(a); 18842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtau v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 18852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vcvtaq_u32_f32(float32x4_t a) { 18882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtaq_u32_f32 18892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtaq_u32_f32(a); 18902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtau v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 18912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint64x2_t test_vcvtaq_u64_f64(float64x2_t a) { 18942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtaq_u64_f64 18952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtaq_u64_f64(a); 18962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fcvtau v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 18972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 18982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 18992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrsqrte_f32(float32x2_t a) { 19002a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrsqrte_f32 19012a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrsqrte_f32(a); 19022a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frsqrte v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 19032a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19042a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19052a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrsqrteq_f32(float32x4_t a) { 19062a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrsqrteq_f32 19072a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrsqrteq_f32(a); 19082a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frsqrte v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 19092a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19102a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19112a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrsqrteq_f64(float64x2_t a) { 19122a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrsqrteq_f64 19132a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrsqrteq_f64(a); 19142a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frsqrte v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 19152a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19162a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19172a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vrecpe_f32(float32x2_t a) { 19182a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrecpe_f32 19192a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrecpe_f32(a); 19202a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frecpe v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 19212a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19222a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19232a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vrecpeq_f32(float32x4_t a) { 19242a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrecpeq_f32 19252a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrecpeq_f32(a); 19262a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frecpe v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 19272a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19282a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19292a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vrecpeq_f64(float64x2_t a) { 19302a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrecpeq_f64 19312a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrecpeq_f64(a); 19322a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: frecpe v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 19332a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19342a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19352a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x2_t test_vrecpe_u32(uint32x2_t a) { 19362a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrecpe_u32 19372a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrecpe_u32(a); 19382a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: urecpe v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 19392a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19402a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19412a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinuint32x4_t test_vrecpeq_u32(uint32x4_t a) { 19422a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vrecpeq_u32 19432a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vrecpeq_u32(a); 19442a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: urecpe v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 19452a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19462a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19472a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vsqrt_f32(float32x2_t a) { 19482a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vsqrt_f32 19492a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vsqrt_f32(a); 19502a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fsqrt v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 19512a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19522a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19532a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vsqrtq_f32(float32x4_t a) { 19542a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vsqrtq_f32 19552a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vsqrtq_f32(a); 19562a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fsqrt v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 19572a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19582a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19592a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vsqrtq_f64(float64x2_t a) { 19602a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vsqrtq_f64 19612a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vsqrtq_f64(a); 19622a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin // CHECK: fsqrt v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 19632a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19642a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19652a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vcvt_f32_s32(int32x2_t a) { 19662a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_f32_s32 19672a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_f32_s32(a); 19682a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: scvtf v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 19692a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19702a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19712a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x2_t test_vcvt_f32_u32(uint32x2_t a) { 19722a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvt_f32_u32 19732a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvt_f32_u32(a); 19742a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: ucvtf v{{[0-9]+}}.2s, v{{[0-9]+}}.2s 19752a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19762a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19772a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvtq_f32_s32(int32x4_t a) { 19782a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtq_f32_s32 19792a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtq_f32_s32(a); 19802a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: scvtf v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 19812a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19822a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19832a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat32x4_t test_vcvtq_f32_u32(uint32x4_t a) { 19842a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtq_f32_u32 19852a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtq_f32_u32(a); 19862a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: ucvtf v{{[0-9]+}}.4s, v{{[0-9]+}}.4s 19872a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19882a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19892a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vcvtq_f64_s64(int64x2_t a) { 19902a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtq_f64_s64 19912a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtq_f64_s64(a); 19922a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: scvtf v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 19932a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 19942a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin 19952a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qinfloat64x2_t test_vcvtq_f64_u64(uint64x2_t a) { 19962a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: test_vcvtq_f64_u64 19972a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin return vcvtq_f64_u64(a); 19982a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin //CHECK: ucvtf v{{[0-9]+}}.2d, v{{[0-9]+}}.2d 19992a2b69b488134b6eb54f6e9ee8ebcc50a806e6b1Kevin Qin} 2000