1 // REQUIRES: systemz-registered-target
2 // RUN: %clang_cc1 -target-cpu z13 -triple s390x-linux-gnu \
3 // RUN: -fzvector -flax-vector-conversions=none \
4 // RUN: -Wall -Wno-unused -Werror -fsyntax-only -verify %s
8 volatile vector
signed char vsc
;
9 volatile vector
signed short vss
;
10 volatile vector
signed int vsi
;
11 volatile vector
signed long long vsl
;
12 volatile vector
signed __int128 vslll
;
13 volatile vector
unsigned char vuc
;
14 volatile vector
unsigned short vus
;
15 volatile vector
unsigned int vui
;
16 volatile vector
unsigned long long vul
;
17 volatile vector
unsigned __int128 vulll
;
18 volatile vector
bool char vbc
;
19 volatile vector
bool short vbs
;
20 volatile vector
bool int vbi
;
21 volatile vector
bool long long vbl
;
22 volatile vector
double vd
;
24 volatile signed char sc
;
25 volatile signed short ss
;
26 volatile signed int si
;
27 volatile signed long long sl
;
28 volatile unsigned char uc
;
29 volatile unsigned short us
;
30 volatile unsigned int ui
;
31 volatile unsigned long long ul
;
34 const void * volatile cptr
;
35 const signed char * volatile cptrsc
;
36 const signed short * volatile cptrss
;
37 const signed int * volatile cptrsi
;
38 const signed long long * volatile cptrsl
;
39 const signed __int128
* volatile cptrslll
;
40 const unsigned char * volatile cptruc
;
41 const unsigned short * volatile cptrus
;
42 const unsigned int * volatile cptrui
;
43 const unsigned long long * volatile cptrul
;
44 const unsigned __int128
* volatile cptrulll
;
45 const float * volatile cptrf
;
46 const double * volatile cptrd
;
49 signed char * volatile ptrsc
;
50 signed short * volatile ptrss
;
51 signed int * volatile ptrsi
;
52 signed long long * volatile ptrsl
;
53 unsigned char * volatile ptruc
;
54 unsigned short * volatile ptrus
;
55 unsigned int * volatile ptrui
;
56 unsigned long long * volatile ptrul
;
57 float * volatile ptrf
;
58 double * volatile ptrd
;
60 volatile unsigned int len
;
64 void test_core(void) {
65 len
= __lcbb(cptr
, idx
); // expected-error {{no matching function}}
66 // expected-note@vecintrin.h:* {{must be a constant power of 2 from 64 to 4096}}
67 len
= __lcbb(cptr
, 200); // expected-error {{no matching function}}
68 // expected-note@vecintrin.h:* {{must be a constant power of 2 from 64 to 4096}}
69 len
= __lcbb(cptr
, 32); // expected-error {{no matching function}}
70 // expected-note@vecintrin.h:* {{must be a constant power of 2 from 64 to 4096}}
71 len
= __lcbb(cptr
, 8192); // expected-error {{no matching function}}
72 // expected-note@vecintrin.h:* {{must be a constant power of 2 from 64 to 4096}}
74 vsl
= vec_permi(vsl
, vsl
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vpdi' must be a constant integer}}
75 // expected-note@vecintrin.h:* 3 {{candidate function not viable}}
76 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
77 vsl
= vec_permi(vsl
, vsl
, -1); // expected-error {{no matching function}}
78 // expected-note@vecintrin.h:* 3 {{candidate function not viable}}
79 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
80 vsl
= vec_permi(vsl
, vsl
, 4); // expected-error {{no matching function}}
81 // expected-note@vecintrin.h:* 3 {{candidate function not viable}}
82 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
83 vul
= vec_permi(vul
, vul
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vpdi' must be a constant integer}}
84 // expected-note@vecintrin.h:* 2 {{candidate function not viable}}
85 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
86 vul
= vec_permi(vul
, vul
, -1); // expected-error {{no matching function}}
87 // expected-note@vecintrin.h:* 2 {{candidate function not viable}}
88 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
89 vul
= vec_permi(vul
, vul
, 4); // expected-error {{no matching function}}
90 // expected-note@vecintrin.h:* 2 {{candidate function not viable}}
91 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
92 vbl
= vec_permi(vbl
, vbl
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vpdi' must be a constant integer}}
93 // expected-note@vecintrin.h:* 2 {{candidate function not viable}}
94 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
95 vbl
= vec_permi(vbl
, vbl
, -1); // expected-error {{no matching function}}
96 // expected-note@vecintrin.h:* 2 {{candidate function not viable}}
97 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
98 vbl
= vec_permi(vbl
, vbl
, 4); // expected-error {{no matching function}}
99 // expected-note@vecintrin.h:* 2 {{candidate function not viable}}
100 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
101 vd
= vec_permi(vd
, vd
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vpdi' must be a constant integer}}
102 // expected-note@vecintrin.h:* 3 {{candidate function not viable}}
103 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
104 vd
= vec_permi(vd
, vd
, -1); // expected-error {{no matching function}}
105 // expected-note@vecintrin.h:* 3 {{candidate function not viable}}
106 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
107 vd
= vec_permi(vd
, vd
, 4); // expected-error {{no matching function}}
108 // expected-note@vecintrin.h:* 3 {{candidate function not viable}}
109 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
111 vsi
= vec_gather_element(vsi
, vui
, cptrsi
, idx
); // expected-error {{no matching function}}
112 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
113 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
114 vsi
= vec_gather_element(vsi
, vui
, cptrsi
, -1); // expected-error {{no matching function}}
115 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
116 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
117 vsi
= vec_gather_element(vsi
, vui
, cptrsi
, 4); // expected-error {{no matching function}}
118 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
119 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
120 vui
= vec_gather_element(vui
, vui
, cptrui
, idx
); // expected-error {{no matching function}}
121 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
122 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
123 vui
= vec_gather_element(vui
, vui
, cptrui
, -1); // expected-error {{no matching function}}
124 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
125 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
126 vui
= vec_gather_element(vui
, vui
, cptrui
, 4); // expected-error {{no matching function}}
127 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
128 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
129 vbi
= vec_gather_element(vbi
, vui
, cptrui
, idx
); // expected-error {{no matching function}}
130 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
131 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
132 vbi
= vec_gather_element(vbi
, vui
, cptrui
, -1); // expected-error {{no matching function}}
133 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
134 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
135 vbi
= vec_gather_element(vbi
, vui
, cptrui
, 4); // expected-error {{no matching function}}
136 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
137 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
138 vsl
= vec_gather_element(vsl
, vul
, cptrsl
, idx
); // expected-error {{no matching function}}
139 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
140 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
141 vsl
= vec_gather_element(vsl
, vul
, cptrsl
, -1); // expected-error {{no matching function}}
142 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
143 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
144 vsl
= vec_gather_element(vsl
, vul
, cptrsl
, 2); // expected-error {{no matching function}}
145 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
146 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
147 vul
= vec_gather_element(vul
, vul
, cptrul
, idx
); // expected-error {{no matching function}}
148 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
149 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
150 vul
= vec_gather_element(vul
, vul
, cptrul
, -1); // expected-error {{no matching function}}
151 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
152 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
153 vul
= vec_gather_element(vul
, vul
, cptrul
, 2); // expected-error {{no matching function}}
154 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
155 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
156 vbl
= vec_gather_element(vbl
, vul
, cptrul
, idx
); // expected-error {{no matching function}}
157 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
158 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
159 vbl
= vec_gather_element(vbl
, vul
, cptrul
, -1); // expected-error {{no matching function}}
160 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
161 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
162 vbl
= vec_gather_element(vbl
, vul
, cptrul
, 2); // expected-error {{no matching function}}
163 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
164 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
165 vd
= vec_gather_element(vd
, vul
, cptrd
, idx
); // expected-error {{no matching function}}
166 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
167 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
168 vd
= vec_gather_element(vd
, vul
, cptrd
, -1); // expected-error {{no matching function}}
169 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
170 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
171 vd
= vec_gather_element(vd
, vul
, cptrd
, 2); // expected-error {{no matching function}}
172 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
173 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
175 vec_scatter_element(vsi
, vui
, ptrsi
, idx
); // expected-error {{no matching function}}
176 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
177 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
178 vec_scatter_element(vsi
, vui
, ptrsi
, -1); // expected-error {{no matching function}}
179 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
180 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
181 vec_scatter_element(vsi
, vui
, ptrsi
, 4); // expected-error {{no matching function}}
182 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
183 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
184 vec_scatter_element(vui
, vui
, ptrui
, idx
); // expected-error {{no matching function}}
185 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
186 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
187 vec_scatter_element(vui
, vui
, ptrui
, -1); // expected-error {{no matching function}}
188 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
189 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
190 vec_scatter_element(vui
, vui
, ptrui
, 4); // expected-error {{no matching function}}
191 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
192 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
193 vec_scatter_element(vbi
, vui
, ptrui
, idx
); // expected-error {{no matching function}}
194 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
195 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
196 vec_scatter_element(vbi
, vui
, ptrui
, -1); // expected-error {{no matching function}}
197 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
198 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
199 vec_scatter_element(vbi
, vui
, ptrui
, 4); // expected-error {{no matching function}}
200 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
201 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
202 vec_scatter_element(vsl
, vul
, ptrsl
, idx
); // expected-error {{no matching function}}
203 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
204 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
205 vec_scatter_element(vsl
, vul
, ptrsl
, -1); // expected-error {{no matching function}}
206 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
207 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
208 vec_scatter_element(vsl
, vul
, ptrsl
, 2); // expected-error {{no matching function}}
209 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
210 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
211 vec_scatter_element(vul
, vul
, ptrul
, idx
); // expected-error {{no matching function}}
212 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
213 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
214 vec_scatter_element(vul
, vul
, ptrul
, -1); // expected-error {{no matching function}}
215 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
216 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
217 vec_scatter_element(vul
, vul
, ptrul
, 2); // expected-error {{no matching function}}
218 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
219 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
220 vec_scatter_element(vbl
, vul
, ptrul
, idx
); // expected-error {{no matching function}}
221 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
222 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
223 vec_scatter_element(vbl
, vul
, ptrul
, -1); // expected-error {{no matching function}}
224 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
225 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
226 vec_scatter_element(vbl
, vul
, ptrul
, 2); // expected-error {{no matching function}}
227 // expected-note@vecintrin.h:* 5 {{candidate function not viable}}
228 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
229 vec_scatter_element(vd
, vul
, ptrd
, idx
); // expected-error {{no matching function}}
230 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
231 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
232 vec_scatter_element(vd
, vul
, ptrd
, -1); // expected-error {{no matching function}}
233 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
234 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
235 vec_scatter_element(vd
, vul
, ptrd
, 2); // expected-error {{no matching function}}
236 // expected-note@vecintrin.h:* 6 {{candidate function not viable}}
237 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
239 vsc
= vec_load_bndry(cptrsc
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
240 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
241 vsc
= vec_load_bndry(cptrsc
, 200); // expected-error {{no matching function}} expected-error {{argument value -1 is outside the valid range [0, 15]}}
242 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
243 vsc
= vec_load_bndry(cptrsc
, 32); // expected-error {{no matching function}} expected-error {{argument value -1 is outside the valid range [0, 15]}}
244 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
245 vsc
= vec_load_bndry(cptrsc
, 8192); // expected-error {{no matching function}} expected-error {{argument value -1 is outside the valid range [0, 15]}}
246 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
247 vuc
= vec_load_bndry(cptruc
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
248 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
249 vss
= vec_load_bndry(cptrss
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
250 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
251 vus
= vec_load_bndry(cptrus
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
252 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
253 vsi
= vec_load_bndry(cptrsi
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
254 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
255 vui
= vec_load_bndry(cptrui
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
256 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
257 vsl
= vec_load_bndry(cptrsl
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
258 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
259 vul
= vec_load_bndry(cptrul
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
260 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
261 vslll
= vec_load_bndry(cptrslll
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
262 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
263 vulll
= vec_load_bndry(cptrulll
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vlbb' must be a constant integer}}
264 // expected-note@vecintrin.h:* 11 {{must be a constant power of 2 from 64 to 4096}}
266 vuc
= vec_genmask(idx
); // expected-error {{no matching function}}
267 // expected-note@vecintrin.h:* {{must be a constant integer}}
269 vuc
= vec_genmasks_8(0, idx
); // expected-error {{no matching function}}
270 // expected-note@vecintrin.h:* {{must be a constant integer}}
271 vuc
= vec_genmasks_8(idx
, 0); // expected-error {{no matching function}}
272 // expected-note@vecintrin.h:* {{must be a constant integer}}
273 vuc
= vec_genmasks_8(idx
, idx
); // expected-error {{no matching function}}
274 // expected-note@vecintrin.h:* {{must be a constant integer}}
275 vus
= vec_genmasks_16(0, idx
); // expected-error {{no matching function}}
276 // expected-note@vecintrin.h:* {{must be a constant integer}}
277 vus
= vec_genmasks_16(idx
, 0); // expected-error {{no matching function}}
278 // expected-note@vecintrin.h:* {{must be a constant integer}}
279 vus
= vec_genmasks_16(idx
, idx
); // expected-error {{no matching function}}
280 // expected-note@vecintrin.h:* {{must be a constant integer}}
281 vui
= vec_genmasks_32(0, idx
); // expected-error {{no matching function}}
282 // expected-note@vecintrin.h:* {{must be a constant integer}}
283 vui
= vec_genmasks_32(idx
, 0); // expected-error {{no matching function}}
284 // expected-note@vecintrin.h:* {{must be a constant integer}}
285 vui
= vec_genmasks_32(idx
, idx
); // expected-error {{no matching function}}
286 // expected-note@vecintrin.h:* {{must be a constant integer}}
287 vul
= vec_genmasks_64(0, idx
); // expected-error {{no matching function}}
288 // expected-note@vecintrin.h:* {{must be a constant integer}}
289 vul
= vec_genmasks_64(idx
, 0); // expected-error {{no matching function}}
290 // expected-note@vecintrin.h:* {{must be a constant integer}}
291 vul
= vec_genmasks_64(idx
, idx
); // expected-error {{no matching function}}
292 // expected-note@vecintrin.h:* {{must be a constant integer}}
294 vsc
= vec_splat(vsc
, idx
); // expected-error {{no matching function}}
295 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
296 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
297 vsc
= vec_splat(vsc
, -1); // expected-error {{no matching function}}
298 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
299 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
300 vsc
= vec_splat(vsc
, 16); // expected-error {{no matching function}}
301 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
302 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
303 vuc
= vec_splat(vuc
, idx
); // expected-error {{no matching function}}
304 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
305 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
306 vuc
= vec_splat(vuc
, -1); // expected-error {{no matching function}}
307 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
308 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
309 vuc
= vec_splat(vuc
, 16); // expected-error {{no matching function}}
310 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
311 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
312 vbc
= vec_splat(vbc
, idx
); // expected-error {{no matching function}}
313 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
314 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
315 vbc
= vec_splat(vbc
, -1); // expected-error {{no matching function}}
316 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
317 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
318 vbc
= vec_splat(vbc
, 16); // expected-error {{no matching function}}
319 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
320 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
321 vss
= vec_splat(vss
, idx
); // expected-error {{no matching function}}
322 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
323 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 7}}
324 vss
= vec_splat(vss
, -1); // expected-error {{no matching function}}
325 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
326 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 7}}
327 vss
= vec_splat(vss
, 8); // expected-error {{no matching function}}
328 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
329 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 7}}
330 vus
= vec_splat(vus
, idx
); // expected-error {{no matching function}}
331 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
332 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 7}}
333 vus
= vec_splat(vus
, -1); // expected-error {{no matching function}}
334 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
335 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 7}}
336 vus
= vec_splat(vus
, 8); // expected-error {{no matching function}}
337 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
338 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 7}}
339 vbs
= vec_splat(vbs
, idx
); // expected-error {{no matching function}}
340 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
341 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 7}}
342 vbs
= vec_splat(vbs
, -1); // expected-error {{no matching function}}
343 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
344 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 7}}
345 vbs
= vec_splat(vbs
, 8); // expected-error {{no matching function}}
346 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
347 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 7}}
348 vsi
= vec_splat(vsi
, idx
); // expected-error {{no matching function}}
349 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
350 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
351 vsi
= vec_splat(vsi
, -1); // expected-error {{no matching function}}
352 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
353 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
354 vsi
= vec_splat(vsi
, 4); // expected-error {{no matching function}}
355 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
356 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
357 vui
= vec_splat(vui
, idx
); // expected-error {{no matching function}}
358 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
359 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
360 vui
= vec_splat(vui
, -1); // expected-error {{no matching function}}
361 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
362 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
363 vui
= vec_splat(vui
, 4); // expected-error {{no matching function}}
364 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
365 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
366 vbi
= vec_splat(vbi
, idx
); // expected-error {{no matching function}}
367 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
368 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
369 vbi
= vec_splat(vbi
, -1); // expected-error {{no matching function}}
370 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
371 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
372 vbi
= vec_splat(vbi
, 4); // expected-error {{no matching function}}
373 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
374 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 3}}
375 vsl
= vec_splat(vsl
, idx
); // expected-error {{no matching function}}
376 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
377 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
378 vsl
= vec_splat(vsl
, -1); // expected-error {{no matching function}}
379 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
380 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
381 vsl
= vec_splat(vsl
, 2); // expected-error {{no matching function}}
382 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
383 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
384 vul
= vec_splat(vul
, idx
); // expected-error {{no matching function}}
385 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
386 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
387 vul
= vec_splat(vul
, -1); // expected-error {{no matching function}}
388 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
389 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
390 vul
= vec_splat(vul
, 2); // expected-error {{no matching function}}
391 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
392 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
393 vbl
= vec_splat(vbl
, idx
); // expected-error {{no matching function}}
394 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
395 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
396 vbl
= vec_splat(vbl
, -1); // expected-error {{no matching function}}
397 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
398 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
399 vbl
= vec_splat(vbl
, 2); // expected-error {{no matching function}}
400 // expected-note@vecintrin.h:* 11 {{candidate function not viable}}
401 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 1}}
402 vd
= vec_splat(vd
, idx
); // expected-error {{no matching function}}
403 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
404 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
405 vd
= vec_splat(vd
, -1); // expected-error {{no matching function}}
406 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
407 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
408 vd
= vec_splat(vd
, 2); // expected-error {{no matching function}}
409 // expected-note@vecintrin.h:* 12 {{candidate function not viable}}
410 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 1}}
412 vsc
= vec_splat_s8(idx
); // expected-error {{no matching function}}
413 // expected-note@vecintrin.h:* {{must be a constant integer}}
414 vuc
= vec_splat_u8(idx
); // expected-error {{no matching function}}
415 // expected-note@vecintrin.h:* {{must be a constant integer}}
416 vss
= vec_splat_s16(idx
); // expected-error {{no matching function}}
417 // expected-note@vecintrin.h:* {{must be a constant integer}}
418 vus
= vec_splat_u16(idx
); // expected-error {{no matching function}}
419 // expected-note@vecintrin.h:* {{must be a constant integer}}
420 vsi
= vec_splat_s32(idx
); // expected-error {{no matching function}}
421 // expected-note@vecintrin.h:* {{must be a constant integer}}
422 vui
= vec_splat_u32(idx
); // expected-error {{no matching function}}
423 // expected-note@vecintrin.h:* {{must be a constant integer}}
424 vsl
= vec_splat_s64(idx
); // expected-error {{no matching function}}
425 // expected-note@vecintrin.h:* {{must be a constant integer}}
426 vul
= vec_splat_u64(idx
); // expected-error {{no matching function}}
427 // expected-note@vecintrin.h:* {{must be a constant integer}}
430 void test_integer(void) {
431 vsc
= vec_rl_mask(vsc
, vuc
, idx
); // expected-error {{no matching function}} \
432 // expected-error {{argument to '__builtin_s390_verimb' must be a constant integer}} \
433 // expected-error {{argument to '__builtin_s390_verimh' must be a constant integer}} \
434 // expected-error {{argument to '__builtin_s390_verimf' must be a constant integer}} \
435 // expected-error {{argument to '__builtin_s390_verimg' must be a constant integer}}
436 // expected-note@vecintrin.h:* 7 {{candidate function not viable}}
437 // expected-note@vecintrin.h:* 1 {{must be a constant integer}}
438 vuc
= vec_rl_mask(vuc
, vuc
, idx
); // expected-error {{no matching function}} \
439 // expected-error {{argument to '__builtin_s390_verimb' must be a constant integer}} \
440 // expected-error {{argument to '__builtin_s390_verimh' must be a constant integer}} \
441 // expected-error {{argument to '__builtin_s390_verimf' must be a constant integer}} \
442 // expected-error {{argument to '__builtin_s390_verimg' must be a constant integer}}
443 // expected-note@vecintrin.h:* 7 {{candidate function not viable}}
444 // expected-note@vecintrin.h:* 1 {{must be a constant integer}}
445 vss
= vec_rl_mask(vss
, vus
, idx
); // expected-error {{no matching function}} \
446 // expected-error {{argument to '__builtin_s390_verimb' must be a constant integer}} \
447 // expected-error {{argument to '__builtin_s390_verimh' must be a constant integer}} \
448 // expected-error {{argument to '__builtin_s390_verimf' must be a constant integer}} \
449 // expected-error {{argument to '__builtin_s390_verimg' must be a constant integer}}
450 // expected-note@vecintrin.h:* 7 {{candidate function not viable}}
451 // expected-note@vecintrin.h:* 1 {{must be a constant integer}}
452 vus
= vec_rl_mask(vus
, vus
, idx
); // expected-error {{no matching function}} \
453 // expected-error {{argument to '__builtin_s390_verimb' must be a constant integer}} \
454 // expected-error {{argument to '__builtin_s390_verimh' must be a constant integer}} \
455 // expected-error {{argument to '__builtin_s390_verimf' must be a constant integer}} \
456 // expected-error {{argument to '__builtin_s390_verimg' must be a constant integer}}
457 // expected-note@vecintrin.h:* 7 {{candidate function not viable}}
458 // expected-note@vecintrin.h:* 1 {{must be a constant integer}}
459 vsi
= vec_rl_mask(vsi
, vui
, idx
); // expected-error {{no matching function}} \
460 // expected-error {{argument to '__builtin_s390_verimb' must be a constant integer}} \
461 // expected-error {{argument to '__builtin_s390_verimh' must be a constant integer}} \
462 // expected-error {{argument to '__builtin_s390_verimf' must be a constant integer}} \
463 // expected-error {{argument to '__builtin_s390_verimg' must be a constant integer}}
464 // expected-note@vecintrin.h:* 7 {{candidate function not viable}}
465 // expected-note@vecintrin.h:* 1 {{must be a constant integer}}
466 vui
= vec_rl_mask(vui
, vui
, idx
); // expected-error {{no matching function}} \
467 // expected-error {{argument to '__builtin_s390_verimb' must be a constant integer}} \
468 // expected-error {{argument to '__builtin_s390_verimh' must be a constant integer}} \
469 // expected-error {{argument to '__builtin_s390_verimf' must be a constant integer}} \
470 // expected-error {{argument to '__builtin_s390_verimg' must be a constant integer}}
471 // expected-note@vecintrin.h:* 7 {{candidate function not viable}}
472 // expected-note@vecintrin.h:* 1 {{must be a constant integer}}
473 vsl
= vec_rl_mask(vsl
, vul
, idx
); // expected-error {{no matching function}} \
474 // expected-error {{argument to '__builtin_s390_verimb' must be a constant integer}} \
475 // expected-error {{argument to '__builtin_s390_verimh' must be a constant integer}} \
476 // expected-error {{argument to '__builtin_s390_verimf' must be a constant integer}} \
477 // expected-error {{argument to '__builtin_s390_verimg' must be a constant integer}}
478 // expected-note@vecintrin.h:* 7 {{candidate function not viable}}
479 // expected-note@vecintrin.h:* 1 {{must be a constant integer}}
480 vul
= vec_rl_mask(vul
, vul
, idx
); // expected-error {{no matching function}} \
481 // expected-error {{argument to '__builtin_s390_verimb' must be a constant integer}} \
482 // expected-error {{argument to '__builtin_s390_verimh' must be a constant integer}} \
483 // expected-error {{argument to '__builtin_s390_verimf' must be a constant integer}} \
484 // expected-error {{argument to '__builtin_s390_verimg' must be a constant integer}}
485 // expected-note@vecintrin.h:* 7 {{candidate function not viable}}
486 // expected-note@vecintrin.h:* 1 {{must be a constant integer}}
488 vsc
= vec_sld(vsc
, vsc
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
489 // expected-note@vecintrin.h:* 14 {{candidate function not viable}}
490 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
491 vsc
= vec_sld(vsc
, vsc
, -1); // expected-error {{no matching function}} expected-error {{argument value -1 is outside the valid range [0, 15]}}
492 // expected-note@vecintrin.h:* 14 {{candidate function not viable}}
493 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
494 vsc
= vec_sld(vsc
, vsc
, 16); // expected-error {{no matching function}} expected-error {{argument value 16 is outside the valid range [0, 15]}}
495 // expected-note@vecintrin.h:* 14 {{candidate function not viable}}
496 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
497 vuc
= vec_sld(vuc
, vuc
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
498 // expected-note@vecintrin.h:* 13 {{candidate function not viable}}
499 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
500 vuc
= vec_sld(vuc
, vuc
, -1); // expected-error {{no matching function}} expected-error {{argument value -1 is outside the valid range [0, 15]}}
501 // expected-note@vecintrin.h:* 13 {{candidate function not viable}}
502 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
503 vuc
= vec_sld(vuc
, vuc
, 16); // expected-error {{no matching function}} expected-error {{argument value 16 is outside the valid range [0, 15]}}
504 // expected-note@vecintrin.h:* 13 {{candidate function not viable}}
505 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
506 vss
= vec_sld(vss
, vss
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
507 // expected-note@vecintrin.h:* 14 {{candidate function not viable}}
508 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
509 vus
= vec_sld(vus
, vus
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
510 // expected-note@vecintrin.h:* 13 {{candidate function not viable}}
511 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
512 vsi
= vec_sld(vsi
, vsi
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
513 // expected-note@vecintrin.h:* 14 {{candidate function not viable}}
514 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
515 vui
= vec_sld(vui
, vui
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
516 // expected-note@vecintrin.h:* 13 {{candidate function not viable}}
517 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
518 vsl
= vec_sld(vsl
, vsl
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
519 // expected-note@vecintrin.h:* 14 {{candidate function not viable}}
520 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
521 vul
= vec_sld(vul
, vul
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
522 // expected-note@vecintrin.h:* 13 {{candidate function not viable}}
523 // expected-note@vecintrin.h:* 2 {{must be a constant integer from 0 to 15}}
524 vslll
= vec_sld(vslll
, vslll
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
525 // expected-note@vecintrin.h:* 14 {{candidate function not viable}}
526 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
527 vulll
= vec_sld(vulll
, vulll
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
528 // expected-note@vecintrin.h:* 14 {{candidate function not viable}}
529 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
530 vd
= vec_sld(vd
, vd
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
531 // expected-note@vecintrin.h:* 14 {{candidate function not viable}}
532 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 15}}
534 vsc
= vec_sldw(vsc
, vsc
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
535 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
536 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
537 vsc
= vec_sldw(vsc
, vsc
, -1); // expected-error {{no matching function}} expected-error {{argument value -4 is outside the valid range [0, 15]}}
538 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
539 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
540 vsc
= vec_sldw(vsc
, vsc
, 4); // expected-error {{no matching function}} expected-error {{argument value 16 is outside the valid range [0, 15]}}
541 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
542 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
543 vuc
= vec_sldw(vuc
, vuc
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
544 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
545 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
546 vuc
= vec_sldw(vuc
, vuc
, -1); // expected-error {{no matching function}} expected-error {{argument value -4 is outside the valid range [0, 15]}}
547 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
548 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
549 vuc
= vec_sldw(vuc
, vuc
, 4); // expected-error {{no matching function}} expected-error {{argument value 16 is outside the valid range [0, 15]}}
550 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
551 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
552 vss
= vec_sldw(vss
, vss
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
553 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
554 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
555 vus
= vec_sldw(vus
, vus
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
556 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
557 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
558 vsi
= vec_sldw(vsi
, vsi
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
559 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
560 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
561 vui
= vec_sldw(vui
, vui
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
562 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
563 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
564 vsl
= vec_sldw(vsl
, vsl
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
565 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
566 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
567 vul
= vec_sldw(vul
, vul
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
568 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
569 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
570 vslll
= vec_sldw(vslll
, vslll
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
571 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
572 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
573 vulll
= vec_sldw(vulll
, vulll
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
574 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
575 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
576 vd
= vec_sldw(vd
, vd
, idx
); // expected-error {{no matching function}} expected-error {{argument to '__builtin_s390_vsldb' must be a constant integer}}
577 // expected-note@vecintrin.h:* 10 {{candidate function not viable}}
578 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 3}}
581 void test_float(void) {
582 vd
= vec_ctd(vsl
, idx
); // expected-error {{no matching function}}
583 // expected-note@vecintrin.h:* 1 {{candidate function not viable}}
584 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
585 vd
= vec_ctd(vsl
, -1); // expected-error {{no matching function}}
586 // expected-note@vecintrin.h:* 1 {{candidate function not viable}}
587 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
588 vd
= vec_ctd(vsl
, 32); // expected-error {{no matching function}}
589 // expected-note@vecintrin.h:* 1 {{candidate function not viable}}
590 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
591 vd
= vec_ctd(vul
, idx
); // expected-error {{no matching function}}
592 // expected-note@vecintrin.h:* 1 {{candidate function not viable}}
593 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
594 vd
= vec_ctd(vul
, -1); // expected-error {{no matching function}}
595 // expected-note@vecintrin.h:* 1 {{candidate function not viable}}
596 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
597 vd
= vec_ctd(vul
, 32); // expected-error {{no matching function}}
598 // expected-note@vecintrin.h:* 1 {{candidate function not viable}}
599 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
601 vsl
= vec_ctsl(vd
, idx
); // expected-error {{no matching function}}
602 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
603 vsl
= vec_ctsl(vd
, -1); // expected-error {{no matching function}}
604 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
605 vsl
= vec_ctsl(vd
, 32); // expected-error {{no matching function}}
606 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
607 vul
= vec_ctul(vd
, idx
); // expected-error {{no matching function}}
608 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
609 vul
= vec_ctul(vd
, -1); // expected-error {{no matching function}}
610 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
611 vul
= vec_ctul(vd
, 32); // expected-error {{no matching function}}
612 // expected-note@vecintrin.h:* 1 {{must be a constant integer from 0 to 31}}
614 vbl
= vec_fp_test_data_class(vd
, idx
, &cc
); // expected-error {{must be a constant integer}}
615 vbl
= vec_fp_test_data_class(vd
, -1, &cc
); // expected-error-re {{argument value {{.*}} is outside the valid range}}
616 vbl
= vec_fp_test_data_class(vd
, 4096, &cc
); // expected-error-re {{argument value {{.*}} is outside the valid range}}