xref: /llvm-project/clang/test/Sema/aarch64-sve-vector-bitwise-ops.c (revision 123064dc397d478a636ba1c5960d41ad381036a0)
1 // RUN: %clang_cc1 -verify -triple aarch64-none-linux-gnu -target-feature +sve -fsyntax-only %s
2 
3 // REQUIRES: aarch64-registered-target
4 
5 #include <arm_sve.h>
6 
and(svint8_t i8,svint16_t i16,svint32_t i32,svint64_t i64,svuint8_t u8,svuint16_t u16,svuint32_t u32,svuint64_t u64,svfloat16_t f16,svfloat32_t f32,svfloat64_t f64,svbool_t b)7 void and (svint8_t i8, svint16_t i16, svint32_t i32, svint64_t i64,
8           svuint8_t u8, svuint16_t u16, svuint32_t u32, svuint64_t u64,
9           svfloat16_t f16, svfloat32_t f32, svfloat64_t f64,
10           svbool_t b) {
11   (void)(i8 & b);   // expected-error{{cannot convert between vector type 'svbool_t' (aka '__SVBool_t') and vector type 'svint8_t' (aka '__SVInt8_t') as implicit conversion would cause truncation}}
12   (void)(i8 & i16); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svint16_t' (aka '__SVInt16_t'))}}
13   (void)(i8 & i32); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svint32_t' (aka '__SVInt32_t'))}}
14   (void)(i8 & i64); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svint64_t' (aka '__SVInt64_t'))}}
15   (void)(i8 & u16); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
16   (void)(i8 & u32); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
17   (void)(i8 & u64); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
18   (void)(i8 & f16); // expected-error{{invalid operands to binary expression}}
19   (void)(i8 & f32); // expected-error{{invalid operands to binary expression}}
20   (void)(i8 & f64); // expected-error{{invalid operands to binary expression}}
21 
22   (void)(u8 & b);   // expected-error{{cannot convert between vector type 'svbool_t' (aka '__SVBool_t') and vector type 'svuint8_t' (aka '__SVUint8_t') as implicit conversion would cause truncation}}
23   (void)(u8 & i16); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svint16_t' (aka '__SVInt16_t'))}}
24   (void)(u8 & i32); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svint32_t' (aka '__SVInt32_t'))}}
25   (void)(u8 & i64); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svint64_t' (aka '__SVInt64_t'))}}
26   (void)(u8 & u16); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
27   (void)(u8 & u32); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
28   (void)(u8 & u64); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
29   (void)(u8 & f16); // expected-error{{invalid operands to binary expression}}
30   (void)(u8 & f32); // expected-error{{invalid operands to binary expression}}
31   (void)(u8 & f64); // expected-error{{invalid operands to binary expression}}
32 
33   (void)(i16 & b);   // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svbool_t' (aka '__SVBool_t'))}}
34   (void)(i16 & i8);  // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svint8_t' (aka '__SVInt8_t'))}}
35   (void)(i16 & i32); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svint32_t' (aka '__SVInt32_t'))}}
36   (void)(i16 & i64); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svint64_t' (aka '__SVInt64_t'))}}
37   (void)(i16 & u8);  // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
38   (void)(i16 & u32); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
39   (void)(i16 & u64); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
40   (void)(i16 & f16); // expected-error{{invalid operands to binary expression}}
41   (void)(i16 & f32); // expected-error{{invalid operands to binary expression}}
42   (void)(i16 & f64); // expected-error{{invalid operands to binary expression}}
43 
44   (void)(u16 & b);   // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svbool_t' (aka '__SVBool_t'))}}
45   (void)(u16 & i8);  // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svint8_t' (aka '__SVInt8_t'))}}
46   (void)(u16 & i32); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svint32_t' (aka '__SVInt32_t'))}}
47   (void)(u16 & i64); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svint64_t' (aka '__SVInt64_t'))}}
48   (void)(u16 & u8);  // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
49   (void)(u16 & u32); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
50   (void)(u16 & u64); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
51   (void)(u16 & f16); // expected-error{{invalid operands to binary expression}}
52   (void)(u16 & f32); // expected-error{{invalid operands to binary expression}}
53   (void)(u16 & f64); // expected-error{{invalid operands to binary expression}}
54 
55   (void)(i32 & b);   // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svbool_t' (aka '__SVBool_t'))}}
56   (void)(i32 & i8);  // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svint8_t' (aka '__SVInt8_t'))}}
57   (void)(i32 & i16); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svint16_t' (aka '__SVInt16_t'))}}
58   (void)(i32 & i64); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svint64_t' (aka '__SVInt64_t'))}}
59   (void)(i32 & u8);  // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
60   (void)(i32 & u16); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
61   (void)(i32 & u64); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
62   (void)(i32 & f16); // expected-error{{invalid operands to binary expression}}
63   (void)(i32 & f32); // expected-error{{invalid operands to binary expression}}
64   (void)(i32 & f64); // expected-error{{invalid operands to binary expression}}
65 
66   (void)(u32 & b);   // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svbool_t' (aka '__SVBool_t'))}}
67   (void)(u32 & i8);  // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svint8_t' (aka '__SVInt8_t'))}}
68   (void)(u32 & i16); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svint16_t' (aka '__SVInt16_t'))}}
69   (void)(u32 & i64); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svint64_t' (aka '__SVInt64_t'))}}
70   (void)(u32 & u8);  // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
71   (void)(u32 & u16); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
72   (void)(u32 & u64); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
73   (void)(u32 & f16); // expected-error{{invalid operands to binary expression}}
74   (void)(u32 & f32); // expected-error{{invalid operands to binary expression}}
75   (void)(u32 & f64); // expected-error{{invalid operands to binary expression}}
76 
77   (void)(i64 & b);   // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svbool_t' (aka '__SVBool_t'))}}
78   (void)(i64 & i8);  // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svint8_t' (aka '__SVInt8_t'))}}
79   (void)(i64 & i16); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svint16_t' (aka '__SVInt16_t'))}}
80   (void)(i64 & i32); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svint32_t' (aka '__SVInt32_t'))}}
81   (void)(i64 & u8);  // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
82   (void)(i64 & u16); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
83   (void)(i64 & u32); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
84   (void)(i64 & f16); // expected-error{{invalid operands to binary expression}}
85   (void)(i64 & f32); // expected-error{{invalid operands to binary expression}}
86   (void)(i64 & f64); // expected-error{{invalid operands to binary expression}}
87 
88   (void)(u64 & b);   // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svbool_t' (aka '__SVBool_t'))}}
89   (void)(u64 & i8);  // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svint8_t' (aka '__SVInt8_t'))}}
90   (void)(u64 & i16); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svint16_t' (aka '__SVInt16_t'))}}
91   (void)(u64 & i32); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svint32_t' (aka '__SVInt32_t'))}}
92   (void)(u64 & u8);  // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
93   (void)(u64 & u16); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
94   (void)(u64 & u32); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
95   (void)(u64 & f16); // expected-error{{invalid operands to binary expression}}
96   (void)(u64 & f32); // expected-error{{invalid operands to binary expression}}
97   (void)(u64 & f64); // expected-error{{invalid operands to binary expression}}
98 
99   (void)(f16 & b);   // expected-error{{invalid operands to binary expression}}
100   (void)(f16 & i8);  // expected-error{{invalid operands to binary expression}}
101   (void)(f16 & i16); // expected-error{{invalid operands to binary expression}}
102   (void)(f16 & i32); // expected-error{{invalid operands to binary expression}}
103   (void)(f16 & i64); // expected-error{{invalid operands to binary expression}}
104   (void)(f16 & u8);  // expected-error{{invalid operands to binary expression}}
105   (void)(f16 & u32); // expected-error{{invalid operands to binary expression}}
106   (void)(f16 & u64); // expected-error{{invalid operands to binary expression}}
107   (void)(f16 & f32); // expected-error{{invalid operands to binary expression}}
108   (void)(f16 & f64); // expected-error{{invalid operands to binary expression}}
109 
110   (void)(f32 & b);   // expected-error{{invalid operands to binary expression}}
111   (void)(f32 & i8);  // expected-error{{invalid operands to binary expression}}
112   (void)(f32 & i16); // expected-error{{invalid operands to binary expression}}
113   (void)(f32 & i32); // expected-error{{invalid operands to binary expression}}
114   (void)(f32 & i64); // expected-error{{invalid operands to binary expression}}
115   (void)(f32 & u8);  // expected-error{{invalid operands to binary expression}}
116   (void)(f32 & u16); // expected-error{{invalid operands to binary expression}}
117   (void)(f32 & u64); // expected-error{{invalid operands to binary expression}}
118   (void)(f32 & f16); // expected-error{{invalid operands to binary expression}}
119   (void)(f32 & f32); // expected-error{{invalid operands to binary expression}}
120   (void)(f32 & f64); // expected-error{{invalid operands to binary expression}}
121 
122   (void)(f64 & b);   // expected-error{{invalid operands to binary expression}}
123   (void)(f64 & i8);  // expected-error{{invalid operands to binary expression}}
124   (void)(f64 & i16); // expected-error{{invalid operands to binary expression}}
125   (void)(f64 & i32); // expected-error{{invalid operands to binary expression}}
126   (void)(f64 & i64); // expected-error{{invalid operands to binary expression}}
127   (void)(f64 & u8);  // expected-error{{invalid operands to binary expression}}
128   (void)(f64 & u16); // expected-error{{invalid operands to binary expression}}
129   (void)(f64 & u32); // expected-error{{invalid operands to binary expression}}
130   (void)(f64 & f16); // expected-error{{invalid operands to binary expression}}
131   (void)(f64 & f32); // expected-error{{invalid operands to binary expression}}
132   (void)(f64 & f64); // expected-error{{invalid operands to binary expression}}
133 }
134 
or(svint8_t i8,svint16_t i16,svint32_t i32,svint64_t i64,svuint8_t u8,svuint16_t u16,svuint32_t u32,svuint64_t u64,svfloat16_t f16,svfloat32_t f32,svfloat64_t f64,svbool_t b)135 void or (svint8_t i8, svint16_t i16, svint32_t i32, svint64_t i64,
136          svuint8_t u8, svuint16_t u16, svuint32_t u32, svuint64_t u64,
137          svfloat16_t f16, svfloat32_t f32, svfloat64_t f64,
138          svbool_t b) {
139   (void)(i8 | b);   // expected-error{{cannot convert between vector type 'svbool_t' (aka '__SVBool_t') and vector type 'svint8_t' (aka '__SVInt8_t') as implicit conversion would cause truncation}}
140   (void)(i8 | i16); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svint16_t' (aka '__SVInt16_t'))}}
141   (void)(i8 | i32); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svint32_t' (aka '__SVInt32_t'))}}
142   (void)(i8 | i64); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svint64_t' (aka '__SVInt64_t'))}}
143   (void)(i8 | u16); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
144   (void)(i8 | u32); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
145   (void)(i8 | u64); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
146   (void)(i8 | f16); // expected-error{{invalid operands to binary expression}}
147   (void)(i8 | f32); // expected-error{{invalid operands to binary expression}}
148   (void)(i8 | f64); // expected-error{{invalid operands to binary expression}}
149 
150   (void)(u8 | b);   // expected-error{{cannot convert between vector type 'svbool_t' (aka '__SVBool_t') and vector type 'svuint8_t' (aka '__SVUint8_t') as implicit conversion would cause truncation}}
151   (void)(u8 | i16); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svint16_t' (aka '__SVInt16_t'))}}
152   (void)(u8 | i32); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svint32_t' (aka '__SVInt32_t'))}}
153   (void)(u8 | i64); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svint64_t' (aka '__SVInt64_t'))}}
154   (void)(u8 | u16); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
155   (void)(u8 | u32); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
156   (void)(u8 | u64); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
157   (void)(u8 | f16); // expected-error{{invalid operands to binary expression}}
158   (void)(u8 | f32); // expected-error{{invalid operands to binary expression}}
159   (void)(u8 | f64); // expected-error{{invalid operands to binary expression}}
160 
161   (void)(i16 | b);   // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svbool_t' (aka '__SVBool_t'))}}
162   (void)(i16 | i8);  // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svint8_t' (aka '__SVInt8_t'))}}
163   (void)(i16 | i32); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svint32_t' (aka '__SVInt32_t'))}}
164   (void)(i16 | i64); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svint64_t' (aka '__SVInt64_t'))}}
165   (void)(i16 | u8);  // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
166   (void)(i16 | u32); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
167   (void)(i16 | u64); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
168   (void)(i16 | f16); // expected-error{{invalid operands to binary expression}}
169   (void)(i16 | f32); // expected-error{{invalid operands to binary expression}}
170   (void)(i16 | f64); // expected-error{{invalid operands to binary expression}}
171 
172   (void)(u16 | b);   // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svbool_t' (aka '__SVBool_t'))}}
173   (void)(u16 | i8);  // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svint8_t' (aka '__SVInt8_t'))}}
174   (void)(u16 | i32); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svint32_t' (aka '__SVInt32_t'))}}
175   (void)(u16 | i64); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svint64_t' (aka '__SVInt64_t'))}}
176   (void)(u16 | u8);  // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
177   (void)(u16 | u32); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
178   (void)(u16 | u64); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
179   (void)(u16 | f16); // expected-error{{invalid operands to binary expression}}
180   (void)(u16 | f32); // expected-error{{invalid operands to binary expression}}
181   (void)(u16 | f64); // expected-error{{invalid operands to binary expression}}
182 
183   (void)(i32 | b);   // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svbool_t' (aka '__SVBool_t'))}}
184   (void)(i32 | i8);  // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svint8_t' (aka '__SVInt8_t'))}}
185   (void)(i32 | i16); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svint16_t' (aka '__SVInt16_t'))}}
186   (void)(i32 | i64); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svint64_t' (aka '__SVInt64_t'))}}
187   (void)(i32 | u8);  // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
188   (void)(i32 | u16); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
189   (void)(i32 | u64); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
190   (void)(i32 | f16); // expected-error{{invalid operands to binary expression}}
191   (void)(i32 | f32); // expected-error{{invalid operands to binary expression}}
192   (void)(i32 | f64); // expected-error{{invalid operands to binary expression}}
193 
194   (void)(u32 | b);   // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svbool_t' (aka '__SVBool_t'))}}
195   (void)(u32 | i8);  // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svint8_t' (aka '__SVInt8_t'))}}
196   (void)(u32 | i16); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svint16_t' (aka '__SVInt16_t'))}}
197   (void)(u32 | i64); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svint64_t' (aka '__SVInt64_t'))}}
198   (void)(u32 | u8);  // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
199   (void)(u32 | u16); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
200   (void)(u32 | u64); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
201   (void)(u32 | f16); // expected-error{{invalid operands to binary expression}}
202   (void)(u32 | f32); // expected-error{{invalid operands to binary expression}}
203   (void)(u32 | f64); // expected-error{{invalid operands to binary expression}}
204 
205   (void)(i64 | b);   // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svbool_t' (aka '__SVBool_t'))}}
206   (void)(i64 | i8);  // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svint8_t' (aka '__SVInt8_t'))}}
207   (void)(i64 | i16); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svint16_t' (aka '__SVInt16_t'))}}
208   (void)(i64 | i32); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svint32_t' (aka '__SVInt32_t'))}}
209   (void)(i64 | u8);  // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
210   (void)(i64 | u16); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
211   (void)(i64 | u32); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
212   (void)(i64 | f16); // expected-error{{invalid operands to binary expression}}
213   (void)(i64 | f32); // expected-error{{invalid operands to binary expression}}
214   (void)(i64 | f64); // expected-error{{invalid operands to binary expression}}
215 
216   (void)(u64 | b);   // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svbool_t' (aka '__SVBool_t'))}}
217   (void)(u64 | i8);  // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svint8_t' (aka '__SVInt8_t'))}}
218   (void)(u64 | i16); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svint16_t' (aka '__SVInt16_t'))}}
219   (void)(u64 | i32); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svint32_t' (aka '__SVInt32_t'))}}
220   (void)(u64 | u8);  // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
221   (void)(u64 | u16); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
222   (void)(u64 | u32); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
223   (void)(u64 | f16); // expected-error{{invalid operands to binary expression}}
224   (void)(u64 | f32); // expected-error{{invalid operands to binary expression}}
225   (void)(u64 | f64); // expected-error{{invalid operands to binary expression}}
226 
227   (void)(f16 | b);   // expected-error{{invalid operands to binary expression}}
228   (void)(f16 | i8);  // expected-error{{invalid operands to binary expression}}
229   (void)(f16 | i16); // expected-error{{invalid operands to binary expression}}
230   (void)(f16 | i32); // expected-error{{invalid operands to binary expression}}
231   (void)(f16 | i64); // expected-error{{invalid operands to binary expression}}
232   (void)(f16 | u8);  // expected-error{{invalid operands to binary expression}}
233   (void)(f16 | u32); // expected-error{{invalid operands to binary expression}}
234   (void)(f16 | u64); // expected-error{{invalid operands to binary expression}}
235   (void)(f16 | f16); // expected-error{{invalid operands to binary expression}}
236   (void)(f16 | f32); // expected-error{{invalid operands to binary expression}}
237   (void)(f16 | f64); // expected-error{{invalid operands to binary expression}}
238 
239   (void)(f32 | b);   // expected-error{{invalid operands to binary expression}}
240   (void)(f32 | i8);  // expected-error{{invalid operands to binary expression}}
241   (void)(f32 | i16); // expected-error{{invalid operands to binary expression}}
242   (void)(f32 | i32); // expected-error{{invalid operands to binary expression}}
243   (void)(f32 | i64); // expected-error{{invalid operands to binary expression}}
244   (void)(f32 | u8);  // expected-error{{invalid operands to binary expression}}
245   (void)(f32 | u16); // expected-error{{invalid operands to binary expression}}
246   (void)(f32 | u64); // expected-error{{invalid operands to binary expression}}
247   (void)(f32 | f16); // expected-error{{invalid operands to binary expression}}
248   (void)(f32 | f32); // expected-error{{invalid operands to binary expression}}
249   (void)(f32 | f64); // expected-error{{invalid operands to binary expression}}
250 
251   (void)(f64 | b);   // expected-error{{invalid operands to binary expression}}
252   (void)(f64 | i8);  // expected-error{{invalid operands to binary expression}}
253   (void)(f64 | i16); // expected-error{{invalid operands to binary expression}}
254   (void)(f64 | i32); // expected-error{{invalid operands to binary expression}}
255   (void)(f64 | i64); // expected-error{{invalid operands to binary expression}}
256   (void)(f64 | u8);  // expected-error{{invalid operands to binary expression}}
257   (void)(f64 | u16); // expected-error{{invalid operands to binary expression}}
258   (void)(f64 | u32); // expected-error{{invalid operands to binary expression}}
259   (void)(f64 | f16); // expected-error{{invalid operands to binary expression}}
260   (void)(f64 | f32); // expected-error{{invalid operands to binary expression}}
261   (void)(f64 | f64); // expected-error{{invalid operands to binary expression}}
262 }
263 
xor(svint8_t i8,svint16_t i16,svint32_t i32,svint64_t i64,svuint8_t u8,svuint16_t u16,svuint32_t u32,svuint64_t u64,svfloat16_t f16,svfloat32_t f32,svfloat64_t f64,svbool_t b)264 void xor (svint8_t i8, svint16_t i16, svint32_t i32, svint64_t i64, svuint8_t u8, svuint16_t u16, svuint32_t u32, svuint64_t u64, svfloat16_t f16, svfloat32_t f32, svfloat64_t f64, svbool_t b) {
265   (void)(i8 ^ b);   // expected-error{{cannot convert between vector type 'svbool_t' (aka '__SVBool_t') and vector type 'svint8_t' (aka '__SVInt8_t') as implicit conversion would cause truncation}}
266   (void)(i8 ^ i16); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svint16_t' (aka '__SVInt16_t'))}}
267   (void)(i8 ^ i32); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svint32_t' (aka '__SVInt32_t'))}}
268   (void)(i8 ^ i64); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svint64_t' (aka '__SVInt64_t'))}}
269   (void)(i8 ^ u16); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
270   (void)(i8 ^ u32); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
271   (void)(i8 ^ u64); // expected-error{{vector operands do not have the same number of elements ('svint8_t' (aka '__SVInt8_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
272   (void)(i8 ^ f16); // expected-error{{invalid operands to binary expression}}
273   (void)(i8 ^ f32); // expected-error{{invalid operands to binary expression}}
274   (void)(i8 ^ f64); // expected-error{{invalid operands to binary expression}}
275 
276   (void)(u8 ^ b);   // expected-error{{cannot convert between vector type 'svbool_t' (aka '__SVBool_t') and vector type 'svuint8_t' (aka '__SVUint8_t') as implicit conversion would cause truncation}}
277   (void)(u8 ^ i16); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svint16_t' (aka '__SVInt16_t'))}}
278   (void)(u8 ^ i32); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svint32_t' (aka '__SVInt32_t'))}}
279   (void)(u8 ^ i64); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svint64_t' (aka '__SVInt64_t'))}}
280   (void)(u8 ^ u16); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
281   (void)(u8 ^ u32); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
282   (void)(u8 ^ u64); // expected-error{{vector operands do not have the same number of elements ('svuint8_t' (aka '__SVUint8_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
283   (void)(u8 ^ f16); // expected-error{{invalid operands to binary expression}}
284   (void)(u8 ^ f32); // expected-error{{invalid operands to binary expression}}
285   (void)(u8 ^ f64); // expected-error{{invalid operands to binary expression}}
286 
287   (void)(i16 ^ b);   // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svbool_t' (aka '__SVBool_t'))}}
288   (void)(i16 ^ i8);  // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svint8_t' (aka '__SVInt8_t'))}}
289   (void)(i16 ^ i32); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svint32_t' (aka '__SVInt32_t'))}}
290   (void)(i16 ^ i64); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svint64_t' (aka '__SVInt64_t'))}}
291   (void)(i16 ^ u8);  // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
292   (void)(i16 ^ u32); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
293   (void)(i16 ^ u64); // expected-error{{vector operands do not have the same number of elements ('svint16_t' (aka '__SVInt16_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
294   (void)(i16 ^ f16); // expected-error{{invalid operands to binary expression}}
295   (void)(i16 ^ f32); // expected-error{{invalid operands to binary expression}}
296   (void)(i16 ^ f64); // expected-error{{invalid operands to binary expression}}
297 
298   (void)(u16 ^ b);   // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svbool_t' (aka '__SVBool_t'))}}
299   (void)(u16 ^ i8);  // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svint8_t' (aka '__SVInt8_t'))}}
300   (void)(u16 ^ i32); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svint32_t' (aka '__SVInt32_t'))}}
301   (void)(u16 ^ i64); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svint64_t' (aka '__SVInt64_t'))}}
302   (void)(u16 ^ u8);  // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
303   (void)(u16 ^ u32); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
304   (void)(u16 ^ u64); // expected-error{{vector operands do not have the same number of elements ('svuint16_t' (aka '__SVUint16_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
305   (void)(u16 ^ f16); // expected-error{{invalid operands to binary expression}}
306   (void)(u16 ^ f32); // expected-error{{invalid operands to binary expression}}
307   (void)(u16 ^ f64); // expected-error{{invalid operands to binary expression}}
308 
309   (void)(i32 ^ b);   // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svbool_t' (aka '__SVBool_t'))}}
310   (void)(i32 ^ i8);  // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svint8_t' (aka '__SVInt8_t'))}}
311   (void)(i32 ^ i16); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svint16_t' (aka '__SVInt16_t'))}}
312   (void)(i32 ^ i64); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svint64_t' (aka '__SVInt64_t'))}}
313   (void)(i32 ^ u8);  // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
314   (void)(i32 ^ u16); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
315   (void)(i32 ^ u64); // expected-error{{vector operands do not have the same number of elements ('svint32_t' (aka '__SVInt32_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
316   (void)(i32 ^ f16); // expected-error{{invalid operands to binary expression}}
317   (void)(i32 ^ f32); // expected-error{{invalid operands to binary expression}}
318   (void)(i32 ^ f64); // expected-error{{invalid operands to binary expression}}
319 
320   (void)(u32 ^ b);   // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svbool_t' (aka '__SVBool_t'))}}
321   (void)(u32 ^ i8);  // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svint8_t' (aka '__SVInt8_t'))}}
322   (void)(u32 ^ i16); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svint16_t' (aka '__SVInt16_t'))}}
323   (void)(u32 ^ i64); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svint64_t' (aka '__SVInt64_t'))}}
324   (void)(u32 ^ u8);  // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
325   (void)(u32 ^ u16); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
326   (void)(u32 ^ u64); // expected-error{{vector operands do not have the same number of elements ('svuint32_t' (aka '__SVUint32_t') and 'svuint64_t' (aka '__SVUint64_t'))}}
327   (void)(u32 ^ f16); // expected-error{{invalid operands to binary expression}}
328   (void)(u32 ^ f32); // expected-error{{invalid operands to binary expression}}
329   (void)(u32 ^ f64); // expected-error{{invalid operands to binary expression}}
330 
331   (void)(i64 ^ b);   // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svbool_t' (aka '__SVBool_t'))}}
332   (void)(i64 ^ i8);  // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svint8_t' (aka '__SVInt8_t'))}}
333   (void)(i64 ^ i16); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svint16_t' (aka '__SVInt16_t'))}}
334   (void)(i64 ^ i32); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svint32_t' (aka '__SVInt32_t'))}}
335   (void)(i64 ^ u8);  // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
336   (void)(i64 ^ u16); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
337   (void)(i64 ^ u32); // expected-error{{vector operands do not have the same number of elements ('svint64_t' (aka '__SVInt64_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
338   (void)(i64 ^ f16); // expected-error{{invalid operands to binary expression}}
339   (void)(i64 ^ f32); // expected-error{{invalid operands to binary expression}}
340   (void)(i64 ^ f64); // expected-error{{invalid operands to binary expression}}
341 
342   (void)(u64 ^ b);   // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svbool_t' (aka '__SVBool_t'))}}
343   (void)(u64 ^ i8);  // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svint8_t' (aka '__SVInt8_t'))}}
344   (void)(u64 ^ i16); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svint16_t' (aka '__SVInt16_t'))}}
345   (void)(u64 ^ i32); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svint32_t' (aka '__SVInt32_t'))}}
346   (void)(u64 ^ u8);  // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svuint8_t' (aka '__SVUint8_t'))}}
347   (void)(u64 ^ u16); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svuint16_t' (aka '__SVUint16_t'))}}
348   (void)(u64 ^ u32); // expected-error{{vector operands do not have the same number of elements ('svuint64_t' (aka '__SVUint64_t') and 'svuint32_t' (aka '__SVUint32_t'))}}
349   (void)(u64 ^ f16); // expected-error{{invalid operands to binary expression}}
350   (void)(u64 ^ f32); // expected-error{{invalid operands to binary expression}}
351   (void)(u64 ^ f64); // expected-error{{invalid operands to binary expression}}
352 
353   (void)(f16 ^ b);   // expected-error{{invalid operands to binary expression}}
354   (void)(f16 ^ i8);  // expected-error{{invalid operands to binary expression}}
355   (void)(f16 ^ i16); // expected-error{{invalid operands to binary expression}}
356   (void)(f16 ^ i32); // expected-error{{invalid operands to binary expression}}
357   (void)(f16 ^ i64); // expected-error{{invalid operands to binary expression}}
358   (void)(f16 ^ u8);  // expected-error{{invalid operands to binary expression}}
359   (void)(f16 ^ u32); // expected-error{{invalid operands to binary expression}}
360   (void)(f16 ^ u64); // expected-error{{invalid operands to binary expression}}
361   (void)(f16 ^ f16); // expected-error{{invalid operands to binary expression}}
362   (void)(f16 ^ f32); // expected-error{{invalid operands to binary expression}}
363   (void)(f16 ^ f64); // expected-error{{invalid operands to binary expression}}
364 
365   (void)(f32 ^ b);   // expected-error{{invalid operands to binary expression}}
366   (void)(f32 ^ i8);  // expected-error{{invalid operands to binary expression}}
367   (void)(f32 ^ i16); // expected-error{{invalid operands to binary expression}}
368   (void)(f32 ^ i32); // expected-error{{invalid operands to binary expression}}
369   (void)(f32 ^ i64); // expected-error{{invalid operands to binary expression}}
370   (void)(f32 ^ u8);  // expected-error{{invalid operands to binary expression}}
371   (void)(f32 ^ u16); // expected-error{{invalid operands to binary expression}}
372   (void)(f32 ^ u64); // expected-error{{invalid operands to binary expression}}
373   (void)(f32 ^ f16); // expected-error{{invalid operands to binary expression}}
374   (void)(f32 ^ f32); // expected-error{{invalid operands to binary expression}}
375   (void)(f32 ^ f64); // expected-error{{invalid operands to binary expression}}
376 
377   (void)(f64 ^ b);   // expected-error{{invalid operands to binary expression}}
378   (void)(f64 ^ i8);  // expected-error{{invalid operands to binary expression}}
379   (void)(f64 ^ i16); // expected-error{{invalid operands to binary expression}}
380   (void)(f64 ^ i32); // expected-error{{invalid operands to binary expression}}
381   (void)(f64 ^ i64); // expected-error{{invalid operands to binary expression}}
382   (void)(f64 ^ u8);  // expected-error{{invalid operands to binary expression}}
383   (void)(f64 ^ u16); // expected-error{{invalid operands to binary expression}}
384   (void)(f64 ^ u32); // expected-error{{invalid operands to binary expression}}
385   (void)(f64 ^ f16); // expected-error{{invalid operands to binary expression}}
386   (void)(f64 ^ f32); // expected-error{{invalid operands to binary expression}}
387   (void)(f64 ^ f64); // expected-error{{invalid operands to binary expression}}
388 }
389 
not(svfloat16_t f16,svfloat32_t f32,svfloat32_t f64)390     void not(svfloat16_t f16, svfloat32_t f32, svfloat32_t f64) {
391   (void)(~f16); // expected-error{{invalid argument type}}
392   (void)(~f32); // expected-error{{invalid argument type}}
393   (void)(~f64); // expected-error{{invalid argument type}}
394 }
395