brintos

brintos / llvm-project-archived public Read only

0
0
Text · 22.8 KiB · eecfec9 Raw
342 lines · cpp
1// REQUIRES: aarch64-registered-target2 3// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +sve2 -fsyntax-only -verify %s4// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64-none-linux-gnu -target-feature +sve -target-feature +sve2 -fsyntax-only -verify %s5 6#ifdef SVE_OVERLOADED_FORMS7// A simple used,unused... macro, long enough to represent any SVE builtin.8#define SVE_ACLE_FUNC(A1,A2_UNUSED,A3,A4_UNUSED) A1##A39#else10#define SVE_ACLE_FUNC(A1,A2,A3,A4) A1##A2##A3##A411#endif12 13#include <arm_sve.h>14 15void test_range_0_7(svbool_t pg)16{17  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 7]}}18  SVE_ACLE_FUNC(svqshlu,_n_s8,_x,)(pg, svundef_s8(), -1);19  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 7]}}20  SVE_ACLE_FUNC(svqshlu,_n_s8,_z,)(pg, svundef_s8(), -1);21  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 7]}}22  SVE_ACLE_FUNC(svqshlu,_n_s8,_m,)(pg, svundef_s8(), -1);23  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 7]}}24  SVE_ACLE_FUNC(svshllb,_n_s16,,)(svundef_s8(), -1);25  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 7]}}26  SVE_ACLE_FUNC(svshllb,_n_u16,,)(svundef_u8(), -1);27  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 7]}}28  SVE_ACLE_FUNC(svshllt,_n_s16,,)(svundef_s8(), -1);29  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 7]}}30  SVE_ACLE_FUNC(svshllt,_n_u16,,)(svundef_u8(), -1);31  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 7]}}32  SVE_ACLE_FUNC(svsli,_n_s8,,)(svundef_s8(), svundef_s8(), -1);33  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 7]}}34  SVE_ACLE_FUNC(svsli,_n_u8,,)(svundef_u8(), svundef_u8(), -1);35}36 37void test_range_1_8(svbool_t pg)38{39  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}40  SVE_ACLE_FUNC(svqrshrnb,_n_s16,,)(svundef_s16(), 0);41  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}42  SVE_ACLE_FUNC(svqrshrnb,_n_u16,,)(svundef_u16(), 0);43  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}44  SVE_ACLE_FUNC(svqrshrnt,_n_s16,,)(svundef_s8(), svundef_s16(), 0);45  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}46  SVE_ACLE_FUNC(svqrshrnt,_n_u16,,)(svundef_u8(), svundef_u16(), 0);47  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}48  SVE_ACLE_FUNC(svqrshrunb,_n_s16,,)(svundef_s16(), 0);49  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}50  SVE_ACLE_FUNC(svqrshrunt,_n_s16,,)(svundef_u8(), svundef_s16(), 0);51  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}52  SVE_ACLE_FUNC(svqshrnb,_n_s16,,)(svundef_s16(), 0);53  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}54  SVE_ACLE_FUNC(svqshrnb,_n_u16,,)(svundef_u16(), 0);55  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}56  SVE_ACLE_FUNC(svqshrnt,_n_s16,,)(svundef_s8(), svundef_s16(), 0);57  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}58  SVE_ACLE_FUNC(svqshrnt,_n_u16,,)(svundef_u8(), svundef_u16(), 0);59  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}60  SVE_ACLE_FUNC(svqshrunb,_n_s16,,)(svundef_s16(), 0);61  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}62  SVE_ACLE_FUNC(svqshrunt,_n_s16,,)(svundef_u8(), svundef_s16(), 0);63  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}64  SVE_ACLE_FUNC(svrshr,_n_s8,_x,)(pg, svundef_s8(), 0);65  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}66  SVE_ACLE_FUNC(svrshr,_n_s8,_z,)(pg, svundef_s8(), 0);67  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}68  SVE_ACLE_FUNC(svrshr,_n_s8,_m,)(pg, svundef_s8(), 0);69  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}70  SVE_ACLE_FUNC(svrshr,_n_u8,_x,)(pg, svundef_u8(), 0);71  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}72  SVE_ACLE_FUNC(svrshr,_n_u8,_z,)(pg, svundef_u8(), 0);73  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}74  SVE_ACLE_FUNC(svrshr,_n_u8,_m,)(pg, svundef_u8(), 0);75  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}76  SVE_ACLE_FUNC(svrshrnb,_n_s16,,)(svundef_s16(), 0);77  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}78  SVE_ACLE_FUNC(svrshrnb,_n_u16,,)(svundef_u16(), 0);79  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}80  SVE_ACLE_FUNC(svrshrnt,_n_s16,,)(svundef_s8(), svundef_s16(), 0);81  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}82  SVE_ACLE_FUNC(svrshrnt,_n_u16,,)(svundef_u8(), svundef_u16(), 0);83  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}84  SVE_ACLE_FUNC(svrsra,_n_s8,,)(svundef_s8(), svundef_s8(), 0);85  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}86  SVE_ACLE_FUNC(svrsra,_n_u8,,)(svundef_u8(), svundef_u8(), 0);87  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}88  SVE_ACLE_FUNC(svshrnb,_n_s16,,)(svundef_s16(), 0);89  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}90  SVE_ACLE_FUNC(svshrnb,_n_u16,,)(svundef_u16(), 0);91  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}92  SVE_ACLE_FUNC(svshrnt,_n_s16,,)(svundef_s8(), svundef_s16(), 0);93  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}94  SVE_ACLE_FUNC(svshrnt,_n_u16,,)(svundef_u8(), svundef_u16(), 0);95  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}96  SVE_ACLE_FUNC(svsra,_n_s8,,)(svundef_s8(), svundef_s8(), 0);97  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}98  SVE_ACLE_FUNC(svsra,_n_u8,,)(svundef_u8(), svundef_u8(), 0);99  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}100  SVE_ACLE_FUNC(svsri,_n_s8,,)(svundef_s8(), svundef_s8(), 0);101  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}102  SVE_ACLE_FUNC(svsri,_n_u8,,)(svundef_u8(), svundef_u8(), 0);103  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}104  SVE_ACLE_FUNC(svxar,_n_s8,,)(svundef_s8(), svundef_s8(), 0);105  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 8]}}106  SVE_ACLE_FUNC(svxar,_n_u8,,)(svundef_u8(), svundef_u8(), 0);107}108 109void test_range_0_15(svbool_t pg)110{111  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 15]}}112  SVE_ACLE_FUNC(svqshlu,_n_s16,_x,)(pg, svundef_s16(), -1);113  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 15]}}114  SVE_ACLE_FUNC(svqshlu,_n_s16,_z,)(pg, svundef_s16(), -1);115  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 15]}}116  SVE_ACLE_FUNC(svqshlu,_n_s16,_m,)(pg, svundef_s16(), -1);117  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 15]}}118  SVE_ACLE_FUNC(svshllb,_n_s32,,)(svundef_s16(), -1);119  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 15]}}120  SVE_ACLE_FUNC(svshllb,_n_u32,,)(svundef_u16(), -1);121  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 15]}}122  SVE_ACLE_FUNC(svshllt,_n_s32,,)(svundef_s16(), -1);123  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 15]}}124  SVE_ACLE_FUNC(svshllt,_n_u32,,)(svundef_u16(), -1);125  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 15]}}126  SVE_ACLE_FUNC(svsli,_n_s16,,)(svundef_s16(), svundef_s16(), -1);127  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 15]}}128  SVE_ACLE_FUNC(svsli,_n_u16,,)(svundef_u16(), svundef_u16(), -1);129}130 131void test_range_1_16(svbool_t pg)132{133  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}134  SVE_ACLE_FUNC(svqrshrnb,_n_s32,,)(svundef_s32(), 0);135  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}136  SVE_ACLE_FUNC(svqrshrnb,_n_u32,,)(svundef_u32(), 0);137  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}138  SVE_ACLE_FUNC(svqrshrnt,_n_s32,,)(svundef_s16(), svundef_s32(), 0);139  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}140  SVE_ACLE_FUNC(svqrshrnt,_n_u32,,)(svundef_u16(), svundef_u32(), 0);141  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}142  SVE_ACLE_FUNC(svqrshrunb,_n_s32,,)(svundef_s32(), 0);143  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}144  SVE_ACLE_FUNC(svqrshrunt,_n_s32,,)(svundef_u16(), svundef_s32(), 0);145  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}146  SVE_ACLE_FUNC(svqshrnb,_n_s32,,)(svundef_s32(), 0);147  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}148  SVE_ACLE_FUNC(svqshrnb,_n_u32,,)(svundef_u32(), 0);149  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}150  SVE_ACLE_FUNC(svqshrnt,_n_s32,,)(svundef_s16(), svundef_s32(), 0);151  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}152  SVE_ACLE_FUNC(svqshrnt,_n_u32,,)(svundef_u16(), svundef_u32(), 0);153  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}154  SVE_ACLE_FUNC(svqshrunb,_n_s32,,)(svundef_s32(), 0);155  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}156  SVE_ACLE_FUNC(svqshrunt,_n_s32,,)(svundef_u16(), svundef_s32(), 0);157  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}158  SVE_ACLE_FUNC(svrshr,_n_s16,_x,)(pg, svundef_s16(), 0);159  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}160  SVE_ACLE_FUNC(svrshr,_n_s16,_z,)(pg, svundef_s16(), 0);161  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}162  SVE_ACLE_FUNC(svrshr,_n_s16,_m,)(pg, svundef_s16(), 0);163  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}164  SVE_ACLE_FUNC(svrshr,_n_u16,_x,)(pg, svundef_u16(), 0);165  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}166  SVE_ACLE_FUNC(svrshr,_n_u16,_z,)(pg, svundef_u16(), 0);167  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}168  SVE_ACLE_FUNC(svrshr,_n_u16,_m,)(pg, svundef_u16(), 0);169  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}170  SVE_ACLE_FUNC(svrshrnb,_n_s32,,)(svundef_s32(), 0);171  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}172  SVE_ACLE_FUNC(svrshrnb,_n_u32,,)(svundef_u32(), 0);173  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}174  SVE_ACLE_FUNC(svrshrnt,_n_s32,,)(svundef_s16(), svundef_s32(), 0);175  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}176  SVE_ACLE_FUNC(svrshrnt,_n_u32,,)(svundef_u16(), svundef_u32(), 0);177  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}178  SVE_ACLE_FUNC(svrsra,_n_s16,,)(svundef_s16(), svundef_s16(), 0);179  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}180  SVE_ACLE_FUNC(svrsra,_n_u16,,)(svundef_u16(), svundef_u16(), 0);181  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}182  SVE_ACLE_FUNC(svshrnb,_n_s32,,)(svundef_s32(), 0);183  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}184  SVE_ACLE_FUNC(svshrnb,_n_u32,,)(svundef_u32(), 0);185  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}186  SVE_ACLE_FUNC(svshrnt,_n_s32,,)(svundef_s16(), svundef_s32(), 0);187  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}188  SVE_ACLE_FUNC(svshrnt,_n_u32,,)(svundef_u16(), svundef_u32(), 0);189  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}190  SVE_ACLE_FUNC(svsra,_n_s16,,)(svundef_s16(), svundef_s16(), 0);191  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}192  SVE_ACLE_FUNC(svsra,_n_u16,,)(svundef_u16(), svundef_u16(), 0);193  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}194  SVE_ACLE_FUNC(svsri,_n_s16,,)(svundef_s16(), svundef_s16(), 0);195  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}196  SVE_ACLE_FUNC(svsri,_n_u16,,)(svundef_u16(), svundef_u16(), 0);197  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}198  SVE_ACLE_FUNC(svxar,_n_s16,,)(svundef_s16(), svundef_s16(), 0);199  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 16]}}200  SVE_ACLE_FUNC(svxar,_n_u16,,)(svundef_u16(), svundef_u16(), 0);201}202 203void test_range_0_31(svbool_t pg)204{205  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 31]}}206  SVE_ACLE_FUNC(svqshlu,_n_s32,_x,)(pg, svundef_s32(), -1);207  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 31]}}208  SVE_ACLE_FUNC(svqshlu,_n_s32,_z,)(pg, svundef_s32(), -1);209  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 31]}}210  SVE_ACLE_FUNC(svqshlu,_n_s32,_m,)(pg, svundef_s32(), -1);211  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 31]}}212  SVE_ACLE_FUNC(svshllb,_n_s64,,)(svundef_s32(), -1);213  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 31]}}214  SVE_ACLE_FUNC(svshllb,_n_u64,,)(svundef_u32(), -1);215  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 31]}}216  SVE_ACLE_FUNC(svshllt,_n_s64,,)(svundef_s32(), -1);217  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 31]}}218  SVE_ACLE_FUNC(svshllt,_n_u64,,)(svundef_u32(), -1);219  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 31]}}220  SVE_ACLE_FUNC(svsli,_n_s32,,)(svundef_s32(), svundef_s32(), -1);221  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 31]}}222  SVE_ACLE_FUNC(svsli,_n_u32,,)(svundef_u32(), svundef_u32(), -1);223}224 225void test_range_1_32(svbool_t pg)226{227  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}228  SVE_ACLE_FUNC(svqrshrnb,_n_s64,,)(svundef_s64(), 0);229  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}230  SVE_ACLE_FUNC(svqrshrnb,_n_u64,,)(svundef_u64(), 0);231  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}232  SVE_ACLE_FUNC(svqrshrnt,_n_s64,,)(svundef_s32(), svundef_s64(), 0);233  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}234  SVE_ACLE_FUNC(svqrshrnt,_n_u64,,)(svundef_u32(), svundef_u64(), 0);235  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}236  SVE_ACLE_FUNC(svqrshrunb,_n_s64,,)(svundef_s64(), 0);237  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}238  SVE_ACLE_FUNC(svqrshrunt,_n_s64,,)(svundef_u32(), svundef_s64(), 0);239  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}240  SVE_ACLE_FUNC(svqshrnb,_n_s64,,)(svundef_s64(), 0);241  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}242  SVE_ACLE_FUNC(svqshrnb,_n_u64,,)(svundef_u64(), 0);243  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}244  SVE_ACLE_FUNC(svqshrnt,_n_s64,,)(svundef_s32(), svundef_s64(), 0);245  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}246  SVE_ACLE_FUNC(svqshrnt,_n_u64,,)(svundef_u32(), svundef_u64(), 0);247  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}248  SVE_ACLE_FUNC(svqshrunb,_n_s64,,)(svundef_s64(), 0);249  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}250  SVE_ACLE_FUNC(svqshrunt,_n_s64,,)(svundef_u32(), svundef_s64(), 0);251  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}252  SVE_ACLE_FUNC(svrshr,_n_s32,_x,)(pg, svundef_s32(), 0);253  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}254  SVE_ACLE_FUNC(svrshr,_n_s32,_z,)(pg, svundef_s32(), 0);255  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}256  SVE_ACLE_FUNC(svrshr,_n_s32,_m,)(pg, svundef_s32(), 0);257  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}258  SVE_ACLE_FUNC(svrshr,_n_u32,_x,)(pg, svundef_u32(), 0);259  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}260  SVE_ACLE_FUNC(svrshr,_n_u32,_z,)(pg, svundef_u32(), 0);261  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}262  SVE_ACLE_FUNC(svrshr,_n_u32,_m,)(pg, svundef_u32(), 0);263  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}264  SVE_ACLE_FUNC(svrshrnb,_n_s64,,)(svundef_s64(), 0);265  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}266  SVE_ACLE_FUNC(svrshrnb,_n_u64,,)(svundef_u64(), 0);267  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}268  SVE_ACLE_FUNC(svrshrnt,_n_s64,,)(svundef_s32(), svundef_s64(), 0);269  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}270  SVE_ACLE_FUNC(svrshrnt,_n_u64,,)(svundef_u32(), svundef_u64(), 0);271  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}272  SVE_ACLE_FUNC(svrsra,_n_s32,,)(svundef_s32(), svundef_s32(), 0);273  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}274  SVE_ACLE_FUNC(svrsra,_n_u32,,)(svundef_u32(), svundef_u32(), 0);275  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}276  SVE_ACLE_FUNC(svshrnb,_n_s64,,)(svundef_s64(), 0);277  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}278  SVE_ACLE_FUNC(svshrnb,_n_u64,,)(svundef_u64(), 0);279  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}280  SVE_ACLE_FUNC(svshrnt,_n_s64,,)(svundef_s32(), svundef_s64(), 0);281  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}282  SVE_ACLE_FUNC(svshrnt,_n_u64,,)(svundef_u32(), svundef_u64(), 0);283  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}284  SVE_ACLE_FUNC(svsra,_n_s32,,)(svundef_s32(), svundef_s32(), 0);285  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}286  SVE_ACLE_FUNC(svsra,_n_u32,,)(svundef_u32(), svundef_u32(), 0);287  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}288  SVE_ACLE_FUNC(svsri,_n_s32,,)(svundef_s32(), svundef_s32(), 0);289  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}290  SVE_ACLE_FUNC(svsri,_n_u32,,)(svundef_u32(), svundef_u32(), 0);291  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}292  SVE_ACLE_FUNC(svxar,_n_s32,,)(svundef_s32(), svundef_s32(), 0);293  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 32]}}294  SVE_ACLE_FUNC(svxar,_n_u32,,)(svundef_u32(), svundef_u32(), 0);295}296 297void test_range_0_63(svbool_t pg)298{299  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 63]}}300  SVE_ACLE_FUNC(svqshlu,_n_s64,_x,)(pg, svundef_s64(), -1);301  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 63]}}302  SVE_ACLE_FUNC(svqshlu,_n_s64,_z,)(pg, svundef_s64(), -1);303  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 63]}}304  SVE_ACLE_FUNC(svqshlu,_n_s64,_m,)(pg, svundef_s64(), -1);305  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 63]}}306  SVE_ACLE_FUNC(svsli,_n_s64,,)(svundef_s64(), svundef_s64(), -1);307  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [0, 63]}}308  SVE_ACLE_FUNC(svsli,_n_u64,,)(svundef_u64(), svundef_u64(), -1);309}310 311void test_range_1_64(svbool_t pg)312{313  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}314  SVE_ACLE_FUNC(svrshr,_n_s64,_x,)(pg, svundef_s64(), 0);315  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}316  SVE_ACLE_FUNC(svrshr,_n_s64,_z,)(pg, svundef_s64(), 0);317  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}318  SVE_ACLE_FUNC(svrshr,_n_s64,_m,)(pg, svundef_s64(), 0);319  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}320  SVE_ACLE_FUNC(svrshr,_n_u64,_x,)(pg, svundef_u64(), 0);321  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}322  SVE_ACLE_FUNC(svrshr,_n_u64,_z,)(pg, svundef_u64(), 0);323  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}324  SVE_ACLE_FUNC(svrshr,_n_u64,_m,)(pg, svundef_u64(), 0);325  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}326  SVE_ACLE_FUNC(svrsra,_n_s64,,)(svundef_s64(), svundef_s64(), 0);327  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}328  SVE_ACLE_FUNC(svrsra,_n_u64,,)(svundef_u64(), svundef_u64(), 0);329  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}330  SVE_ACLE_FUNC(svsra,_n_s64,,)(svundef_s64(), svundef_s64(), 0);331  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}332  SVE_ACLE_FUNC(svsra,_n_u64,,)(svundef_u64(), svundef_u64(), 0);333  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}334  SVE_ACLE_FUNC(svsri,_n_s64,,)(svundef_s64(), svundef_s64(), 0);335  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}336  SVE_ACLE_FUNC(svsri,_n_u64,,)(svundef_u64(), svundef_u64(), 0);337  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}338  SVE_ACLE_FUNC(svxar,_n_s64,,)(svundef_s64(), svundef_s64(), 0);339  // expected-error-re@+1 {{argument value {{[0-9]+}} is outside the valid range [1, 64]}}340  SVE_ACLE_FUNC(svxar,_n_u64,,)(svundef_u64(), svundef_u64(), 0);341}342