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 5 6 #include <vecintrin.h> 7 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; 23 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; 32 volatile double d; 33 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; 47 48 void * volatile ptr; 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; 59 60 volatile unsigned int len; 61 volatile int idx; 62 int cc; 63 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}} 73 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}} 110 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}} 174 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}} 238 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}} 265 266 vuc = vec_genmask(idx); // expected-error {{no matching function}} 267 // expected-note@vecintrin.h:* {{must be a constant integer}} 268 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}} 293 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}} 411 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}} 428 } 429 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}} 487 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}} 533 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}} 579 } 580 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}} 600 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}} 613 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}} 617 } 618