clang  7.0.0
vecintrin.h
Go to the documentation of this file.
1 /*===---- vecintrin.h - Vector intrinsics ----------------------------------===
2  *
3  * Permission is hereby granted, free of charge, to any person obtaining a copy
4  * of this software and associated documentation files (the "Software"), to deal
5  * in the Software without restriction, including without limitation the rights
6  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7  * copies of the Software, and to permit persons to whom the Software is
8  * furnished to do so, subject to the following conditions:
9  *
10  * The above copyright notice and this permission notice shall be included in
11  * all copies or substantial portions of the Software.
12  *
13  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19  * THE SOFTWARE.
20  *
21  *===-----------------------------------------------------------------------===
22  */
23 
24 #if defined(__s390x__) && defined(__VEC__)
25 
26 #define __ATTRS_ai __attribute__((__always_inline__))
27 #define __ATTRS_o __attribute__((__overloadable__))
28 #define __ATTRS_o_ai __attribute__((__overloadable__, __always_inline__))
29 
30 #define __constant(PARM) \
31  __attribute__((__enable_if__ ((PARM) == (PARM), \
32  "argument must be a constant integer")))
33 #define __constant_range(PARM, LOW, HIGH) \
34  __attribute__((__enable_if__ ((PARM) >= (LOW) && (PARM) <= (HIGH), \
35  "argument must be a constant integer from " #LOW " to " #HIGH)))
36 #define __constant_pow2_range(PARM, LOW, HIGH) \
37  __attribute__((__enable_if__ ((PARM) >= (LOW) && (PARM) <= (HIGH) && \
38  ((PARM) & ((PARM) - 1)) == 0, \
39  "argument must be a constant power of 2 from " #LOW " to " #HIGH)))
40 
41 /*-- __lcbb -----------------------------------------------------------------*/
42 
43 extern __ATTRS_o unsigned int
44 __lcbb(const void *__ptr, unsigned short __len)
45  __constant_pow2_range(__len, 64, 4096);
46 
47 #define __lcbb(X, Y) ((__typeof__((__lcbb)((X), (Y)))) \
48  __builtin_s390_lcbb((X), __builtin_constant_p((Y))? \
49  ((Y) == 64 ? 0 : \
50  (Y) == 128 ? 1 : \
51  (Y) == 256 ? 2 : \
52  (Y) == 512 ? 3 : \
53  (Y) == 1024 ? 4 : \
54  (Y) == 2048 ? 5 : \
55  (Y) == 4096 ? 6 : 0) : 0))
56 
57 /*-- vec_extract ------------------------------------------------------------*/
58 
59 static inline __ATTRS_o_ai signed char
60 vec_extract(vector signed char __vec, int __index) {
61  return __vec[__index & 15];
62 }
63 
64 static inline __ATTRS_o_ai unsigned char
65 vec_extract(vector bool char __vec, int __index) {
66  return __vec[__index & 15];
67 }
68 
69 static inline __ATTRS_o_ai unsigned char
70 vec_extract(vector unsigned char __vec, int __index) {
71  return __vec[__index & 15];
72 }
73 
74 static inline __ATTRS_o_ai signed short
75 vec_extract(vector signed short __vec, int __index) {
76  return __vec[__index & 7];
77 }
78 
79 static inline __ATTRS_o_ai unsigned short
80 vec_extract(vector bool short __vec, int __index) {
81  return __vec[__index & 7];
82 }
83 
84 static inline __ATTRS_o_ai unsigned short
85 vec_extract(vector unsigned short __vec, int __index) {
86  return __vec[__index & 7];
87 }
88 
89 static inline __ATTRS_o_ai signed int
90 vec_extract(vector signed int __vec, int __index) {
91  return __vec[__index & 3];
92 }
93 
94 static inline __ATTRS_o_ai unsigned int
95 vec_extract(vector bool int __vec, int __index) {
96  return __vec[__index & 3];
97 }
98 
99 static inline __ATTRS_o_ai unsigned int
100 vec_extract(vector unsigned int __vec, int __index) {
101  return __vec[__index & 3];
102 }
103 
104 static inline __ATTRS_o_ai signed long long
105 vec_extract(vector signed long long __vec, int __index) {
106  return __vec[__index & 1];
107 }
108 
109 static inline __ATTRS_o_ai unsigned long long
110 vec_extract(vector bool long long __vec, int __index) {
111  return __vec[__index & 1];
112 }
113 
114 static inline __ATTRS_o_ai unsigned long long
115 vec_extract(vector unsigned long long __vec, int __index) {
116  return __vec[__index & 1];
117 }
118 
119 #if __ARCH__ >= 12
120 static inline __ATTRS_o_ai float
121 vec_extract(vector float __vec, int __index) {
122  return __vec[__index & 3];
123 }
124 #endif
125 
126 static inline __ATTRS_o_ai double
127 vec_extract(vector double __vec, int __index) {
128  return __vec[__index & 1];
129 }
130 
131 /*-- vec_insert -------------------------------------------------------------*/
132 
133 static inline __ATTRS_o_ai vector signed char
134 vec_insert(signed char __scalar, vector signed char __vec, int __index) {
135  __vec[__index & 15] = __scalar;
136  return __vec;
137 }
138 
139 // This prototype is deprecated.
140 static inline __ATTRS_o_ai vector unsigned char
141 vec_insert(unsigned char __scalar, vector bool char __vec, int __index) {
142  vector unsigned char __newvec = (vector unsigned char)__vec;
143  __newvec[__index & 15] = (unsigned char)__scalar;
144  return __newvec;
145 }
146 
147 static inline __ATTRS_o_ai vector unsigned char
148 vec_insert(unsigned char __scalar, vector unsigned char __vec, int __index) {
149  __vec[__index & 15] = __scalar;
150  return __vec;
151 }
152 
153 static inline __ATTRS_o_ai vector signed short
154 vec_insert(signed short __scalar, vector signed short __vec, int __index) {
155  __vec[__index & 7] = __scalar;
156  return __vec;
157 }
158 
159 // This prototype is deprecated.
160 static inline __ATTRS_o_ai vector unsigned short
161 vec_insert(unsigned short __scalar, vector bool short __vec, int __index) {
162  vector unsigned short __newvec = (vector unsigned short)__vec;
163  __newvec[__index & 7] = (unsigned short)__scalar;
164  return __newvec;
165 }
166 
167 static inline __ATTRS_o_ai vector unsigned short
168 vec_insert(unsigned short __scalar, vector unsigned short __vec, int __index) {
169  __vec[__index & 7] = __scalar;
170  return __vec;
171 }
172 
173 static inline __ATTRS_o_ai vector signed int
174 vec_insert(signed int __scalar, vector signed int __vec, int __index) {
175  __vec[__index & 3] = __scalar;
176  return __vec;
177 }
178 
179 // This prototype is deprecated.
180 static inline __ATTRS_o_ai vector unsigned int
181 vec_insert(unsigned int __scalar, vector bool int __vec, int __index) {
182  vector unsigned int __newvec = (vector unsigned int)__vec;
183  __newvec[__index & 3] = __scalar;
184  return __newvec;
185 }
186 
187 static inline __ATTRS_o_ai vector unsigned int
188 vec_insert(unsigned int __scalar, vector unsigned int __vec, int __index) {
189  __vec[__index & 3] = __scalar;
190  return __vec;
191 }
192 
193 static inline __ATTRS_o_ai vector signed long long
194 vec_insert(signed long long __scalar, vector signed long long __vec,
195  int __index) {
196  __vec[__index & 1] = __scalar;
197  return __vec;
198 }
199 
200 // This prototype is deprecated.
201 static inline __ATTRS_o_ai vector unsigned long long
202 vec_insert(unsigned long long __scalar, vector bool long long __vec,
203  int __index) {
204  vector unsigned long long __newvec = (vector unsigned long long)__vec;
205  __newvec[__index & 1] = __scalar;
206  return __newvec;
207 }
208 
209 static inline __ATTRS_o_ai vector unsigned long long
210 vec_insert(unsigned long long __scalar, vector unsigned long long __vec,
211  int __index) {
212  __vec[__index & 1] = __scalar;
213  return __vec;
214 }
215 
216 #if __ARCH__ >= 12
217 static inline __ATTRS_o_ai vector float
218 vec_insert(float __scalar, vector float __vec, int __index) {
219  __vec[__index & 1] = __scalar;
220  return __vec;
221 }
222 #endif
223 
224 static inline __ATTRS_o_ai vector double
225 vec_insert(double __scalar, vector double __vec, int __index) {
226  __vec[__index & 1] = __scalar;
227  return __vec;
228 }
229 
230 /*-- vec_promote ------------------------------------------------------------*/
231 
232 static inline __ATTRS_o_ai vector signed char
233 vec_promote(signed char __scalar, int __index) {
234  const vector signed char __zero = (vector signed char)0;
235  vector signed char __vec = __builtin_shufflevector(__zero, __zero,
236  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1);
237  __vec[__index & 15] = __scalar;
238  return __vec;
239 }
240 
241 static inline __ATTRS_o_ai vector unsigned char
242 vec_promote(unsigned char __scalar, int __index) {
243  const vector unsigned char __zero = (vector unsigned char)0;
244  vector unsigned char __vec = __builtin_shufflevector(__zero, __zero,
245  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1);
246  __vec[__index & 15] = __scalar;
247  return __vec;
248 }
249 
250 static inline __ATTRS_o_ai vector signed short
251 vec_promote(signed short __scalar, int __index) {
252  const vector signed short __zero = (vector signed short)0;
253  vector signed short __vec = __builtin_shufflevector(__zero, __zero,
254  -1, -1, -1, -1, -1, -1, -1, -1);
255  __vec[__index & 7] = __scalar;
256  return __vec;
257 }
258 
259 static inline __ATTRS_o_ai vector unsigned short
260 vec_promote(unsigned short __scalar, int __index) {
261  const vector unsigned short __zero = (vector unsigned short)0;
262  vector unsigned short __vec = __builtin_shufflevector(__zero, __zero,
263  -1, -1, -1, -1, -1, -1, -1, -1);
264  __vec[__index & 7] = __scalar;
265  return __vec;
266 }
267 
268 static inline __ATTRS_o_ai vector signed int
269 vec_promote(signed int __scalar, int __index) {
270  const vector signed int __zero = (vector signed int)0;
271  vector signed int __vec = __builtin_shufflevector(__zero, __zero,
272  -1, -1, -1, -1);
273  __vec[__index & 3] = __scalar;
274  return __vec;
275 }
276 
277 static inline __ATTRS_o_ai vector unsigned int
278 vec_promote(unsigned int __scalar, int __index) {
279  const vector unsigned int __zero = (vector unsigned int)0;
280  vector unsigned int __vec = __builtin_shufflevector(__zero, __zero,
281  -1, -1, -1, -1);
282  __vec[__index & 3] = __scalar;
283  return __vec;
284 }
285 
286 static inline __ATTRS_o_ai vector signed long long
287 vec_promote(signed long long __scalar, int __index) {
288  const vector signed long long __zero = (vector signed long long)0;
289  vector signed long long __vec = __builtin_shufflevector(__zero, __zero,
290  -1, -1);
291  __vec[__index & 1] = __scalar;
292  return __vec;
293 }
294 
295 static inline __ATTRS_o_ai vector unsigned long long
296 vec_promote(unsigned long long __scalar, int __index) {
297  const vector unsigned long long __zero = (vector unsigned long long)0;
298  vector unsigned long long __vec = __builtin_shufflevector(__zero, __zero,
299  -1, -1);
300  __vec[__index & 1] = __scalar;
301  return __vec;
302 }
303 
304 #if __ARCH__ >= 12
305 static inline __ATTRS_o_ai vector float
306 vec_promote(float __scalar, int __index) {
307  const vector float __zero = (vector float)0;
308  vector float __vec = __builtin_shufflevector(__zero, __zero, -1, -1, -1, -1);
309  __vec[__index & 3] = __scalar;
310  return __vec;
311 }
312 #endif
313 
314 static inline __ATTRS_o_ai vector double
315 vec_promote(double __scalar, int __index) {
316  const vector double __zero = (vector double)0;
317  vector double __vec = __builtin_shufflevector(__zero, __zero, -1, -1);
318  __vec[__index & 1] = __scalar;
319  return __vec;
320 }
321 
322 /*-- vec_insert_and_zero ----------------------------------------------------*/
323 
324 static inline __ATTRS_o_ai vector signed char
325 vec_insert_and_zero(const signed char *__ptr) {
326  vector signed char __vec = (vector signed char)0;
327  __vec[7] = *__ptr;
328  return __vec;
329 }
330 
331 static inline __ATTRS_o_ai vector unsigned char
332 vec_insert_and_zero(const unsigned char *__ptr) {
333  vector unsigned char __vec = (vector unsigned char)0;
334  __vec[7] = *__ptr;
335  return __vec;
336 }
337 
338 static inline __ATTRS_o_ai vector signed short
339 vec_insert_and_zero(const signed short *__ptr) {
340  vector signed short __vec = (vector signed short)0;
341  __vec[3] = *__ptr;
342  return __vec;
343 }
344 
345 static inline __ATTRS_o_ai vector unsigned short
346 vec_insert_and_zero(const unsigned short *__ptr) {
347  vector unsigned short __vec = (vector unsigned short)0;
348  __vec[3] = *__ptr;
349  return __vec;
350 }
351 
352 static inline __ATTRS_o_ai vector signed int
353 vec_insert_and_zero(const signed int *__ptr) {
354  vector signed int __vec = (vector signed int)0;
355  __vec[1] = *__ptr;
356  return __vec;
357 }
358 
359 static inline __ATTRS_o_ai vector unsigned int
360 vec_insert_and_zero(const unsigned int *__ptr) {
361  vector unsigned int __vec = (vector unsigned int)0;
362  __vec[1] = *__ptr;
363  return __vec;
364 }
365 
366 static inline __ATTRS_o_ai vector signed long long
367 vec_insert_and_zero(const signed long long *__ptr) {
368  vector signed long long __vec = (vector signed long long)0;
369  __vec[0] = *__ptr;
370  return __vec;
371 }
372 
373 static inline __ATTRS_o_ai vector unsigned long long
374 vec_insert_and_zero(const unsigned long long *__ptr) {
375  vector unsigned long long __vec = (vector unsigned long long)0;
376  __vec[0] = *__ptr;
377  return __vec;
378 }
379 
380 #if __ARCH__ >= 12
381 static inline __ATTRS_o_ai vector float
382 vec_insert_and_zero(const float *__ptr) {
383  vector float __vec = (vector float)0;
384  __vec[0] = *__ptr;
385  return __vec;
386 }
387 #endif
388 
389 static inline __ATTRS_o_ai vector double
390 vec_insert_and_zero(const double *__ptr) {
391  vector double __vec = (vector double)0;
392  __vec[0] = *__ptr;
393  return __vec;
394 }
395 
396 /*-- vec_perm ---------------------------------------------------------------*/
397 
398 static inline __ATTRS_o_ai vector signed char
399 vec_perm(vector signed char __a, vector signed char __b,
400  vector unsigned char __c) {
401  return (vector signed char)__builtin_s390_vperm(
402  (vector unsigned char)__a, (vector unsigned char)__b, __c);
403 }
404 
405 static inline __ATTRS_o_ai vector unsigned char
406 vec_perm(vector unsigned char __a, vector unsigned char __b,
407  vector unsigned char __c) {
408  return (vector unsigned char)__builtin_s390_vperm(
409  (vector unsigned char)__a, (vector unsigned char)__b, __c);
410 }
411 
412 static inline __ATTRS_o_ai vector bool char
413 vec_perm(vector bool char __a, vector bool char __b,
414  vector unsigned char __c) {
415  return (vector bool char)__builtin_s390_vperm(
416  (vector unsigned char)__a, (vector unsigned char)__b, __c);
417 }
418 
419 static inline __ATTRS_o_ai vector signed short
420 vec_perm(vector signed short __a, vector signed short __b,
421  vector unsigned char __c) {
422  return (vector signed short)__builtin_s390_vperm(
423  (vector unsigned char)__a, (vector unsigned char)__b, __c);
424 }
425 
426 static inline __ATTRS_o_ai vector unsigned short
427 vec_perm(vector unsigned short __a, vector unsigned short __b,
428  vector unsigned char __c) {
429  return (vector unsigned short)__builtin_s390_vperm(
430  (vector unsigned char)__a, (vector unsigned char)__b, __c);
431 }
432 
433 static inline __ATTRS_o_ai vector bool short
434 vec_perm(vector bool short __a, vector bool short __b,
435  vector unsigned char __c) {
436  return (vector bool short)__builtin_s390_vperm(
437  (vector unsigned char)__a, (vector unsigned char)__b, __c);
438 }
439 
440 static inline __ATTRS_o_ai vector signed int
441 vec_perm(vector signed int __a, vector signed int __b,
442  vector unsigned char __c) {
443  return (vector signed int)__builtin_s390_vperm(
444  (vector unsigned char)__a, (vector unsigned char)__b, __c);
445 }
446 
447 static inline __ATTRS_o_ai vector unsigned int
448 vec_perm(vector unsigned int __a, vector unsigned int __b,
449  vector unsigned char __c) {
450  return (vector unsigned int)__builtin_s390_vperm(
451  (vector unsigned char)__a, (vector unsigned char)__b, __c);
452 }
453 
454 static inline __ATTRS_o_ai vector bool int
455 vec_perm(vector bool int __a, vector bool int __b,
456  vector unsigned char __c) {
457  return (vector bool int)__builtin_s390_vperm(
458  (vector unsigned char)__a, (vector unsigned char)__b, __c);
459 }
460 
461 static inline __ATTRS_o_ai vector signed long long
462 vec_perm(vector signed long long __a, vector signed long long __b,
463  vector unsigned char __c) {
464  return (vector signed long long)__builtin_s390_vperm(
465  (vector unsigned char)__a, (vector unsigned char)__b, __c);
466 }
467 
468 static inline __ATTRS_o_ai vector unsigned long long
469 vec_perm(vector unsigned long long __a, vector unsigned long long __b,
470  vector unsigned char __c) {
471  return (vector unsigned long long)__builtin_s390_vperm(
472  (vector unsigned char)__a, (vector unsigned char)__b, __c);
473 }
474 
475 static inline __ATTRS_o_ai vector bool long long
476 vec_perm(vector bool long long __a, vector bool long long __b,
477  vector unsigned char __c) {
478  return (vector bool long long)__builtin_s390_vperm(
479  (vector unsigned char)__a, (vector unsigned char)__b, __c);
480 }
481 
482 #if __ARCH__ >= 12
483 static inline __ATTRS_o_ai vector float
484 vec_perm(vector float __a, vector float __b,
485  vector unsigned char __c) {
486  return (vector float)__builtin_s390_vperm(
487  (vector unsigned char)__a, (vector unsigned char)__b, __c);
488 }
489 #endif
490 
491 static inline __ATTRS_o_ai vector double
492 vec_perm(vector double __a, vector double __b,
493  vector unsigned char __c) {
494  return (vector double)__builtin_s390_vperm(
495  (vector unsigned char)__a, (vector unsigned char)__b, __c);
496 }
497 
498 /*-- vec_permi --------------------------------------------------------------*/
499 
500 // This prototype is deprecated.
501 extern __ATTRS_o vector signed long long
502 vec_permi(vector signed long long __a, vector signed long long __b, int __c)
503  __constant_range(__c, 0, 3);
504 
505 // This prototype is deprecated.
506 extern __ATTRS_o vector unsigned long long
507 vec_permi(vector unsigned long long __a, vector unsigned long long __b, int __c)
508  __constant_range(__c, 0, 3);
509 
510 // This prototype is deprecated.
511 extern __ATTRS_o vector bool long long
512 vec_permi(vector bool long long __a, vector bool long long __b, int __c)
513  __constant_range(__c, 0, 3);
514 
515 // This prototype is deprecated.
516 extern __ATTRS_o vector double
517 vec_permi(vector double __a, vector double __b, int __c)
518  __constant_range(__c, 0, 3);
519 
520 #define vec_permi(X, Y, Z) ((__typeof__((vec_permi)((X), (Y), (Z)))) \
521  __builtin_s390_vpdi((vector unsigned long long)(X), \
522  (vector unsigned long long)(Y), \
523  (((Z) & 2) << 1) | ((Z) & 1)))
524 
525 /*-- vec_bperm_u128 ---------------------------------------------------------*/
526 
527 #if __ARCH__ >= 12
528 static inline __ATTRS_ai vector unsigned long long
529 vec_bperm_u128(vector unsigned char __a, vector unsigned char __b) {
530  return __builtin_s390_vbperm(__a, __b);
531 }
532 #endif
533 
534 /*-- vec_sel ----------------------------------------------------------------*/
535 
536 static inline __ATTRS_o_ai vector signed char
537 vec_sel(vector signed char __a, vector signed char __b,
538  vector unsigned char __c) {
539  return ((vector signed char)__c & __b) | (~(vector signed char)__c & __a);
540 }
541 
542 static inline __ATTRS_o_ai vector signed char
543 vec_sel(vector signed char __a, vector signed char __b, vector bool char __c) {
544  return ((vector signed char)__c & __b) | (~(vector signed char)__c & __a);
545 }
546 
547 static inline __ATTRS_o_ai vector bool char
548 vec_sel(vector bool char __a, vector bool char __b, vector unsigned char __c) {
549  return ((vector bool char)__c & __b) | (~(vector bool char)__c & __a);
550 }
551 
552 static inline __ATTRS_o_ai vector bool char
553 vec_sel(vector bool char __a, vector bool char __b, vector bool char __c) {
554  return (__c & __b) | (~__c & __a);
555 }
556 
557 static inline __ATTRS_o_ai vector unsigned char
558 vec_sel(vector unsigned char __a, vector unsigned char __b,
559  vector unsigned char __c) {
560  return (__c & __b) | (~__c & __a);
561 }
562 
563 static inline __ATTRS_o_ai vector unsigned char
564 vec_sel(vector unsigned char __a, vector unsigned char __b,
565  vector bool char __c) {
566  return ((vector unsigned char)__c & __b) | (~(vector unsigned char)__c & __a);
567 }
568 
569 static inline __ATTRS_o_ai vector signed short
570 vec_sel(vector signed short __a, vector signed short __b,
571  vector unsigned short __c) {
572  return ((vector signed short)__c & __b) | (~(vector signed short)__c & __a);
573 }
574 
575 static inline __ATTRS_o_ai vector signed short
576 vec_sel(vector signed short __a, vector signed short __b,
577  vector bool short __c) {
578  return ((vector signed short)__c & __b) | (~(vector signed short)__c & __a);
579 }
580 
581 static inline __ATTRS_o_ai vector bool short
582 vec_sel(vector bool short __a, vector bool short __b,
583  vector unsigned short __c) {
584  return ((vector bool short)__c & __b) | (~(vector bool short)__c & __a);
585 }
586 
587 static inline __ATTRS_o_ai vector bool short
588 vec_sel(vector bool short __a, vector bool short __b, vector bool short __c) {
589  return (__c & __b) | (~__c & __a);
590 }
591 
592 static inline __ATTRS_o_ai vector unsigned short
593 vec_sel(vector unsigned short __a, vector unsigned short __b,
594  vector unsigned short __c) {
595  return (__c & __b) | (~__c & __a);
596 }
597 
598 static inline __ATTRS_o_ai vector unsigned short
599 vec_sel(vector unsigned short __a, vector unsigned short __b,
600  vector bool short __c) {
601  return (((vector unsigned short)__c & __b) |
602  (~(vector unsigned short)__c & __a));
603 }
604 
605 static inline __ATTRS_o_ai vector signed int
606 vec_sel(vector signed int __a, vector signed int __b,
607  vector unsigned int __c) {
608  return ((vector signed int)__c & __b) | (~(vector signed int)__c & __a);
609 }
610 
611 static inline __ATTRS_o_ai vector signed int
612 vec_sel(vector signed int __a, vector signed int __b, vector bool int __c) {
613  return ((vector signed int)__c & __b) | (~(vector signed int)__c & __a);
614 }
615 
616 static inline __ATTRS_o_ai vector bool int
617 vec_sel(vector bool int __a, vector bool int __b, vector unsigned int __c) {
618  return ((vector bool int)__c & __b) | (~(vector bool int)__c & __a);
619 }
620 
621 static inline __ATTRS_o_ai vector bool int
622 vec_sel(vector bool int __a, vector bool int __b, vector bool int __c) {
623  return (__c & __b) | (~__c & __a);
624 }
625 
626 static inline __ATTRS_o_ai vector unsigned int
627 vec_sel(vector unsigned int __a, vector unsigned int __b,
628  vector unsigned int __c) {
629  return (__c & __b) | (~__c & __a);
630 }
631 
632 static inline __ATTRS_o_ai vector unsigned int
633 vec_sel(vector unsigned int __a, vector unsigned int __b, vector bool int __c) {
634  return ((vector unsigned int)__c & __b) | (~(vector unsigned int)__c & __a);
635 }
636 
637 static inline __ATTRS_o_ai vector signed long long
638 vec_sel(vector signed long long __a, vector signed long long __b,
639  vector unsigned long long __c) {
640  return (((vector signed long long)__c & __b) |
641  (~(vector signed long long)__c & __a));
642 }
643 
644 static inline __ATTRS_o_ai vector signed long long
645 vec_sel(vector signed long long __a, vector signed long long __b,
646  vector bool long long __c) {
647  return (((vector signed long long)__c & __b) |
648  (~(vector signed long long)__c & __a));
649 }
650 
651 static inline __ATTRS_o_ai vector bool long long
652 vec_sel(vector bool long long __a, vector bool long long __b,
653  vector unsigned long long __c) {
654  return (((vector bool long long)__c & __b) |
655  (~(vector bool long long)__c & __a));
656 }
657 
658 static inline __ATTRS_o_ai vector bool long long
659 vec_sel(vector bool long long __a, vector bool long long __b,
660  vector bool long long __c) {
661  return (__c & __b) | (~__c & __a);
662 }
663 
664 static inline __ATTRS_o_ai vector unsigned long long
665 vec_sel(vector unsigned long long __a, vector unsigned long long __b,
666  vector unsigned long long __c) {
667  return (__c & __b) | (~__c & __a);
668 }
669 
670 static inline __ATTRS_o_ai vector unsigned long long
671 vec_sel(vector unsigned long long __a, vector unsigned long long __b,
672  vector bool long long __c) {
673  return (((vector unsigned long long)__c & __b) |
674  (~(vector unsigned long long)__c & __a));
675 }
676 
677 #if __ARCH__ >= 12
678 static inline __ATTRS_o_ai vector float
679 vec_sel(vector float __a, vector float __b, vector unsigned int __c) {
680  return (vector float)((__c & (vector unsigned int)__b) |
681  (~__c & (vector unsigned int)__a));
682 }
683 
684 static inline __ATTRS_o_ai vector float
685 vec_sel(vector float __a, vector float __b, vector bool int __c) {
686  vector unsigned int __ac = (vector unsigned int)__a;
687  vector unsigned int __bc = (vector unsigned int)__b;
688  vector unsigned int __cc = (vector unsigned int)__c;
689  return (vector float)((__cc & __bc) | (~__cc & __ac));
690 }
691 #endif
692 
693 static inline __ATTRS_o_ai vector double
694 vec_sel(vector double __a, vector double __b, vector unsigned long long __c) {
695  return (vector double)((__c & (vector unsigned long long)__b) |
696  (~__c & (vector unsigned long long)__a));
697 }
698 
699 static inline __ATTRS_o_ai vector double
700 vec_sel(vector double __a, vector double __b, vector bool long long __c) {
701  vector unsigned long long __ac = (vector unsigned long long)__a;
702  vector unsigned long long __bc = (vector unsigned long long)__b;
703  vector unsigned long long __cc = (vector unsigned long long)__c;
704  return (vector double)((__cc & __bc) | (~__cc & __ac));
705 }
706 
707 /*-- vec_gather_element -----------------------------------------------------*/
708 
709 static inline __ATTRS_o_ai vector signed int
710 vec_gather_element(vector signed int __vec, vector unsigned int __offset,
711  const signed int *__ptr, int __index)
712  __constant_range(__index, 0, 3) {
713  __vec[__index] = *(const signed int *)(
714  (__INTPTR_TYPE__)__ptr + (__INTPTR_TYPE__)__offset[__index]);
715  return __vec;
716 }
717 
718 static inline __ATTRS_o_ai vector bool int
719 vec_gather_element(vector bool int __vec, vector unsigned int __offset,
720  const unsigned int *__ptr, int __index)
721  __constant_range(__index, 0, 3) {
722  __vec[__index] = *(const unsigned int *)(
723  (__INTPTR_TYPE__)__ptr + (__INTPTR_TYPE__)__offset[__index]);
724  return __vec;
725 }
726 
727 static inline __ATTRS_o_ai vector unsigned int
728 vec_gather_element(vector unsigned int __vec, vector unsigned int __offset,
729  const unsigned int *__ptr, int __index)
730  __constant_range(__index, 0, 3) {
731  __vec[__index] = *(const unsigned int *)(
732  (__INTPTR_TYPE__)__ptr + (__INTPTR_TYPE__)__offset[__index]);
733  return __vec;
734 }
735 
736 static inline __ATTRS_o_ai vector signed long long
737 vec_gather_element(vector signed long long __vec,
738  vector unsigned long long __offset,
739  const signed long long *__ptr, int __index)
740  __constant_range(__index, 0, 1) {
741  __vec[__index] = *(const signed long long *)(
742  (__INTPTR_TYPE__)__ptr + (__INTPTR_TYPE__)__offset[__index]);
743  return __vec;
744 }
745 
746 static inline __ATTRS_o_ai vector bool long long
747 vec_gather_element(vector bool long long __vec,
748  vector unsigned long long __offset,
749  const unsigned long long *__ptr, int __index)
750  __constant_range(__index, 0, 1) {
751  __vec[__index] = *(const unsigned long long *)(
752  (__INTPTR_TYPE__)__ptr + (__INTPTR_TYPE__)__offset[__index]);
753  return __vec;
754 }
755 
756 static inline __ATTRS_o_ai vector unsigned long long
757 vec_gather_element(vector unsigned long long __vec,
758  vector unsigned long long __offset,
759  const unsigned long long *__ptr, int __index)
760  __constant_range(__index, 0, 1) {
761  __vec[__index] = *(const unsigned long long *)(
762  (__INTPTR_TYPE__)__ptr + (__INTPTR_TYPE__)__offset[__index]);
763  return __vec;
764 }
765 
766 #if __ARCH__ >= 12
767 static inline __ATTRS_o_ai vector float
768 vec_gather_element(vector float __vec, vector unsigned int __offset,
769  const float *__ptr, int __index)
770  __constant_range(__index, 0, 3) {
771  __vec[__index] = *(const float *)(
772  (__INTPTR_TYPE__)__ptr + (__INTPTR_TYPE__)__offset[__index]);
773  return __vec;
774 }
775 #endif
776 
777 static inline __ATTRS_o_ai vector double
778 vec_gather_element(vector double __vec, vector unsigned long long __offset,
779  const double *__ptr, int __index)
780  __constant_range(__index, 0, 1) {
781  __vec[__index] = *(const double *)(
782  (__INTPTR_TYPE__)__ptr + (__INTPTR_TYPE__)__offset[__index]);
783  return __vec;
784 }
785 
786 /*-- vec_scatter_element ----------------------------------------------------*/
787 
788 static inline __ATTRS_o_ai void
789 vec_scatter_element(vector signed int __vec, vector unsigned int __offset,
790  signed int *__ptr, int __index)
791  __constant_range(__index, 0, 3) {
792  *(signed int *)((__INTPTR_TYPE__)__ptr + __offset[__index]) =
793  __vec[__index];
794 }
795 
796 static inline __ATTRS_o_ai void
797 vec_scatter_element(vector bool int __vec, vector unsigned int __offset,
798  unsigned int *__ptr, int __index)
799  __constant_range(__index, 0, 3) {
800  *(unsigned int *)((__INTPTR_TYPE__)__ptr + __offset[__index]) =
801  __vec[__index];
802 }
803 
804 static inline __ATTRS_o_ai void
805 vec_scatter_element(vector unsigned int __vec, vector unsigned int __offset,
806  unsigned int *__ptr, int __index)
807  __constant_range(__index, 0, 3) {
808  *(unsigned int *)((__INTPTR_TYPE__)__ptr + __offset[__index]) =
809  __vec[__index];
810 }
811 
812 static inline __ATTRS_o_ai void
813 vec_scatter_element(vector signed long long __vec,
814  vector unsigned long long __offset,
815  signed long long *__ptr, int __index)
816  __constant_range(__index, 0, 1) {
817  *(signed long long *)((__INTPTR_TYPE__)__ptr + __offset[__index]) =
818  __vec[__index];
819 }
820 
821 static inline __ATTRS_o_ai void
822 vec_scatter_element(vector bool long long __vec,
823  vector unsigned long long __offset,
824  unsigned long long *__ptr, int __index)
825  __constant_range(__index, 0, 1) {
826  *(unsigned long long *)((__INTPTR_TYPE__)__ptr + __offset[__index]) =
827  __vec[__index];
828 }
829 
830 static inline __ATTRS_o_ai void
831 vec_scatter_element(vector unsigned long long __vec,
832  vector unsigned long long __offset,
833  unsigned long long *__ptr, int __index)
834  __constant_range(__index, 0, 1) {
835  *(unsigned long long *)((__INTPTR_TYPE__)__ptr + __offset[__index]) =
836  __vec[__index];
837 }
838 
839 #if __ARCH__ >= 12
840 static inline __ATTRS_o_ai void
841 vec_scatter_element(vector float __vec, vector unsigned int __offset,
842  float *__ptr, int __index)
843  __constant_range(__index, 0, 3) {
844  *(float *)((__INTPTR_TYPE__)__ptr + __offset[__index]) =
845  __vec[__index];
846 }
847 #endif
848 
849 static inline __ATTRS_o_ai void
850 vec_scatter_element(vector double __vec, vector unsigned long long __offset,
851  double *__ptr, int __index)
852  __constant_range(__index, 0, 1) {
853  *(double *)((__INTPTR_TYPE__)__ptr + __offset[__index]) =
854  __vec[__index];
855 }
856 
857 /*-- vec_xl -----------------------------------------------------------------*/
858 
859 static inline __ATTRS_o_ai vector signed char
860 vec_xl(long __offset, const signed char *__ptr) {
861  return *(const vector signed char *)((__INTPTR_TYPE__)__ptr + __offset);
862 }
863 
864 static inline __ATTRS_o_ai vector unsigned char
865 vec_xl(long __offset, const unsigned char *__ptr) {
866  return *(const vector unsigned char *)((__INTPTR_TYPE__)__ptr + __offset);
867 }
868 
869 static inline __ATTRS_o_ai vector signed short
870 vec_xl(long __offset, const signed short *__ptr) {
871  return *(const vector signed short *)((__INTPTR_TYPE__)__ptr + __offset);
872 }
873 
874 static inline __ATTRS_o_ai vector unsigned short
875 vec_xl(long __offset, const unsigned short *__ptr) {
876  return *(const vector unsigned short *)((__INTPTR_TYPE__)__ptr + __offset);
877 }
878 
879 static inline __ATTRS_o_ai vector signed int
880 vec_xl(long __offset, const signed int *__ptr) {
881  return *(const vector signed int *)((__INTPTR_TYPE__)__ptr + __offset);
882 }
883 
884 static inline __ATTRS_o_ai vector unsigned int
885 vec_xl(long __offset, const unsigned int *__ptr) {
886  return *(const vector unsigned int *)((__INTPTR_TYPE__)__ptr + __offset);
887 }
888 
889 static inline __ATTRS_o_ai vector signed long long
890 vec_xl(long __offset, const signed long long *__ptr) {
891  return *(const vector signed long long *)((__INTPTR_TYPE__)__ptr + __offset);
892 }
893 
894 static inline __ATTRS_o_ai vector unsigned long long
895 vec_xl(long __offset, const unsigned long long *__ptr) {
896  return *(const vector unsigned long long *)((__INTPTR_TYPE__)__ptr + __offset);
897 }
898 
899 #if __ARCH__ >= 12
900 static inline __ATTRS_o_ai vector float
901 vec_xl(long __offset, const float *__ptr) {
902  return *(const vector float *)((__INTPTR_TYPE__)__ptr + __offset);
903 }
904 #endif
905 
906 static inline __ATTRS_o_ai vector double
907 vec_xl(long __offset, const double *__ptr) {
908  return *(const vector double *)((__INTPTR_TYPE__)__ptr + __offset);
909 }
910 
911 /*-- vec_xld2 ---------------------------------------------------------------*/
912 
913 // This prototype is deprecated.
914 static inline __ATTRS_o_ai vector signed char
915 vec_xld2(long __offset, const signed char *__ptr) {
916  return *(const vector signed char *)((__INTPTR_TYPE__)__ptr + __offset);
917 }
918 
919 // This prototype is deprecated.
920 static inline __ATTRS_o_ai vector unsigned char
921 vec_xld2(long __offset, const unsigned char *__ptr) {
922  return *(const vector unsigned char *)((__INTPTR_TYPE__)__ptr + __offset);
923 }
924 
925 // This prototype is deprecated.
926 static inline __ATTRS_o_ai vector signed short
927 vec_xld2(long __offset, const signed short *__ptr) {
928  return *(const vector signed short *)((__INTPTR_TYPE__)__ptr + __offset);
929 }
930 
931 // This prototype is deprecated.
932 static inline __ATTRS_o_ai vector unsigned short
933 vec_xld2(long __offset, const unsigned short *__ptr) {
934  return *(const vector unsigned short *)((__INTPTR_TYPE__)__ptr + __offset);
935 }
936 
937 // This prototype is deprecated.
938 static inline __ATTRS_o_ai vector signed int
939 vec_xld2(long __offset, const signed int *__ptr) {
940  return *(const vector signed int *)((__INTPTR_TYPE__)__ptr + __offset);
941 }
942 
943 // This prototype is deprecated.
944 static inline __ATTRS_o_ai vector unsigned int
945 vec_xld2(long __offset, const unsigned int *__ptr) {
946  return *(const vector unsigned int *)((__INTPTR_TYPE__)__ptr + __offset);
947 }
948 
949 // This prototype is deprecated.
950 static inline __ATTRS_o_ai vector signed long long
951 vec_xld2(long __offset, const signed long long *__ptr) {
952  return *(const vector signed long long *)((__INTPTR_TYPE__)__ptr + __offset);
953 }
954 
955 // This prototype is deprecated.
956 static inline __ATTRS_o_ai vector unsigned long long
957 vec_xld2(long __offset, const unsigned long long *__ptr) {
958  return *(const vector unsigned long long *)((__INTPTR_TYPE__)__ptr + __offset);
959 }
960 
961 // This prototype is deprecated.
962 static inline __ATTRS_o_ai vector double
963 vec_xld2(long __offset, const double *__ptr) {
964  return *(const vector double *)((__INTPTR_TYPE__)__ptr + __offset);
965 }
966 
967 /*-- vec_xlw4 ---------------------------------------------------------------*/
968 
969 // This prototype is deprecated.
970 static inline __ATTRS_o_ai vector signed char
971 vec_xlw4(long __offset, const signed char *__ptr) {
972  return *(const vector signed char *)((__INTPTR_TYPE__)__ptr + __offset);
973 }
974 
975 // This prototype is deprecated.
976 static inline __ATTRS_o_ai vector unsigned char
977 vec_xlw4(long __offset, const unsigned char *__ptr) {
978  return *(const vector unsigned char *)((__INTPTR_TYPE__)__ptr + __offset);
979 }
980 
981 // This prototype is deprecated.
982 static inline __ATTRS_o_ai vector signed short
983 vec_xlw4(long __offset, const signed short *__ptr) {
984  return *(const vector signed short *)((__INTPTR_TYPE__)__ptr + __offset);
985 }
986 
987 // This prototype is deprecated.
988 static inline __ATTRS_o_ai vector unsigned short
989 vec_xlw4(long __offset, const unsigned short *__ptr) {
990  return *(const vector unsigned short *)((__INTPTR_TYPE__)__ptr + __offset);
991 }
992 
993 // This prototype is deprecated.
994 static inline __ATTRS_o_ai vector signed int
995 vec_xlw4(long __offset, const signed int *__ptr) {
996  return *(const vector signed int *)((__INTPTR_TYPE__)__ptr + __offset);
997 }
998 
999 // This prototype is deprecated.
1000 static inline __ATTRS_o_ai vector unsigned int
1001 vec_xlw4(long __offset, const unsigned int *__ptr) {
1002  return *(const vector unsigned int *)((__INTPTR_TYPE__)__ptr + __offset);
1003 }
1004 
1005 /*-- vec_xst ----------------------------------------------------------------*/
1006 
1007 static inline __ATTRS_o_ai void
1008 vec_xst(vector signed char __vec, long __offset, signed char *__ptr) {
1009  *(vector signed char *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1010 }
1011 
1012 static inline __ATTRS_o_ai void
1013 vec_xst(vector unsigned char __vec, long __offset, unsigned char *__ptr) {
1014  *(vector unsigned char *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1015 }
1016 
1017 static inline __ATTRS_o_ai void
1018 vec_xst(vector signed short __vec, long __offset, signed short *__ptr) {
1019  *(vector signed short *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1020 }
1021 
1022 static inline __ATTRS_o_ai void
1023 vec_xst(vector unsigned short __vec, long __offset, unsigned short *__ptr) {
1024  *(vector unsigned short *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1025 }
1026 
1027 static inline __ATTRS_o_ai void
1028 vec_xst(vector signed int __vec, long __offset, signed int *__ptr) {
1029  *(vector signed int *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1030 }
1031 
1032 static inline __ATTRS_o_ai void
1033 vec_xst(vector unsigned int __vec, long __offset, unsigned int *__ptr) {
1034  *(vector unsigned int *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1035 }
1036 
1037 static inline __ATTRS_o_ai void
1038 vec_xst(vector signed long long __vec, long __offset,
1039  signed long long *__ptr) {
1040  *(vector signed long long *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1041 }
1042 
1043 static inline __ATTRS_o_ai void
1044 vec_xst(vector unsigned long long __vec, long __offset,
1045  unsigned long long *__ptr) {
1046  *(vector unsigned long long *)((__INTPTR_TYPE__)__ptr + __offset) =
1047  __vec;
1048 }
1049 
1050 #if __ARCH__ >= 12
1051 static inline __ATTRS_o_ai void
1052 vec_xst(vector float __vec, long __offset, float *__ptr) {
1053  *(vector float *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1054 }
1055 #endif
1056 
1057 static inline __ATTRS_o_ai void
1058 vec_xst(vector double __vec, long __offset, double *__ptr) {
1059  *(vector double *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1060 }
1061 
1062 /*-- vec_xstd2 --------------------------------------------------------------*/
1063 
1064 // This prototype is deprecated.
1065 static inline __ATTRS_o_ai void
1066 vec_xstd2(vector signed char __vec, long __offset, signed char *__ptr) {
1067  *(vector signed char *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1068 }
1069 
1070 // This prototype is deprecated.
1071 static inline __ATTRS_o_ai void
1072 vec_xstd2(vector unsigned char __vec, long __offset, unsigned char *__ptr) {
1073  *(vector unsigned char *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1074 }
1075 
1076 // This prototype is deprecated.
1077 static inline __ATTRS_o_ai void
1078 vec_xstd2(vector signed short __vec, long __offset, signed short *__ptr) {
1079  *(vector signed short *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1080 }
1081 
1082 // This prototype is deprecated.
1083 static inline __ATTRS_o_ai void
1084 vec_xstd2(vector unsigned short __vec, long __offset, unsigned short *__ptr) {
1085  *(vector unsigned short *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1086 }
1087 
1088 // This prototype is deprecated.
1089 static inline __ATTRS_o_ai void
1090 vec_xstd2(vector signed int __vec, long __offset, signed int *__ptr) {
1091  *(vector signed int *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1092 }
1093 
1094 // This prototype is deprecated.
1095 static inline __ATTRS_o_ai void
1096 vec_xstd2(vector unsigned int __vec, long __offset, unsigned int *__ptr) {
1097  *(vector unsigned int *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1098 }
1099 
1100 // This prototype is deprecated.
1101 static inline __ATTRS_o_ai void
1102 vec_xstd2(vector signed long long __vec, long __offset,
1103  signed long long *__ptr) {
1104  *(vector signed long long *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1105 }
1106 
1107 // This prototype is deprecated.
1108 static inline __ATTRS_o_ai void
1109 vec_xstd2(vector unsigned long long __vec, long __offset,
1110  unsigned long long *__ptr) {
1111  *(vector unsigned long long *)((__INTPTR_TYPE__)__ptr + __offset) =
1112  __vec;
1113 }
1114 
1115 // This prototype is deprecated.
1116 static inline __ATTRS_o_ai void
1117 vec_xstd2(vector double __vec, long __offset, double *__ptr) {
1118  *(vector double *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1119 }
1120 
1121 /*-- vec_xstw4 --------------------------------------------------------------*/
1122 
1123 // This prototype is deprecated.
1124 static inline __ATTRS_o_ai void
1125 vec_xstw4(vector signed char __vec, long __offset, signed char *__ptr) {
1126  *(vector signed char *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1127 }
1128 
1129 // This prototype is deprecated.
1130 static inline __ATTRS_o_ai void
1131 vec_xstw4(vector unsigned char __vec, long __offset, unsigned char *__ptr) {
1132  *(vector unsigned char *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1133 }
1134 
1135 // This prototype is deprecated.
1136 static inline __ATTRS_o_ai void
1137 vec_xstw4(vector signed short __vec, long __offset, signed short *__ptr) {
1138  *(vector signed short *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1139 }
1140 
1141 // This prototype is deprecated.
1142 static inline __ATTRS_o_ai void
1143 vec_xstw4(vector unsigned short __vec, long __offset, unsigned short *__ptr) {
1144  *(vector unsigned short *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1145 }
1146 
1147 // This prototype is deprecated.
1148 static inline __ATTRS_o_ai void
1149 vec_xstw4(vector signed int __vec, long __offset, signed int *__ptr) {
1150  *(vector signed int *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1151 }
1152 
1153 // This prototype is deprecated.
1154 static inline __ATTRS_o_ai void
1155 vec_xstw4(vector unsigned int __vec, long __offset, unsigned int *__ptr) {
1156  *(vector unsigned int *)((__INTPTR_TYPE__)__ptr + __offset) = __vec;
1157 }
1158 
1159 /*-- vec_load_bndry ---------------------------------------------------------*/
1160 
1161 extern __ATTRS_o vector signed char
1162 vec_load_bndry(const signed char *__ptr, unsigned short __len)
1163  __constant_pow2_range(__len, 64, 4096);
1164 
1165 extern __ATTRS_o vector unsigned char
1166 vec_load_bndry(const unsigned char *__ptr, unsigned short __len)
1167  __constant_pow2_range(__len, 64, 4096);
1168 
1169 extern __ATTRS_o vector signed short
1170 vec_load_bndry(const signed short *__ptr, unsigned short __len)
1171  __constant_pow2_range(__len, 64, 4096);
1172 
1173 extern __ATTRS_o vector unsigned short
1174 vec_load_bndry(const unsigned short *__ptr, unsigned short __len)
1175  __constant_pow2_range(__len, 64, 4096);
1176 
1177 extern __ATTRS_o vector signed int
1178 vec_load_bndry(const signed int *__ptr, unsigned short __len)
1179  __constant_pow2_range(__len, 64, 4096);
1180 
1181 extern __ATTRS_o vector unsigned int
1182 vec_load_bndry(const unsigned int *__ptr, unsigned short __len)
1183  __constant_pow2_range(__len, 64, 4096);
1184 
1185 extern __ATTRS_o vector signed long long
1186 vec_load_bndry(const signed long long *__ptr, unsigned short __len)
1187  __constant_pow2_range(__len, 64, 4096);
1188 
1189 extern __ATTRS_o vector unsigned long long
1190 vec_load_bndry(const unsigned long long *__ptr, unsigned short __len)
1191  __constant_pow2_range(__len, 64, 4096);
1192 
1193 #if __ARCH__ >= 12
1194 extern __ATTRS_o vector float
1195 vec_load_bndry(const float *__ptr, unsigned short __len)
1196  __constant_pow2_range(__len, 64, 4096);
1197 #endif
1198 
1199 extern __ATTRS_o vector double
1200 vec_load_bndry(const double *__ptr, unsigned short __len)
1201  __constant_pow2_range(__len, 64, 4096);
1202 
1203 #define vec_load_bndry(X, Y) ((__typeof__((vec_load_bndry)((X), (Y)))) \
1204  __builtin_s390_vlbb((X), ((Y) == 64 ? 0 : \
1205  (Y) == 128 ? 1 : \
1206  (Y) == 256 ? 2 : \
1207  (Y) == 512 ? 3 : \
1208  (Y) == 1024 ? 4 : \
1209  (Y) == 2048 ? 5 : \
1210  (Y) == 4096 ? 6 : -1)))
1211 
1212 /*-- vec_load_len -----------------------------------------------------------*/
1213 
1214 static inline __ATTRS_o_ai vector signed char
1215 vec_load_len(const signed char *__ptr, unsigned int __len) {
1216  return (vector signed char)__builtin_s390_vll(__len, __ptr);
1217 }
1218 
1219 static inline __ATTRS_o_ai vector unsigned char
1220 vec_load_len(const unsigned char *__ptr, unsigned int __len) {
1221  return (vector unsigned char)__builtin_s390_vll(__len, __ptr);
1222 }
1223 
1224 static inline __ATTRS_o_ai vector signed short
1225 vec_load_len(const signed short *__ptr, unsigned int __len) {
1226  return (vector signed short)__builtin_s390_vll(__len, __ptr);
1227 }
1228 
1229 static inline __ATTRS_o_ai vector unsigned short
1230 vec_load_len(const unsigned short *__ptr, unsigned int __len) {
1231  return (vector unsigned short)__builtin_s390_vll(__len, __ptr);
1232 }
1233 
1234 static inline __ATTRS_o_ai vector signed int
1235 vec_load_len(const signed int *__ptr, unsigned int __len) {
1236  return (vector signed int)__builtin_s390_vll(__len, __ptr);
1237 }
1238 
1239 static inline __ATTRS_o_ai vector unsigned int
1240 vec_load_len(const unsigned int *__ptr, unsigned int __len) {
1241  return (vector unsigned int)__builtin_s390_vll(__len, __ptr);
1242 }
1243 
1244 static inline __ATTRS_o_ai vector signed long long
1245 vec_load_len(const signed long long *__ptr, unsigned int __len) {
1246  return (vector signed long long)__builtin_s390_vll(__len, __ptr);
1247 }
1248 
1249 static inline __ATTRS_o_ai vector unsigned long long
1250 vec_load_len(const unsigned long long *__ptr, unsigned int __len) {
1251  return (vector unsigned long long)__builtin_s390_vll(__len, __ptr);
1252 }
1253 
1254 #if __ARCH__ >= 12
1255 static inline __ATTRS_o_ai vector float
1256 vec_load_len(const float *__ptr, unsigned int __len) {
1257  return (vector float)__builtin_s390_vll(__len, __ptr);
1258 }
1259 #endif
1260 
1261 static inline __ATTRS_o_ai vector double
1262 vec_load_len(const double *__ptr, unsigned int __len) {
1263  return (vector double)__builtin_s390_vll(__len, __ptr);
1264 }
1265 
1266 /*-- vec_load_len_r ---------------------------------------------------------*/
1267 
1268 #if __ARCH__ >= 12
1269 static inline __ATTRS_ai vector unsigned char
1270 vec_load_len_r(const unsigned char *__ptr, unsigned int __len) {
1271  return (vector unsigned char)__builtin_s390_vlrl(__len, __ptr);
1272 }
1273 #endif
1274 
1275 /*-- vec_store_len ----------------------------------------------------------*/
1276 
1277 static inline __ATTRS_o_ai void
1278 vec_store_len(vector signed char __vec, signed char *__ptr,
1279  unsigned int __len) {
1280  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1281 }
1282 
1283 static inline __ATTRS_o_ai void
1284 vec_store_len(vector unsigned char __vec, unsigned char *__ptr,
1285  unsigned int __len) {
1286  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1287 }
1288 
1289 static inline __ATTRS_o_ai void
1290 vec_store_len(vector signed short __vec, signed short *__ptr,
1291  unsigned int __len) {
1292  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1293 }
1294 
1295 static inline __ATTRS_o_ai void
1296 vec_store_len(vector unsigned short __vec, unsigned short *__ptr,
1297  unsigned int __len) {
1298  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1299 }
1300 
1301 static inline __ATTRS_o_ai void
1302 vec_store_len(vector signed int __vec, signed int *__ptr,
1303  unsigned int __len) {
1304  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1305 }
1306 
1307 static inline __ATTRS_o_ai void
1308 vec_store_len(vector unsigned int __vec, unsigned int *__ptr,
1309  unsigned int __len) {
1310  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1311 }
1312 
1313 static inline __ATTRS_o_ai void
1314 vec_store_len(vector signed long long __vec, signed long long *__ptr,
1315  unsigned int __len) {
1316  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1317 }
1318 
1319 static inline __ATTRS_o_ai void
1320 vec_store_len(vector unsigned long long __vec, unsigned long long *__ptr,
1321  unsigned int __len) {
1322  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1323 }
1324 
1325 #if __ARCH__ >= 12
1326 static inline __ATTRS_o_ai void
1327 vec_store_len(vector float __vec, float *__ptr,
1328  unsigned int __len) {
1329  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1330 }
1331 #endif
1332 
1333 static inline __ATTRS_o_ai void
1334 vec_store_len(vector double __vec, double *__ptr,
1335  unsigned int __len) {
1336  __builtin_s390_vstl((vector signed char)__vec, __len, __ptr);
1337 }
1338 
1339 /*-- vec_store_len_r --------------------------------------------------------*/
1340 
1341 #if __ARCH__ >= 12
1342 static inline __ATTRS_ai void
1343 vec_store_len_r(vector unsigned char __vec, unsigned char *__ptr,
1344  unsigned int __len) {
1345  __builtin_s390_vstrl((vector signed char)__vec, __len, __ptr);
1346 }
1347 #endif
1348 
1349 /*-- vec_load_pair ----------------------------------------------------------*/
1350 
1351 static inline __ATTRS_o_ai vector signed long long
1352 vec_load_pair(signed long long __a, signed long long __b) {
1353  return (vector signed long long)(__a, __b);
1354 }
1355 
1356 static inline __ATTRS_o_ai vector unsigned long long
1357 vec_load_pair(unsigned long long __a, unsigned long long __b) {
1358  return (vector unsigned long long)(__a, __b);
1359 }
1360 
1361 /*-- vec_genmask ------------------------------------------------------------*/
1362 
1363 static inline __ATTRS_o_ai vector unsigned char
1364 vec_genmask(unsigned short __mask)
1365  __constant(__mask) {
1366  return (vector unsigned char)(
1367  __mask & 0x8000 ? 0xff : 0,
1368  __mask & 0x4000 ? 0xff : 0,
1369  __mask & 0x2000 ? 0xff : 0,
1370  __mask & 0x1000 ? 0xff : 0,
1371  __mask & 0x0800 ? 0xff : 0,
1372  __mask & 0x0400 ? 0xff : 0,
1373  __mask & 0x0200 ? 0xff : 0,
1374  __mask & 0x0100 ? 0xff : 0,
1375  __mask & 0x0080 ? 0xff : 0,
1376  __mask & 0x0040 ? 0xff : 0,
1377  __mask & 0x0020 ? 0xff : 0,
1378  __mask & 0x0010 ? 0xff : 0,
1379  __mask & 0x0008 ? 0xff : 0,
1380  __mask & 0x0004 ? 0xff : 0,
1381  __mask & 0x0002 ? 0xff : 0,
1382  __mask & 0x0001 ? 0xff : 0);
1383 }
1384 
1385 /*-- vec_genmasks_* ---------------------------------------------------------*/
1386 
1387 static inline __ATTRS_o_ai vector unsigned char
1388 vec_genmasks_8(unsigned char __first, unsigned char __last)
1389  __constant(__first) __constant(__last) {
1390  unsigned char __bit1 = __first & 7;
1391  unsigned char __bit2 = __last & 7;
1392  unsigned char __mask1 = (unsigned char)(1U << (7 - __bit1) << 1) - 1;
1393  unsigned char __mask2 = (unsigned char)(1U << (7 - __bit2)) - 1;
1394  unsigned char __value = (__bit1 <= __bit2 ?
1395  __mask1 & ~__mask2 :
1396  __mask1 | ~__mask2);
1397  return (vector unsigned char)__value;
1398 }
1399 
1400 static inline __ATTRS_o_ai vector unsigned short
1401 vec_genmasks_16(unsigned char __first, unsigned char __last)
1402  __constant(__first) __constant(__last) {
1403  unsigned char __bit1 = __first & 15;
1404  unsigned char __bit2 = __last & 15;
1405  unsigned short __mask1 = (unsigned short)(1U << (15 - __bit1) << 1) - 1;
1406  unsigned short __mask2 = (unsigned short)(1U << (15 - __bit2)) - 1;
1407  unsigned short __value = (__bit1 <= __bit2 ?
1408  __mask1 & ~__mask2 :
1409  __mask1 | ~__mask2);
1410  return (vector unsigned short)__value;
1411 }
1412 
1413 static inline __ATTRS_o_ai vector unsigned int
1414 vec_genmasks_32(unsigned char __first, unsigned char __last)
1415  __constant(__first) __constant(__last) {
1416  unsigned char __bit1 = __first & 31;
1417  unsigned char __bit2 = __last & 31;
1418  unsigned int __mask1 = (1U << (31 - __bit1) << 1) - 1;
1419  unsigned int __mask2 = (1U << (31 - __bit2)) - 1;
1420  unsigned int __value = (__bit1 <= __bit2 ?
1421  __mask1 & ~__mask2 :
1422  __mask1 | ~__mask2);
1423  return (vector unsigned int)__value;
1424 }
1425 
1426 static inline __ATTRS_o_ai vector unsigned long long
1427 vec_genmasks_64(unsigned char __first, unsigned char __last)
1428  __constant(__first) __constant(__last) {
1429  unsigned char __bit1 = __first & 63;
1430  unsigned char __bit2 = __last & 63;
1431  unsigned long long __mask1 = (1ULL << (63 - __bit1) << 1) - 1;
1432  unsigned long long __mask2 = (1ULL << (63 - __bit2)) - 1;
1433  unsigned long long __value = (__bit1 <= __bit2 ?
1434  __mask1 & ~__mask2 :
1435  __mask1 | ~__mask2);
1436  return (vector unsigned long long)__value;
1437 }
1438 
1439 /*-- vec_splat --------------------------------------------------------------*/
1440 
1441 static inline __ATTRS_o_ai vector signed char
1442 vec_splat(vector signed char __vec, int __index)
1443  __constant_range(__index, 0, 15) {
1444  return (vector signed char)__vec[__index];
1445 }
1446 
1447 static inline __ATTRS_o_ai vector bool char
1448 vec_splat(vector bool char __vec, int __index)
1449  __constant_range(__index, 0, 15) {
1450  return (vector bool char)(vector unsigned char)__vec[__index];
1451 }
1452 
1453 static inline __ATTRS_o_ai vector unsigned char
1454 vec_splat(vector unsigned char __vec, int __index)
1455  __constant_range(__index, 0, 15) {
1456  return (vector unsigned char)__vec[__index];
1457 }
1458 
1459 static inline __ATTRS_o_ai vector signed short
1460 vec_splat(vector signed short __vec, int __index)
1461  __constant_range(__index, 0, 7) {
1462  return (vector signed short)__vec[__index];
1463 }
1464 
1465 static inline __ATTRS_o_ai vector bool short
1466 vec_splat(vector bool short __vec, int __index)
1467  __constant_range(__index, 0, 7) {
1468  return (vector bool short)(vector unsigned short)__vec[__index];
1469 }
1470 
1471 static inline __ATTRS_o_ai vector unsigned short
1472 vec_splat(vector unsigned short __vec, int __index)
1473  __constant_range(__index, 0, 7) {
1474  return (vector unsigned short)__vec[__index];
1475 }
1476 
1477 static inline __ATTRS_o_ai vector signed int
1478 vec_splat(vector signed int __vec, int __index)
1479  __constant_range(__index, 0, 3) {
1480  return (vector signed int)__vec[__index];
1481 }
1482 
1483 static inline __ATTRS_o_ai vector bool int
1484 vec_splat(vector bool int __vec, int __index)
1485  __constant_range(__index, 0, 3) {
1486  return (vector bool int)(vector unsigned int)__vec[__index];
1487 }
1488 
1489 static inline __ATTRS_o_ai vector unsigned int
1490 vec_splat(vector unsigned int __vec, int __index)
1491  __constant_range(__index, 0, 3) {
1492  return (vector unsigned int)__vec[__index];
1493 }
1494 
1495 static inline __ATTRS_o_ai vector signed long long
1496 vec_splat(vector signed long long __vec, int __index)
1497  __constant_range(__index, 0, 1) {
1498  return (vector signed long long)__vec[__index];
1499 }
1500 
1501 static inline __ATTRS_o_ai vector bool long long
1502 vec_splat(vector bool long long __vec, int __index)
1503  __constant_range(__index, 0, 1) {
1504  return (vector bool long long)(vector unsigned long long)__vec[__index];
1505 }
1506 
1507 static inline __ATTRS_o_ai vector unsigned long long
1508 vec_splat(vector unsigned long long __vec, int __index)
1509  __constant_range(__index, 0, 1) {
1510  return (vector unsigned long long)__vec[__index];
1511 }
1512 
1513 #if __ARCH__ >= 12
1514 static inline __ATTRS_o_ai vector float
1515 vec_splat(vector float __vec, int __index)
1516  __constant_range(__index, 0, 3) {
1517  return (vector float)__vec[__index];
1518 }
1519 #endif
1520 
1521 static inline __ATTRS_o_ai vector double
1522 vec_splat(vector double __vec, int __index)
1523  __constant_range(__index, 0, 1) {
1524  return (vector double)__vec[__index];
1525 }
1526 
1527 /*-- vec_splat_s* -----------------------------------------------------------*/
1528 
1529 static inline __ATTRS_ai vector signed char
1530 vec_splat_s8(signed char __scalar)
1531  __constant(__scalar) {
1532  return (vector signed char)__scalar;
1533 }
1534 
1535 static inline __ATTRS_ai vector signed short
1536 vec_splat_s16(signed short __scalar)
1537  __constant(__scalar) {
1538  return (vector signed short)__scalar;
1539 }
1540 
1541 static inline __ATTRS_ai vector signed int
1542 vec_splat_s32(signed short __scalar)
1543  __constant(__scalar) {
1544  return (vector signed int)(signed int)__scalar;
1545 }
1546 
1547 static inline __ATTRS_ai vector signed long long
1548 vec_splat_s64(signed short __scalar)
1549  __constant(__scalar) {
1550  return (vector signed long long)(signed long)__scalar;
1551 }
1552 
1553 /*-- vec_splat_u* -----------------------------------------------------------*/
1554 
1555 static inline __ATTRS_ai vector unsigned char
1556 vec_splat_u8(unsigned char __scalar)
1557  __constant(__scalar) {
1558  return (vector unsigned char)__scalar;
1559 }
1560 
1561 static inline __ATTRS_ai vector unsigned short
1562 vec_splat_u16(unsigned short __scalar)
1563  __constant(__scalar) {
1564  return (vector unsigned short)__scalar;
1565 }
1566 
1567 static inline __ATTRS_ai vector unsigned int
1568 vec_splat_u32(signed short __scalar)
1569  __constant(__scalar) {
1570  return (vector unsigned int)(signed int)__scalar;
1571 }
1572 
1573 static inline __ATTRS_ai vector unsigned long long
1574 vec_splat_u64(signed short __scalar)
1575  __constant(__scalar) {
1576  return (vector unsigned long long)(signed long long)__scalar;
1577 }
1578 
1579 /*-- vec_splats -------------------------------------------------------------*/
1580 
1581 static inline __ATTRS_o_ai vector signed char
1582 vec_splats(signed char __scalar) {
1583  return (vector signed char)__scalar;
1584 }
1585 
1586 static inline __ATTRS_o_ai vector unsigned char
1587 vec_splats(unsigned char __scalar) {
1588  return (vector unsigned char)__scalar;
1589 }
1590 
1591 static inline __ATTRS_o_ai vector signed short
1592 vec_splats(signed short __scalar) {
1593  return (vector signed short)__scalar;
1594 }
1595 
1596 static inline __ATTRS_o_ai vector unsigned short
1597 vec_splats(unsigned short __scalar) {
1598  return (vector unsigned short)__scalar;
1599 }
1600 
1601 static inline __ATTRS_o_ai vector signed int
1602 vec_splats(signed int __scalar) {
1603  return (vector signed int)__scalar;
1604 }
1605 
1606 static inline __ATTRS_o_ai vector unsigned int
1607 vec_splats(unsigned int __scalar) {
1608  return (vector unsigned int)__scalar;
1609 }
1610 
1611 static inline __ATTRS_o_ai vector signed long long
1612 vec_splats(signed long long __scalar) {
1613  return (vector signed long long)__scalar;
1614 }
1615 
1616 static inline __ATTRS_o_ai vector unsigned long long
1617 vec_splats(unsigned long long __scalar) {
1618  return (vector unsigned long long)__scalar;
1619 }
1620 
1621 #if __ARCH__ >= 12
1622 static inline __ATTRS_o_ai vector float
1623 vec_splats(float __scalar) {
1624  return (vector float)__scalar;
1625 }
1626 #endif
1627 
1628 static inline __ATTRS_o_ai vector double
1629 vec_splats(double __scalar) {
1630  return (vector double)__scalar;
1631 }
1632 
1633 /*-- vec_extend_s64 ---------------------------------------------------------*/
1634 
1635 static inline __ATTRS_o_ai vector signed long long
1636 vec_extend_s64(vector signed char __a) {
1637  return (vector signed long long)(__a[7], __a[15]);
1638 }
1639 
1640 static inline __ATTRS_o_ai vector signed long long
1641 vec_extend_s64(vector signed short __a) {
1642  return (vector signed long long)(__a[3], __a[7]);
1643 }
1644 
1645 static inline __ATTRS_o_ai vector signed long long
1646 vec_extend_s64(vector signed int __a) {
1647  return (vector signed long long)(__a[1], __a[3]);
1648 }
1649 
1650 /*-- vec_mergeh -------------------------------------------------------------*/
1651 
1652 static inline __ATTRS_o_ai vector signed char
1653 vec_mergeh(vector signed char __a, vector signed char __b) {
1654  return (vector signed char)(
1655  __a[0], __b[0], __a[1], __b[1], __a[2], __b[2], __a[3], __b[3],
1656  __a[4], __b[4], __a[5], __b[5], __a[6], __b[6], __a[7], __b[7]);
1657 }
1658 
1659 static inline __ATTRS_o_ai vector bool char
1660 vec_mergeh(vector bool char __a, vector bool char __b) {
1661  return (vector bool char)(
1662  __a[0], __b[0], __a[1], __b[1], __a[2], __b[2], __a[3], __b[3],
1663  __a[4], __b[4], __a[5], __b[5], __a[6], __b[6], __a[7], __b[7]);
1664 }
1665 
1666 static inline __ATTRS_o_ai vector unsigned char
1667 vec_mergeh(vector unsigned char __a, vector unsigned char __b) {
1668  return (vector unsigned char)(
1669  __a[0], __b[0], __a[1], __b[1], __a[2], __b[2], __a[3], __b[3],
1670  __a[4], __b[4], __a[5], __b[5], __a[6], __b[6], __a[7], __b[7]);
1671 }
1672 
1673 static inline __ATTRS_o_ai vector signed short
1674 vec_mergeh(vector signed short __a, vector signed short __b) {
1675  return (vector signed short)(
1676  __a[0], __b[0], __a[1], __b[1], __a[2], __b[2], __a[3], __b[3]);
1677 }
1678 
1679 static inline __ATTRS_o_ai vector bool short
1680 vec_mergeh(vector bool short __a, vector bool short __b) {
1681  return (vector bool short)(
1682  __a[0], __b[0], __a[1], __b[1], __a[2], __b[2], __a[3], __b[3]);
1683 }
1684 
1685 static inline __ATTRS_o_ai vector unsigned short
1686 vec_mergeh(vector unsigned short __a, vector unsigned short __b) {
1687  return (vector unsigned short)(
1688  __a[0], __b[0], __a[1], __b[1], __a[2], __b[2], __a[3], __b[3]);
1689 }
1690 
1691 static inline __ATTRS_o_ai vector signed int
1692 vec_mergeh(vector signed int __a, vector signed int __b) {
1693  return (vector signed int)(__a[0], __b[0], __a[1], __b[1]);
1694 }
1695 
1696 static inline __ATTRS_o_ai vector bool int
1697 vec_mergeh(vector bool int __a, vector bool int __b) {
1698  return (vector bool int)(__a[0], __b[0], __a[1], __b[1]);
1699 }
1700 
1701 static inline __ATTRS_o_ai vector unsigned int
1702 vec_mergeh(vector unsigned int __a, vector unsigned int __b) {
1703  return (vector unsigned int)(__a[0], __b[0], __a[1], __b[1]);
1704 }
1705 
1706 static inline __ATTRS_o_ai vector signed long long
1707 vec_mergeh(vector signed long long __a, vector signed long long __b) {
1708  return (vector signed long long)(__a[0], __b[0]);
1709 }
1710 
1711 static inline __ATTRS_o_ai vector bool long long
1712 vec_mergeh(vector bool long long __a, vector bool long long __b) {
1713  return (vector bool long long)(__a[0], __b[0]);
1714 }
1715 
1716 static inline __ATTRS_o_ai vector unsigned long long
1717 vec_mergeh(vector unsigned long long __a, vector unsigned long long __b) {
1718  return (vector unsigned long long)(__a[0], __b[0]);
1719 }
1720 
1721 #if __ARCH__ >= 12
1722 static inline __ATTRS_o_ai vector float
1723 vec_mergeh(vector float __a, vector float __b) {
1724  return (vector float)(__a[0], __b[0], __a[1], __b[1]);
1725 }
1726 #endif
1727 
1728 static inline __ATTRS_o_ai vector double
1729 vec_mergeh(vector double __a, vector double __b) {
1730  return (vector double)(__a[0], __b[0]);
1731 }
1732 
1733 /*-- vec_mergel -------------------------------------------------------------*/
1734 
1735 static inline __ATTRS_o_ai vector signed char
1736 vec_mergel(vector signed char __a, vector signed char __b) {
1737  return (vector signed char)(
1738  __a[8], __b[8], __a[9], __b[9], __a[10], __b[10], __a[11], __b[11],
1739  __a[12], __b[12], __a[13], __b[13], __a[14], __b[14], __a[15], __b[15]);
1740 }
1741 
1742 static inline __ATTRS_o_ai vector bool char
1743 vec_mergel(vector bool char __a, vector bool char __b) {
1744  return (vector bool char)(
1745  __a[8], __b[8], __a[9], __b[9], __a[10], __b[10], __a[11], __b[11],
1746  __a[12], __b[12], __a[13], __b[13], __a[14], __b[14], __a[15], __b[15]);
1747 }
1748 
1749 static inline __ATTRS_o_ai vector unsigned char
1750 vec_mergel(vector unsigned char __a, vector unsigned char __b) {
1751  return (vector unsigned char)(
1752  __a[8], __b[8], __a[9], __b[9], __a[10], __b[10], __a[11], __b[11],
1753  __a[12], __b[12], __a[13], __b[13], __a[14], __b[14], __a[15], __b[15]);
1754 }
1755 
1756 static inline __ATTRS_o_ai vector signed short
1757 vec_mergel(vector signed short __a, vector signed short __b) {
1758  return (vector signed short)(
1759  __a[4], __b[4], __a[5], __b[5], __a[6], __b[6], __a[7], __b[7]);
1760 }
1761 
1762 static inline __ATTRS_o_ai vector bool short
1763 vec_mergel(vector bool short __a, vector bool short __b) {
1764  return (vector bool short)(
1765  __a[4], __b[4], __a[5], __b[5], __a[6], __b[6], __a[7], __b[7]);
1766 }
1767 
1768 static inline __ATTRS_o_ai vector unsigned short
1769 vec_mergel(vector unsigned short __a, vector unsigned short __b) {
1770  return (vector unsigned short)(
1771  __a[4], __b[4], __a[5], __b[5], __a[6], __b[6], __a[7], __b[7]);
1772 }
1773 
1774 static inline __ATTRS_o_ai vector signed int
1775 vec_mergel(vector signed int __a, vector signed int __b) {
1776  return (vector signed int)(__a[2], __b[2], __a[3], __b[3]);
1777 }
1778 
1779 static inline __ATTRS_o_ai vector bool int
1780 vec_mergel(vector bool int __a, vector bool int __b) {
1781  return (vector bool int)(__a[2], __b[2], __a[3], __b[3]);
1782 }
1783 
1784 static inline __ATTRS_o_ai vector unsigned int
1785 vec_mergel(vector unsigned int __a, vector unsigned int __b) {
1786  return (vector unsigned int)(__a[2], __b[2], __a[3], __b[3]);
1787 }
1788 
1789 static inline __ATTRS_o_ai vector signed long long
1790 vec_mergel(vector signed long long __a, vector signed long long __b) {
1791  return (vector signed long long)(__a[1], __b[1]);
1792 }
1793 
1794 static inline __ATTRS_o_ai vector bool long long
1795 vec_mergel(vector bool long long __a, vector bool long long __b) {
1796  return (vector bool long long)(__a[1], __b[1]);
1797 }
1798 
1799 static inline __ATTRS_o_ai vector unsigned long long
1800 vec_mergel(vector unsigned long long __a, vector unsigned long long __b) {
1801  return (vector unsigned long long)(__a[1], __b[1]);
1802 }
1803 
1804 #if __ARCH__ >= 12
1805 static inline __ATTRS_o_ai vector float
1806 vec_mergel(vector float __a, vector float __b) {
1807  return (vector float)(__a[2], __b[2], __a[3], __b[3]);
1808 }
1809 #endif
1810 
1811 static inline __ATTRS_o_ai vector double
1812 vec_mergel(vector double __a, vector double __b) {
1813  return (vector double)(__a[1], __b[1]);
1814 }
1815 
1816 /*-- vec_pack ---------------------------------------------------------------*/
1817 
1818 static inline __ATTRS_o_ai vector signed char
1819 vec_pack(vector signed short __a, vector signed short __b) {
1820  vector signed char __ac = (vector signed char)__a;
1821  vector signed char __bc = (vector signed char)__b;
1822  return (vector signed char)(
1823  __ac[1], __ac[3], __ac[5], __ac[7], __ac[9], __ac[11], __ac[13], __ac[15],
1824  __bc[1], __bc[3], __bc[5], __bc[7], __bc[9], __bc[11], __bc[13], __bc[15]);
1825 }
1826 
1827 static inline __ATTRS_o_ai vector bool char
1828 vec_pack(vector bool short __a, vector bool short __b) {
1829  vector bool char __ac = (vector bool char)__a;
1830  vector bool char __bc = (vector bool char)__b;
1831  return (vector bool char)(
1832  __ac[1], __ac[3], __ac[5], __ac[7], __ac[9], __ac[11], __ac[13], __ac[15],
1833  __bc[1], __bc[3], __bc[5], __bc[7], __bc[9], __bc[11], __bc[13], __bc[15]);
1834 }
1835 
1836 static inline __ATTRS_o_ai vector unsigned char
1837 vec_pack(vector unsigned short __a, vector unsigned short __b) {
1838  vector unsigned char __ac = (vector unsigned char)__a;
1839  vector unsigned char __bc = (vector unsigned char)__b;
1840  return (vector unsigned char)(
1841  __ac[1], __ac[3], __ac[5], __ac[7], __ac[9], __ac[11], __ac[13], __ac[15],
1842  __bc[1], __bc[3], __bc[5], __bc[7], __bc[9], __bc[11], __bc[13], __bc[15]);
1843 }
1844 
1845 static inline __ATTRS_o_ai vector signed short
1846 vec_pack(vector signed int __a, vector signed int __b) {
1847  vector signed short __ac = (vector signed short)__a;
1848  vector signed short __bc = (vector signed short)__b;
1849  return (vector signed short)(
1850  __ac[1], __ac[3], __ac[5], __ac[7],
1851  __bc[1], __bc[3], __bc[5], __bc[7]);
1852 }
1853 
1854 static inline __ATTRS_o_ai vector bool short
1855 vec_pack(vector bool int __a, vector bool int __b) {
1856  vector bool short __ac = (vector bool short)__a;
1857  vector bool short __bc = (vector bool short)__b;
1858  return (vector bool short)(
1859  __ac[1], __ac[3], __ac[5], __ac[7],
1860  __bc[1], __bc[3], __bc[5], __bc[7]);
1861 }
1862 
1863 static inline __ATTRS_o_ai vector unsigned short
1864 vec_pack(vector unsigned int __a, vector unsigned int __b) {
1865  vector unsigned short __ac = (vector unsigned short)__a;
1866  vector unsigned short __bc = (vector unsigned short)__b;
1867  return (vector unsigned short)(
1868  __ac[1], __ac[3], __ac[5], __ac[7],
1869  __bc[1], __bc[3], __bc[5], __bc[7]);
1870 }
1871 
1872 static inline __ATTRS_o_ai vector signed int
1873 vec_pack(vector signed long long __a, vector signed long long __b) {
1874  vector signed int __ac = (vector signed int)__a;
1875  vector signed int __bc = (vector signed int)__b;
1876  return (vector signed int)(__ac[1], __ac[3], __bc[1], __bc[3]);
1877 }
1878 
1879 static inline __ATTRS_o_ai vector bool int
1880 vec_pack(vector bool long long __a, vector bool long long __b) {
1881  vector bool int __ac = (vector bool int)__a;
1882  vector bool int __bc = (vector bool int)__b;
1883  return (vector bool int)(__ac[1], __ac[3], __bc[1], __bc[3]);
1884 }
1885 
1886 static inline __ATTRS_o_ai vector unsigned int
1887 vec_pack(vector unsigned long long __a, vector unsigned long long __b) {
1888  vector unsigned int __ac = (vector unsigned int)__a;
1889  vector unsigned int __bc = (vector unsigned int)__b;
1890  return (vector unsigned int)(__ac[1], __ac[3], __bc[1], __bc[3]);
1891 }
1892 
1893 /*-- vec_packs --------------------------------------------------------------*/
1894 
1895 static inline __ATTRS_o_ai vector signed char
1896 vec_packs(vector signed short __a, vector signed short __b) {
1897  return __builtin_s390_vpksh(__a, __b);
1898 }
1899 
1900 static inline __ATTRS_o_ai vector unsigned char
1901 vec_packs(vector unsigned short __a, vector unsigned short __b) {
1902  return __builtin_s390_vpklsh(__a, __b);
1903 }
1904 
1905 static inline __ATTRS_o_ai vector signed short
1906 vec_packs(vector signed int __a, vector signed int __b) {
1907  return __builtin_s390_vpksf(__a, __b);
1908 }
1909 
1910 static inline __ATTRS_o_ai vector unsigned short
1911 vec_packs(vector unsigned int __a, vector unsigned int __b) {
1912  return __builtin_s390_vpklsf(__a, __b);
1913 }
1914 
1915 static inline __ATTRS_o_ai vector signed int
1916 vec_packs(vector signed long long __a, vector signed long long __b) {
1917  return __builtin_s390_vpksg(__a, __b);
1918 }
1919 
1920 static inline __ATTRS_o_ai vector unsigned int
1921 vec_packs(vector unsigned long long __a, vector unsigned long long __b) {
1922  return __builtin_s390_vpklsg(__a, __b);
1923 }
1924 
1925 /*-- vec_packs_cc -----------------------------------------------------------*/
1926 
1927 static inline __ATTRS_o_ai vector signed char
1928 vec_packs_cc(vector signed short __a, vector signed short __b, int *__cc) {
1929  return __builtin_s390_vpkshs(__a, __b, __cc);
1930 }
1931 
1932 static inline __ATTRS_o_ai vector unsigned char
1933 vec_packs_cc(vector unsigned short __a, vector unsigned short __b, int *__cc) {
1934  return __builtin_s390_vpklshs(__a, __b, __cc);
1935 }
1936 
1937 static inline __ATTRS_o_ai vector signed short
1938 vec_packs_cc(vector signed int __a, vector signed int __b, int *__cc) {
1939  return __builtin_s390_vpksfs(__a, __b, __cc);
1940 }
1941 
1942 static inline __ATTRS_o_ai vector unsigned short
1943 vec_packs_cc(vector unsigned int __a, vector unsigned int __b, int *__cc) {
1944  return __builtin_s390_vpklsfs(__a, __b, __cc);
1945 }
1946 
1947 static inline __ATTRS_o_ai vector signed int
1948 vec_packs_cc(vector signed long long __a, vector signed long long __b,
1949  int *__cc) {
1950  return __builtin_s390_vpksgs(__a, __b, __cc);
1951 }
1952 
1953 static inline __ATTRS_o_ai vector unsigned int
1954 vec_packs_cc(vector unsigned long long __a, vector unsigned long long __b,
1955  int *__cc) {
1956  return __builtin_s390_vpklsgs(__a, __b, __cc);
1957 }
1958 
1959 /*-- vec_packsu -------------------------------------------------------------*/
1960 
1961 static inline __ATTRS_o_ai vector unsigned char
1962 vec_packsu(vector signed short __a, vector signed short __b) {
1963  const vector signed short __zero = (vector signed short)0;
1964  return __builtin_s390_vpklsh(
1965  (vector unsigned short)(__a >= __zero) & (vector unsigned short)__a,
1966  (vector unsigned short)(__b >= __zero) & (vector unsigned short)__b);
1967 }
1968 
1969 static inline __ATTRS_o_ai vector unsigned char
1970 vec_packsu(vector unsigned short __a, vector unsigned short __b) {
1971  return __builtin_s390_vpklsh(__a, __b);
1972 }
1973 
1974 static inline __ATTRS_o_ai vector unsigned short
1975 vec_packsu(vector signed int __a, vector signed int __b) {
1976  const vector signed int __zero = (vector signed int)0;
1977  return __builtin_s390_vpklsf(
1978  (vector unsigned int)(__a >= __zero) & (vector unsigned int)__a,
1979  (vector unsigned int)(__b >= __zero) & (vector unsigned int)__b);
1980 }
1981 
1982 static inline __ATTRS_o_ai vector unsigned short
1983 vec_packsu(vector unsigned int __a, vector unsigned int __b) {
1984  return __builtin_s390_vpklsf(__a, __b);
1985 }
1986 
1987 static inline __ATTRS_o_ai vector unsigned int
1988 vec_packsu(vector signed long long __a, vector signed long long __b) {
1989  const vector signed long long __zero = (vector signed long long)0;
1990  return __builtin_s390_vpklsg(
1991  (vector unsigned long long)(__a >= __zero) &
1992  (vector unsigned long long)__a,
1993  (vector unsigned long long)(__b >= __zero) &
1994  (vector unsigned long long)__b);
1995 }
1996 
1997 static inline __ATTRS_o_ai vector unsigned int
1998 vec_packsu(vector unsigned long long __a, vector unsigned long long __b) {
1999  return __builtin_s390_vpklsg(__a, __b);
2000 }
2001 
2002 /*-- vec_packsu_cc ----------------------------------------------------------*/
2003 
2004 static inline __ATTRS_o_ai vector unsigned char
2005 vec_packsu_cc(vector unsigned short __a, vector unsigned short __b, int *__cc) {
2006  return __builtin_s390_vpklshs(__a, __b, __cc);
2007 }
2008 
2009 static inline __ATTRS_o_ai vector unsigned short
2010 vec_packsu_cc(vector unsigned int __a, vector unsigned int __b, int *__cc) {
2011  return __builtin_s390_vpklsfs(__a, __b, __cc);
2012 }
2013 
2014 static inline __ATTRS_o_ai vector unsigned int
2015 vec_packsu_cc(vector unsigned long long __a, vector unsigned long long __b,
2016  int *__cc) {
2017  return __builtin_s390_vpklsgs(__a, __b, __cc);
2018 }
2019 
2020 /*-- vec_unpackh ------------------------------------------------------------*/
2021 
2022 static inline __ATTRS_o_ai vector signed short
2023 vec_unpackh(vector signed char __a) {
2024  return __builtin_s390_vuphb(__a);
2025 }
2026 
2027 static inline __ATTRS_o_ai vector bool short
2028 vec_unpackh(vector bool char __a) {
2029  return (vector bool short)__builtin_s390_vuphb((vector signed char)__a);
2030 }
2031 
2032 static inline __ATTRS_o_ai vector unsigned short
2033 vec_unpackh(vector unsigned char __a) {
2034  return __builtin_s390_vuplhb(__a);
2035 }
2036 
2037 static inline __ATTRS_o_ai vector signed int
2038 vec_unpackh(vector signed short __a) {
2039  return __builtin_s390_vuphh(__a);
2040 }
2041 
2042 static inline __ATTRS_o_ai vector bool int
2043 vec_unpackh(vector bool short __a) {
2044  return (vector bool int)__builtin_s390_vuphh((vector signed short)__a);
2045 }
2046 
2047 static inline __ATTRS_o_ai vector unsigned int
2048 vec_unpackh(vector unsigned short __a) {
2049  return __builtin_s390_vuplhh(__a);
2050 }
2051 
2052 static inline __ATTRS_o_ai vector signed long long
2053 vec_unpackh(vector signed int __a) {
2054  return __builtin_s390_vuphf(__a);
2055 }
2056 
2057 static inline __ATTRS_o_ai vector bool long long
2058 vec_unpackh(vector bool int __a) {
2059  return (vector bool long long)__builtin_s390_vuphf((vector signed int)__a);
2060 }
2061 
2062 static inline __ATTRS_o_ai vector unsigned long long
2063 vec_unpackh(vector unsigned int __a) {
2064  return __builtin_s390_vuplhf(__a);
2065 }
2066 
2067 /*-- vec_unpackl ------------------------------------------------------------*/
2068 
2069 static inline __ATTRS_o_ai vector signed short
2070 vec_unpackl(vector signed char __a) {
2071  return __builtin_s390_vuplb(__a);
2072 }
2073 
2074 static inline __ATTRS_o_ai vector bool short
2075 vec_unpackl(vector bool char __a) {
2076  return (vector bool short)__builtin_s390_vuplb((vector signed char)__a);
2077 }
2078 
2079 static inline __ATTRS_o_ai vector unsigned short
2080 vec_unpackl(vector unsigned char __a) {
2081  return __builtin_s390_vupllb(__a);
2082 }
2083 
2084 static inline __ATTRS_o_ai vector signed int
2085 vec_unpackl(vector signed short __a) {
2086  return __builtin_s390_vuplhw(__a);
2087 }
2088 
2089 static inline __ATTRS_o_ai vector bool int
2090 vec_unpackl(vector bool short __a) {
2091  return (vector bool int)__builtin_s390_vuplhw((vector signed short)__a);
2092 }
2093 
2094 static inline __ATTRS_o_ai vector unsigned int
2095 vec_unpackl(vector unsigned short __a) {
2096  return __builtin_s390_vupllh(__a);
2097 }
2098 
2099 static inline __ATTRS_o_ai vector signed long long
2100 vec_unpackl(vector signed int __a) {
2101  return __builtin_s390_vuplf(__a);
2102 }
2103 
2104 static inline __ATTRS_o_ai vector bool long long
2105 vec_unpackl(vector bool int __a) {
2106  return (vector bool long long)__builtin_s390_vuplf((vector signed int)__a);
2107 }
2108 
2109 static inline __ATTRS_o_ai vector unsigned long long
2110 vec_unpackl(vector unsigned int __a) {
2111  return __builtin_s390_vupllf(__a);
2112 }
2113 
2114 /*-- vec_cmpeq --------------------------------------------------------------*/
2115 
2116 static inline __ATTRS_o_ai vector bool char
2117 vec_cmpeq(vector bool char __a, vector bool char __b) {
2118  return (vector bool char)(__a == __b);
2119 }
2120 
2121 static inline __ATTRS_o_ai vector bool char
2122 vec_cmpeq(vector signed char __a, vector signed char __b) {
2123  return (vector bool char)(__a == __b);
2124 }
2125 
2126 static inline __ATTRS_o_ai vector bool char
2127 vec_cmpeq(vector unsigned char __a, vector unsigned char __b) {
2128  return (vector bool char)(__a == __b);
2129 }
2130 
2131 static inline __ATTRS_o_ai vector bool short
2132 vec_cmpeq(vector bool short __a, vector bool short __b) {
2133  return (vector bool short)(__a == __b);
2134 }
2135 
2136 static inline __ATTRS_o_ai vector bool short
2137 vec_cmpeq(vector signed short __a, vector signed short __b) {
2138  return (vector bool short)(__a == __b);
2139 }
2140 
2141 static inline __ATTRS_o_ai vector bool short
2142 vec_cmpeq(vector unsigned short __a, vector unsigned short __b) {
2143  return (vector bool short)(__a == __b);
2144 }
2145 
2146 static inline __ATTRS_o_ai vector bool int
2147 vec_cmpeq(vector bool int __a, vector bool int __b) {
2148  return (vector bool int)(__a == __b);
2149 }
2150 
2151 static inline __ATTRS_o_ai vector bool int
2152 vec_cmpeq(vector signed int __a, vector signed int __b) {
2153  return (vector bool int)(__a == __b);
2154 }
2155 
2156 static inline __ATTRS_o_ai vector bool int
2157 vec_cmpeq(vector unsigned int __a, vector unsigned int __b) {
2158  return (vector bool int)(__a == __b);
2159 }
2160 
2161 static inline __ATTRS_o_ai vector bool long long
2162 vec_cmpeq(vector bool long long __a, vector bool long long __b) {
2163  return (vector bool long long)(__a == __b);
2164 }
2165 
2166 static inline __ATTRS_o_ai vector bool long long
2167 vec_cmpeq(vector signed long long __a, vector signed long long __b) {
2168  return (vector bool long long)(__a == __b);
2169 }
2170 
2171 static inline __ATTRS_o_ai vector bool long long
2172 vec_cmpeq(vector unsigned long long __a, vector unsigned long long __b) {
2173  return (vector bool long long)(__a == __b);
2174 }
2175 
2176 #if __ARCH__ >= 12
2177 static inline __ATTRS_o_ai vector bool int
2178 vec_cmpeq(vector float __a, vector float __b) {
2179  return (vector bool int)(__a == __b);
2180 }
2181 #endif
2182 
2183 static inline __ATTRS_o_ai vector bool long long
2184 vec_cmpeq(vector double __a, vector double __b) {
2185  return (vector bool long long)(__a == __b);
2186 }
2187 
2188 /*-- vec_cmpge --------------------------------------------------------------*/
2189 
2190 static inline __ATTRS_o_ai vector bool char
2191 vec_cmpge(vector signed char __a, vector signed char __b) {
2192  return (vector bool char)(__a >= __b);
2193 }
2194 
2195 static inline __ATTRS_o_ai vector bool char
2196 vec_cmpge(vector unsigned char __a, vector unsigned char __b) {
2197  return (vector bool char)(__a >= __b);
2198 }
2199 
2200 static inline __ATTRS_o_ai vector bool short
2201 vec_cmpge(vector signed short __a, vector signed short __b) {
2202  return (vector bool short)(__a >= __b);
2203 }
2204 
2205 static inline __ATTRS_o_ai vector bool short
2206 vec_cmpge(vector unsigned short __a, vector unsigned short __b) {
2207  return (vector bool short)(__a >= __b);
2208 }
2209 
2210 static inline __ATTRS_o_ai vector bool int
2211 vec_cmpge(vector signed int __a, vector signed int __b) {
2212  return (vector bool int)(__a >= __b);
2213 }
2214 
2215 static inline __ATTRS_o_ai vector bool int
2216 vec_cmpge(vector unsigned int __a, vector unsigned int __b) {
2217  return (vector bool int)(__a >= __b);
2218 }
2219 
2220 static inline __ATTRS_o_ai vector bool long long
2221 vec_cmpge(vector signed long long __a, vector signed long long __b) {
2222  return (vector bool long long)(__a >= __b);
2223 }
2224 
2225 static inline __ATTRS_o_ai vector bool long long
2226 vec_cmpge(vector unsigned long long __a, vector unsigned long long __b) {
2227  return (vector bool long long)(__a >= __b);
2228 }
2229 
2230 #if __ARCH__ >= 12
2231 static inline __ATTRS_o_ai vector bool int
2232 vec_cmpge(vector float __a, vector float __b) {
2233  return (vector bool int)(__a >= __b);
2234 }
2235 #endif
2236 
2237 static inline __ATTRS_o_ai vector bool long long
2238 vec_cmpge(vector double __a, vector double __b) {
2239  return (vector bool long long)(__a >= __b);
2240 }
2241 
2242 /*-- vec_cmpgt --------------------------------------------------------------*/
2243 
2244 static inline __ATTRS_o_ai vector bool char
2245 vec_cmpgt(vector signed char __a, vector signed char __b) {
2246  return (vector bool char)(__a > __b);
2247 }
2248 
2249 static inline __ATTRS_o_ai vector bool char
2250 vec_cmpgt(vector unsigned char __a, vector unsigned char __b) {
2251  return (vector bool char)(__a > __b);
2252 }
2253 
2254 static inline __ATTRS_o_ai vector bool short
2255 vec_cmpgt(vector signed short __a, vector signed short __b) {
2256  return (vector bool short)(__a > __b);
2257 }
2258 
2259 static inline __ATTRS_o_ai vector bool short
2260 vec_cmpgt(vector unsigned short __a, vector unsigned short __b) {
2261  return (vector bool short)(__a > __b);
2262 }
2263 
2264 static inline __ATTRS_o_ai vector bool int
2265 vec_cmpgt(vector signed int __a, vector signed int __b) {
2266  return (vector bool int)(__a > __b);
2267 }
2268 
2269 static inline __ATTRS_o_ai vector bool int
2270 vec_cmpgt(vector unsigned int __a, vector unsigned int __b) {
2271  return (vector bool int)(__a > __b);
2272 }
2273 
2274 static inline __ATTRS_o_ai vector bool long long
2275 vec_cmpgt(vector signed long long __a, vector signed long long __b) {
2276  return (vector bool long long)(__a > __b);
2277 }
2278 
2279 static inline __ATTRS_o_ai vector bool long long
2280 vec_cmpgt(vector unsigned long long __a, vector unsigned long long __b) {
2281  return (vector bool long long)(__a > __b);
2282 }
2283 
2284 #if __ARCH__ >= 12
2285 static inline __ATTRS_o_ai vector bool int
2286 vec_cmpgt(vector float __a, vector float __b) {
2287  return (vector bool int)(__a > __b);
2288 }
2289 #endif
2290 
2291 static inline __ATTRS_o_ai vector bool long long
2292 vec_cmpgt(vector double __a, vector double __b) {
2293  return (vector bool long long)(__a > __b);
2294 }
2295 
2296 /*-- vec_cmple --------------------------------------------------------------*/
2297 
2298 static inline __ATTRS_o_ai vector bool char
2299 vec_cmple(vector signed char __a, vector signed char __b) {
2300  return (vector bool char)(__a <= __b);
2301 }
2302 
2303 static inline __ATTRS_o_ai vector bool char
2304 vec_cmple(vector unsigned char __a, vector unsigned char __b) {
2305  return (vector bool char)(__a <= __b);
2306 }
2307 
2308 static inline __ATTRS_o_ai vector bool short
2309 vec_cmple(vector signed short __a, vector signed short __b) {
2310  return (vector bool short)(__a <= __b);
2311 }
2312 
2313 static inline __ATTRS_o_ai vector bool short
2314 vec_cmple(vector unsigned short __a, vector unsigned short __b) {
2315  return (vector bool short)(__a <= __b);
2316 }
2317 
2318 static inline __ATTRS_o_ai vector bool int
2319 vec_cmple(vector signed int __a, vector signed int __b) {
2320  return (vector bool int)(__a <= __b);
2321 }
2322 
2323 static inline __ATTRS_o_ai vector bool int
2324 vec_cmple(vector unsigned int __a, vector unsigned int __b) {
2325  return (vector bool int)(__a <= __b);
2326 }
2327 
2328 static inline __ATTRS_o_ai vector bool long long
2329 vec_cmple(vector signed long long __a, vector signed long long __b) {
2330  return (vector bool long long)(__a <= __b);
2331 }
2332 
2333 static inline __ATTRS_o_ai vector bool long long
2334 vec_cmple(vector unsigned long long __a, vector unsigned long long __b) {
2335  return (vector bool long long)(__a <= __b);
2336 }
2337 
2338 #if __ARCH__ >= 12
2339 static inline __ATTRS_o_ai vector bool int
2340 vec_cmple(vector float __a, vector float __b) {
2341  return (vector bool int)(__a <= __b);
2342 }
2343 #endif
2344 
2345 static inline __ATTRS_o_ai vector bool long long
2346 vec_cmple(vector double __a, vector double __b) {
2347  return (vector bool long long)(__a <= __b);
2348 }
2349 
2350 /*-- vec_cmplt --------------------------------------------------------------*/
2351 
2352 static inline __ATTRS_o_ai vector bool char
2353 vec_cmplt(vector signed char __a, vector signed char __b) {
2354  return (vector bool char)(__a < __b);
2355 }
2356 
2357 static inline __ATTRS_o_ai vector bool char
2358 vec_cmplt(vector unsigned char __a, vector unsigned char __b) {
2359  return (vector bool char)(__a < __b);
2360 }
2361 
2362 static inline __ATTRS_o_ai vector bool short
2363 vec_cmplt(vector signed short __a, vector signed short __b) {
2364  return (vector bool short)(__a < __b);
2365 }
2366 
2367 static inline __ATTRS_o_ai vector bool short
2368 vec_cmplt(vector unsigned short __a, vector unsigned short __b) {
2369  return (vector bool short)(__a < __b);
2370 }
2371 
2372 static inline __ATTRS_o_ai vector bool int
2373 vec_cmplt(vector signed int __a, vector signed int __b) {
2374  return (vector bool int)(__a < __b);
2375 }
2376 
2377 static inline __ATTRS_o_ai vector bool int
2378 vec_cmplt(vector unsigned int __a, vector unsigned int __b) {
2379  return (vector bool int)(__a < __b);
2380 }
2381 
2382 static inline __ATTRS_o_ai vector bool long long
2383 vec_cmplt(vector signed long long __a, vector signed long long __b) {
2384  return (vector bool long long)(__a < __b);
2385 }
2386 
2387 static inline __ATTRS_o_ai vector bool long long
2388 vec_cmplt(vector unsigned long long __a, vector unsigned long long __b) {
2389  return (vector bool long long)(__a < __b);
2390 }
2391 
2392 #if __ARCH__ >= 12
2393 static inline __ATTRS_o_ai vector bool int
2394 vec_cmplt(vector float __a, vector float __b) {
2395  return (vector bool int)(__a < __b);
2396 }
2397 #endif
2398 
2399 static inline __ATTRS_o_ai vector bool long long
2400 vec_cmplt(vector double __a, vector double __b) {
2401  return (vector bool long long)(__a < __b);
2402 }
2403 
2404 /*-- vec_all_eq -------------------------------------------------------------*/
2405 
2406 static inline __ATTRS_o_ai int
2407 vec_all_eq(vector signed char __a, vector signed char __b) {
2408  int __cc;
2409  __builtin_s390_vceqbs(__a, __b, &__cc);
2410  return __cc == 0;
2411 }
2412 
2413 // This prototype is deprecated.
2414 static inline __ATTRS_o_ai int
2415 vec_all_eq(vector signed char __a, vector bool char __b) {
2416  int __cc;
2417  __builtin_s390_vceqbs(__a, (vector signed char)__b, &__cc);
2418  return __cc == 0;
2419 }
2420 
2421 // This prototype is deprecated.
2422 static inline __ATTRS_o_ai int
2423 vec_all_eq(vector bool char __a, vector signed char __b) {
2424  int __cc;
2425  __builtin_s390_vceqbs((vector signed char)__a, __b, &__cc);
2426  return __cc == 0;
2427 }
2428 
2429 static inline __ATTRS_o_ai int
2430 vec_all_eq(vector unsigned char __a, vector unsigned char __b) {
2431  int __cc;
2432  __builtin_s390_vceqbs((vector signed char)__a,
2433  (vector signed char)__b, &__cc);
2434  return __cc == 0;
2435 }
2436 
2437 // This prototype is deprecated.
2438 static inline __ATTRS_o_ai int
2439 vec_all_eq(vector unsigned char __a, vector bool char __b) {
2440  int __cc;
2441  __builtin_s390_vceqbs((vector signed char)__a,
2442  (vector signed char)__b, &__cc);
2443  return __cc == 0;
2444 }
2445 
2446 // This prototype is deprecated.
2447 static inline __ATTRS_o_ai int
2448 vec_all_eq(vector bool char __a, vector unsigned char __b) {
2449  int __cc;
2450  __builtin_s390_vceqbs((vector signed char)__a,
2451  (vector signed char)__b, &__cc);
2452  return __cc == 0;
2453 }
2454 
2455 static inline __ATTRS_o_ai int
2456 vec_all_eq(vector bool char __a, vector bool char __b) {
2457  int __cc;
2458  __builtin_s390_vceqbs((vector signed char)__a,
2459  (vector signed char)__b, &__cc);
2460  return __cc == 0;
2461 }
2462 
2463 static inline __ATTRS_o_ai int
2464 vec_all_eq(vector signed short __a, vector signed short __b) {
2465  int __cc;
2466  __builtin_s390_vceqhs(__a, __b, &__cc);
2467  return __cc == 0;
2468 }
2469 
2470 // This prototype is deprecated.
2471 static inline __ATTRS_o_ai int
2472 vec_all_eq(vector signed short __a, vector bool short __b) {
2473  int __cc;
2474  __builtin_s390_vceqhs(__a, (vector signed short)__b, &__cc);
2475  return __cc == 0;
2476 }
2477 
2478 // This prototype is deprecated.
2479 static inline __ATTRS_o_ai int
2480 vec_all_eq(vector bool short __a, vector signed short __b) {
2481  int __cc;
2482  __builtin_s390_vceqhs((vector signed short)__a, __b, &__cc);
2483  return __cc == 0;
2484 }
2485 
2486 static inline __ATTRS_o_ai int
2487 vec_all_eq(vector unsigned short __a, vector unsigned short __b) {
2488  int __cc;
2489  __builtin_s390_vceqhs((vector signed short)__a,
2490  (vector signed short)__b, &__cc);
2491  return __cc == 0;
2492 }
2493 
2494 // This prototype is deprecated.
2495 static inline __ATTRS_o_ai int
2496 vec_all_eq(vector unsigned short __a, vector bool short __b) {
2497  int __cc;
2498  __builtin_s390_vceqhs((vector signed short)__a,
2499  (vector signed short)__b, &__cc);
2500  return __cc == 0;
2501 }
2502 
2503 // This prototype is deprecated.
2504 static inline __ATTRS_o_ai int
2505 vec_all_eq(vector bool short __a, vector unsigned short __b) {
2506  int __cc;
2507  __builtin_s390_vceqhs((vector signed short)__a,
2508  (vector signed short)__b, &__cc);
2509  return __cc == 0;
2510 }
2511 
2512 static inline __ATTRS_o_ai int
2513 vec_all_eq(vector bool short __a, vector bool short __b) {
2514  int __cc;
2515  __builtin_s390_vceqhs((vector signed short)__a,
2516  (vector signed short)__b, &__cc);
2517  return __cc == 0;
2518 }
2519 
2520 static inline __ATTRS_o_ai int
2521 vec_all_eq(vector signed int __a, vector signed int __b) {
2522  int __cc;
2523  __builtin_s390_vceqfs(__a, __b, &__cc);
2524  return __cc == 0;
2525 }
2526 
2527 // This prototype is deprecated.
2528 static inline __ATTRS_o_ai int
2529 vec_all_eq(vector signed int __a, vector bool int __b) {
2530  int __cc;
2531  __builtin_s390_vceqfs(__a, (vector signed int)__b, &__cc);
2532  return __cc == 0;
2533 }
2534 
2535 // This prototype is deprecated.
2536 static inline __ATTRS_o_ai int
2537 vec_all_eq(vector bool int __a, vector signed int __b) {
2538  int __cc;
2539  __builtin_s390_vceqfs((vector signed int)__a, __b, &__cc);
2540  return __cc == 0;
2541 }
2542 
2543 static inline __ATTRS_o_ai int
2544 vec_all_eq(vector unsigned int __a, vector unsigned int __b) {
2545  int __cc;
2546  __builtin_s390_vceqfs((vector signed int)__a,
2547  (vector signed int)__b, &__cc);
2548  return __cc == 0;
2549 }
2550 
2551 // This prototype is deprecated.
2552 static inline __ATTRS_o_ai int
2553 vec_all_eq(vector unsigned int __a, vector bool int __b) {
2554  int __cc;
2555  __builtin_s390_vceqfs((vector signed int)__a,
2556  (vector signed int)__b, &__cc);
2557  return __cc == 0;
2558 }
2559 
2560 // This prototype is deprecated.
2561 static inline __ATTRS_o_ai int
2562 vec_all_eq(vector bool int __a, vector unsigned int __b) {
2563  int __cc;
2564  __builtin_s390_vceqfs((vector signed int)__a,
2565  (vector signed int)__b, &__cc);
2566  return __cc == 0;
2567 }
2568 
2569 static inline __ATTRS_o_ai int
2570 vec_all_eq(vector bool int __a, vector bool int __b) {
2571  int __cc;
2572  __builtin_s390_vceqfs((vector signed int)__a,
2573  (vector signed int)__b, &__cc);
2574  return __cc == 0;
2575 }
2576 
2577 static inline __ATTRS_o_ai int
2578 vec_all_eq(vector signed long long __a, vector signed long long __b) {
2579  int __cc;
2580  __builtin_s390_vceqgs(__a, __b, &__cc);
2581  return __cc == 0;
2582 }
2583 
2584 // This prototype is deprecated.
2585 static inline __ATTRS_o_ai int
2586 vec_all_eq(vector signed long long __a, vector bool long long __b) {
2587  int __cc;
2588  __builtin_s390_vceqgs(__a, (vector signed long long)__b, &__cc);
2589  return __cc == 0;
2590 }
2591 
2592 // This prototype is deprecated.
2593 static inline __ATTRS_o_ai int
2594 vec_all_eq(vector bool long long __a, vector signed long long __b) {
2595  int __cc;
2596  __builtin_s390_vceqgs((vector signed long long)__a, __b, &__cc);
2597  return __cc == 0;
2598 }
2599 
2600 static inline __ATTRS_o_ai int
2601 vec_all_eq(vector unsigned long long __a, vector unsigned long long __b) {
2602  int __cc;
2603  __builtin_s390_vceqgs((vector signed long long)__a,
2604  (vector signed long long)__b, &__cc);
2605  return __cc == 0;
2606 }
2607 
2608 // This prototype is deprecated.
2609 static inline __ATTRS_o_ai int
2610 vec_all_eq(vector unsigned long long __a, vector bool long long __b) {
2611  int __cc;
2612  __builtin_s390_vceqgs((vector signed long long)__a,
2613  (vector signed long long)__b, &__cc);
2614  return __cc == 0;
2615 }
2616 
2617 // This prototype is deprecated.
2618 static inline __ATTRS_o_ai int
2619 vec_all_eq(vector bool long long __a, vector unsigned long long __b) {
2620  int __cc;
2621  __builtin_s390_vceqgs((vector signed long long)__a,
2622  (vector signed long long)__b, &__cc);
2623  return __cc == 0;
2624 }
2625 
2626 static inline __ATTRS_o_ai int
2627 vec_all_eq(vector bool long long __a, vector bool long long __b) {
2628  int __cc;
2629  __builtin_s390_vceqgs((vector signed long long)__a,
2630  (vector signed long long)__b, &__cc);
2631  return __cc == 0;
2632 }
2633 
2634 #if __ARCH__ >= 12
2635 static inline __ATTRS_o_ai int
2636 vec_all_eq(vector float __a, vector float __b) {
2637  int __cc;
2638  __builtin_s390_vfcesbs(__a, __b, &__cc);
2639  return __cc == 0;
2640 }
2641 #endif
2642 
2643 static inline __ATTRS_o_ai int
2644 vec_all_eq(vector double __a, vector double __b) {
2645  int __cc;
2646  __builtin_s390_vfcedbs(__a, __b, &__cc);
2647  return __cc == 0;
2648 }
2649 
2650 /*-- vec_all_ne -------------------------------------------------------------*/
2651 
2652 static inline __ATTRS_o_ai int
2653 vec_all_ne(vector signed char __a, vector signed char __b) {
2654  int __cc;
2655  __builtin_s390_vceqbs(__a, __b, &__cc);
2656  return __cc == 3;
2657 }
2658 
2659 // This prototype is deprecated.
2660 static inline __ATTRS_o_ai int
2661 vec_all_ne(vector signed char __a, vector bool char __b) {
2662  int __cc;
2663  __builtin_s390_vceqbs(__a, (vector signed char)__b, &__cc);
2664  return __cc == 3;
2665 }
2666 
2667 // This prototype is deprecated.
2668 static inline __ATTRS_o_ai int
2669 vec_all_ne(vector bool char __a, vector signed char __b) {
2670  int __cc;
2671  __builtin_s390_vceqbs((vector signed char)__a, __b, &__cc);
2672  return __cc == 3;
2673 }
2674 
2675 static inline __ATTRS_o_ai int
2676 vec_all_ne(vector unsigned char __a, vector unsigned char __b) {
2677  int __cc;
2678  __builtin_s390_vceqbs((vector signed char)__a,
2679  (vector signed char)__b, &__cc);
2680  return __cc == 3;
2681 }
2682 
2683 // This prototype is deprecated.
2684 static inline __ATTRS_o_ai int
2685 vec_all_ne(vector unsigned char __a, vector bool char __b) {
2686  int __cc;
2687  __builtin_s390_vceqbs((vector signed char)__a,
2688  (vector signed char)__b, &__cc);
2689  return __cc == 3;
2690 }
2691 
2692 // This prototype is deprecated.
2693 static inline __ATTRS_o_ai int
2694 vec_all_ne(vector bool char __a, vector unsigned char __b) {
2695  int __cc;
2696  __builtin_s390_vceqbs((vector signed char)__a,
2697  (vector signed char)__b, &__cc);
2698  return __cc == 3;
2699 }
2700 
2701 static inline __ATTRS_o_ai int
2702 vec_all_ne(vector bool char __a, vector bool char __b) {
2703  int __cc;
2704  __builtin_s390_vceqbs((vector signed char)__a,
2705  (vector signed char)__b, &__cc);
2706  return __cc == 3;
2707 }
2708 
2709 static inline __ATTRS_o_ai int
2710 vec_all_ne(vector signed short __a, vector signed short __b) {
2711  int __cc;
2712  __builtin_s390_vceqhs(__a, __b, &__cc);
2713  return __cc == 3;
2714 }
2715 
2716 // This prototype is deprecated.
2717 static inline __ATTRS_o_ai int
2718 vec_all_ne(vector signed short __a, vector bool short __b) {
2719  int __cc;
2720  __builtin_s390_vceqhs(__a, (vector signed short)__b, &__cc);
2721  return __cc == 3;
2722 }
2723 
2724 // This prototype is deprecated.
2725 static inline __ATTRS_o_ai int
2726 vec_all_ne(vector bool short __a, vector signed short __b) {
2727  int __cc;
2728  __builtin_s390_vceqhs((vector signed short)__a, __b, &__cc);
2729  return __cc == 3;
2730 }
2731 
2732 static inline __ATTRS_o_ai int
2733 vec_all_ne(vector unsigned short __a, vector unsigned short __b) {
2734  int __cc;
2735  __builtin_s390_vceqhs((vector signed short)__a,
2736  (vector signed short)__b, &__cc);
2737  return __cc == 3;
2738 }
2739 
2740 // This prototype is deprecated.
2741 static inline __ATTRS_o_ai int
2742 vec_all_ne(vector unsigned short __a, vector bool short __b) {
2743  int __cc;
2744  __builtin_s390_vceqhs((vector signed short)__a,
2745  (vector signed short)__b, &__cc);
2746  return __cc == 3;
2747 }
2748 
2749 // This prototype is deprecated.
2750 static inline __ATTRS_o_ai int
2751 vec_all_ne(vector bool short __a, vector unsigned short __b) {
2752  int __cc;
2753  __builtin_s390_vceqhs((vector signed short)__a,
2754  (vector signed short)__b, &__cc);
2755  return __cc == 3;
2756 }
2757 
2758 static inline __ATTRS_o_ai int
2759 vec_all_ne(vector bool short __a, vector bool short __b) {
2760  int __cc;
2761  __builtin_s390_vceqhs((vector signed short)__a,
2762  (vector signed short)__b, &__cc);
2763  return __cc == 3;
2764 }
2765 
2766 static inline __ATTRS_o_ai int
2767 vec_all_ne(vector signed int __a, vector signed int __b) {
2768  int __cc;
2769  __builtin_s390_vceqfs(__a, __b, &__cc);
2770  return __cc == 3;
2771 }
2772 
2773 // This prototype is deprecated.
2774 static inline __ATTRS_o_ai int
2775 vec_all_ne(vector signed int __a, vector bool int __b) {
2776  int __cc;
2777  __builtin_s390_vceqfs(__a, (vector signed int)__b, &__cc);
2778  return __cc == 3;
2779 }
2780 
2781 // This prototype is deprecated.
2782 static inline __ATTRS_o_ai int
2783 vec_all_ne(vector bool int __a, vector signed int __b) {
2784  int __cc;
2785  __builtin_s390_vceqfs((vector signed int)__a, __b, &__cc);
2786  return __cc == 3;
2787 }
2788 
2789 static inline __ATTRS_o_ai int
2790 vec_all_ne(vector unsigned int __a, vector unsigned int __b) {
2791  int __cc;
2792  __builtin_s390_vceqfs((vector signed int)__a,
2793  (vector signed int)__b, &__cc);
2794  return __cc == 3;
2795 }
2796 
2797 // This prototype is deprecated.
2798 static inline __ATTRS_o_ai int
2799 vec_all_ne(vector unsigned int __a, vector bool int __b) {
2800  int __cc;
2801  __builtin_s390_vceqfs((vector signed int)__a,
2802  (vector signed int)__b, &__cc);
2803  return __cc == 3;
2804 }
2805 
2806 // This prototype is deprecated.
2807 static inline __ATTRS_o_ai int
2808 vec_all_ne(vector bool int __a, vector unsigned int __b) {
2809  int __cc;
2810  __builtin_s390_vceqfs((vector signed int)__a,
2811  (vector signed int)__b, &__cc);
2812  return __cc == 3;
2813 }
2814 
2815 static inline __ATTRS_o_ai int
2816 vec_all_ne(vector bool int __a, vector bool int __b) {
2817  int __cc;
2818  __builtin_s390_vceqfs((vector signed int)__a,
2819  (vector signed int)__b, &__cc);
2820  return __cc == 3;
2821 }
2822 
2823 static inline __ATTRS_o_ai int
2824 vec_all_ne(vector signed long long __a, vector signed long long __b) {
2825  int __cc;
2826  __builtin_s390_vceqgs(__a, __b, &__cc);
2827  return __cc == 3;
2828 }
2829 
2830 // This prototype is deprecated.
2831 static inline __ATTRS_o_ai int
2832 vec_all_ne(vector signed long long __a, vector bool long long __b) {
2833  int __cc;
2834  __builtin_s390_vceqgs(__a, (vector signed long long)__b, &__cc);
2835  return __cc == 3;
2836 }
2837 
2838 // This prototype is deprecated.
2839 static inline __ATTRS_o_ai int
2840 vec_all_ne(vector bool long long __a, vector signed long long __b) {
2841  int __cc;
2842  __builtin_s390_vceqgs((vector signed long long)__a, __b, &__cc);
2843  return __cc == 3;
2844 }
2845 
2846 static inline __ATTRS_o_ai int
2847 vec_all_ne(vector unsigned long long __a, vector unsigned long long __b) {
2848  int __cc;
2849  __builtin_s390_vceqgs((vector signed long long)__a,
2850  (vector signed long long)__b, &__cc);
2851  return __cc == 3;
2852 }
2853 
2854 // This prototype is deprecated.
2855 static inline __ATTRS_o_ai int
2856 vec_all_ne(vector unsigned long long __a, vector bool long long __b) {
2857  int __cc;
2858  __builtin_s390_vceqgs((vector signed long long)__a,
2859  (vector signed long long)__b, &__cc);
2860  return __cc == 3;
2861 }
2862 
2863 // This prototype is deprecated.
2864 static inline __ATTRS_o_ai int
2865 vec_all_ne(vector bool long long __a, vector unsigned long long __b) {
2866  int __cc;
2867  __builtin_s390_vceqgs((vector signed long long)__a,
2868  (vector signed long long)__b, &__cc);
2869  return __cc == 3;
2870 }
2871 
2872 static inline __ATTRS_o_ai int
2873 vec_all_ne(vector bool long long __a, vector bool long long __b) {
2874  int __cc;
2875  __builtin_s390_vceqgs((vector signed long long)__a,
2876  (vector signed long long)__b, &__cc);
2877  return __cc == 3;
2878 }
2879 
2880 #if __ARCH__ >= 12
2881 static inline __ATTRS_o_ai int
2882 vec_all_ne(vector float __a, vector float __b) {
2883  int __cc;
2884  __builtin_s390_vfcesbs(__a, __b, &__cc);
2885  return __cc == 3;
2886 }
2887 #endif
2888 
2889 static inline __ATTRS_o_ai int
2890 vec_all_ne(vector double __a, vector double __b) {
2891  int __cc;
2892  __builtin_s390_vfcedbs(__a, __b, &__cc);
2893  return __cc == 3;
2894 }
2895 
2896 /*-- vec_all_ge -------------------------------------------------------------*/
2897 
2898 static inline __ATTRS_o_ai int
2899 vec_all_ge(vector signed char __a, vector signed char __b) {
2900  int __cc;
2901  __builtin_s390_vchbs(__b, __a, &__cc);
2902  return __cc == 3;
2903 }
2904 
2905 // This prototype is deprecated.
2906 static inline __ATTRS_o_ai int
2907 vec_all_ge(vector signed char __a, vector bool char __b) {
2908  int __cc;
2909  __builtin_s390_vchbs((vector signed char)__b, __a, &__cc);
2910  return __cc == 3;
2911 }
2912 
2913 // This prototype is deprecated.
2914 static inline __ATTRS_o_ai int
2915 vec_all_ge(vector bool char __a, vector signed char __b) {
2916  int __cc;
2917  __builtin_s390_vchbs(__b, (vector signed char)__a, &__cc);
2918  return __cc == 3;
2919 }
2920 
2921 static inline __ATTRS_o_ai int
2922 vec_all_ge(vector unsigned char __a, vector unsigned char __b) {
2923  int __cc;
2924  __builtin_s390_vchlbs(__b, __a, &__cc);
2925  return __cc == 3;
2926 }
2927 
2928 // This prototype is deprecated.
2929 static inline __ATTRS_o_ai int
2930 vec_all_ge(vector unsigned char __a, vector bool char __b) {
2931  int __cc;
2932  __builtin_s390_vchlbs((vector unsigned char)__b, __a, &__cc);
2933  return __cc == 3;
2934 }
2935 
2936 // This prototype is deprecated.
2937 static inline __ATTRS_o_ai int
2938 vec_all_ge(vector bool char __a, vector unsigned char __b) {
2939  int __cc;
2940  __builtin_s390_vchlbs(__b, (vector unsigned char)__a, &__cc);
2941  return __cc == 3;
2942 }
2943 
2944 // This prototype is deprecated.
2945 static inline __ATTRS_o_ai int
2946 vec_all_ge(vector bool char __a, vector bool char __b) {
2947  int __cc;
2948  __builtin_s390_vchlbs((vector unsigned char)__b,
2949  (vector unsigned char)__a, &__cc);
2950  return __cc == 3;
2951 }
2952 
2953 static inline __ATTRS_o_ai int
2954 vec_all_ge(vector signed short __a, vector signed short __b) {
2955  int __cc;
2956  __builtin_s390_vchhs(__b, __a, &__cc);
2957  return __cc == 3;
2958 }
2959 
2960 // This prototype is deprecated.
2961 static inline __ATTRS_o_ai int
2962 vec_all_ge(vector signed short __a, vector bool short __b) {
2963  int __cc;
2964  __builtin_s390_vchhs((vector signed short)__b, __a, &__cc);
2965  return __cc == 3;
2966 }
2967 
2968 // This prototype is deprecated.
2969 static inline __ATTRS_o_ai int
2970 vec_all_ge(vector bool short __a, vector signed short __b) {
2971  int __cc;
2972  __builtin_s390_vchhs(__b, (vector signed short)__a, &__cc);
2973  return __cc == 3;
2974 }
2975 
2976 static inline __ATTRS_o_ai int
2977 vec_all_ge(vector unsigned short __a, vector unsigned short __b) {
2978  int __cc;
2979  __builtin_s390_vchlhs(__b, __a, &__cc);
2980  return __cc == 3;
2981 }
2982 
2983 // This prototype is deprecated.
2984 static inline __ATTRS_o_ai int
2985 vec_all_ge(vector unsigned short __a, vector bool short __b) {
2986  int __cc;
2987  __builtin_s390_vchlhs((vector unsigned short)__b, __a, &__cc);
2988  return __cc == 3;
2989 }
2990 
2991 // This prototype is deprecated.
2992 static inline __ATTRS_o_ai int
2993 vec_all_ge(vector bool short __a, vector unsigned short __b) {
2994  int __cc;
2995  __builtin_s390_vchlhs(__b, (vector unsigned short)__a, &__cc);
2996  return __cc == 3;
2997 }
2998 
2999 // This prototype is deprecated.
3000 static inline __ATTRS_o_ai int
3001 vec_all_ge(vector bool short __a, vector bool short __b) {
3002  int __cc;
3003  __builtin_s390_vchlhs((vector unsigned short)__b,
3004  (vector unsigned short)__a, &__cc);
3005  return __cc == 3;
3006 }
3007 
3008 static inline __ATTRS_o_ai int
3009 vec_all_ge(vector signed int __a, vector signed int __b) {
3010  int __cc;
3011  __builtin_s390_vchfs(__b, __a, &__cc);
3012  return __cc == 3;
3013 }
3014 
3015 // This prototype is deprecated.
3016 static inline __ATTRS_o_ai int
3017 vec_all_ge(vector signed int __a, vector bool int __b) {
3018  int __cc;
3019  __builtin_s390_vchfs((vector signed int)__b, __a, &__cc);
3020  return __cc == 3;
3021 }
3022 
3023 // This prototype is deprecated.
3024 static inline __ATTRS_o_ai int
3025 vec_all_ge(vector bool int __a, vector signed int __b) {
3026  int __cc;
3027  __builtin_s390_vchfs(__b, (vector signed int)__a, &__cc);
3028  return __cc == 3;
3029 }
3030 
3031 static inline __ATTRS_o_ai int
3032 vec_all_ge(vector unsigned int __a, vector unsigned int __b) {
3033  int __cc;
3034  __builtin_s390_vchlfs(__b, __a, &__cc);
3035  return __cc == 3;
3036 }
3037 
3038 // This prototype is deprecated.
3039 static inline __ATTRS_o_ai int
3040 vec_all_ge(vector unsigned int __a, vector bool int __b) {
3041  int __cc;
3042  __builtin_s390_vchlfs((vector unsigned int)__b, __a, &__cc);
3043  return __cc == 3;
3044 }
3045 
3046 // This prototype is deprecated.
3047 static inline __ATTRS_o_ai int
3048 vec_all_ge(vector bool int __a, vector unsigned int __b) {
3049  int __cc;
3050  __builtin_s390_vchlfs(__b, (vector unsigned int)__a, &__cc);
3051  return __cc == 3;
3052 }
3053 
3054 // This prototype is deprecated.
3055 static inline __ATTRS_o_ai int
3056 vec_all_ge(vector bool int __a, vector bool int __b) {
3057  int __cc;
3058  __builtin_s390_vchlfs((vector unsigned int)__b,
3059  (vector unsigned int)__a, &__cc);
3060  return __cc == 3;
3061 }
3062 
3063 static inline __ATTRS_o_ai int
3064 vec_all_ge(vector signed long long __a, vector signed long long __b) {
3065  int __cc;
3066  __builtin_s390_vchgs(__b, __a, &__cc);
3067  return __cc == 3;
3068 }
3069 
3070 // This prototype is deprecated.
3071 static inline __ATTRS_o_ai int
3072 vec_all_ge(vector signed long long __a, vector bool long long __b) {
3073  int __cc;
3074  __builtin_s390_vchgs((vector signed long long)__b, __a, &__cc);
3075  return __cc == 3;
3076 }
3077 
3078 // This prototype is deprecated.
3079 static inline __ATTRS_o_ai int
3080 vec_all_ge(vector bool long long __a, vector signed long long __b) {
3081  int __cc;
3082  __builtin_s390_vchgs(__b, (vector signed long long)__a, &__cc);
3083  return __cc == 3;
3084 }
3085 
3086 static inline __ATTRS_o_ai int
3087 vec_all_ge(vector unsigned long long __a, vector unsigned long long __b) {
3088  int __cc;
3089  __builtin_s390_vchlgs(__b, __a, &__cc);
3090  return __cc == 3;
3091 }
3092 
3093 // This prototype is deprecated.
3094 static inline __ATTRS_o_ai int
3095 vec_all_ge(vector unsigned long long __a, vector bool long long __b) {
3096  int __cc;
3097  __builtin_s390_vchlgs((vector unsigned long long)__b, __a, &__cc);
3098  return __cc == 3;
3099 }
3100 
3101 // This prototype is deprecated.
3102 static inline __ATTRS_o_ai int
3103 vec_all_ge(vector bool long long __a, vector unsigned long long __b) {
3104  int __cc;
3105  __builtin_s390_vchlgs(__b, (vector unsigned long long)__a, &__cc);
3106  return __cc == 3;
3107 }
3108 
3109 // This prototype is deprecated.
3110 static inline __ATTRS_o_ai int
3111 vec_all_ge(vector bool long long __a, vector bool long long __b) {
3112  int __cc;
3113  __builtin_s390_vchlgs((vector unsigned long long)__b,
3114  (vector unsigned long long)__a, &__cc);
3115  return __cc == 3;
3116 }
3117 
3118 #if __ARCH__ >= 12
3119 static inline __ATTRS_o_ai int
3120 vec_all_ge(vector float __a, vector float __b) {
3121  int __cc;
3122  __builtin_s390_vfchesbs(__a, __b, &__cc);
3123  return __cc == 0;
3124 }
3125 #endif
3126 
3127 static inline __ATTRS_o_ai int
3128 vec_all_ge(vector double __a, vector double __b) {
3129  int __cc;
3130  __builtin_s390_vfchedbs(__a, __b, &__cc);
3131  return __cc == 0;
3132 }
3133 
3134 /*-- vec_all_gt -------------------------------------------------------------*/
3135 
3136 static inline __ATTRS_o_ai int
3137 vec_all_gt(vector signed char __a, vector signed char __b) {
3138  int __cc;
3139  __builtin_s390_vchbs(__a, __b, &__cc);
3140  return __cc == 0;
3141 }
3142 
3143 // This prototype is deprecated.
3144 static inline __ATTRS_o_ai int
3145 vec_all_gt(vector signed char __a, vector bool char __b) {
3146  int __cc;
3147  __builtin_s390_vchbs(__a, (vector signed char)__b, &__cc);
3148  return __cc == 0;
3149 }
3150 
3151 // This prototype is deprecated.
3152 static inline __ATTRS_o_ai int
3153 vec_all_gt(vector bool char __a, vector signed char __b) {
3154  int __cc;
3155  __builtin_s390_vchbs((vector signed char)__a, __b, &__cc);
3156  return __cc == 0;
3157 }
3158 
3159 static inline __ATTRS_o_ai int
3160 vec_all_gt(vector unsigned char __a, vector unsigned char __b) {
3161  int __cc;
3162  __builtin_s390_vchlbs(__a, __b, &__cc);
3163  return __cc == 0;
3164 }
3165 
3166 // This prototype is deprecated.
3167 static inline __ATTRS_o_ai int
3168 vec_all_gt(vector unsigned char __a, vector bool char __b) {
3169  int __cc;
3170  __builtin_s390_vchlbs(__a, (vector unsigned char)__b, &__cc);
3171  return __cc == 0;
3172 }
3173 
3174 // This prototype is deprecated.
3175 static inline __ATTRS_o_ai int
3176 vec_all_gt(vector bool char __a, vector unsigned char __b) {
3177  int __cc;
3178  __builtin_s390_vchlbs((vector unsigned char)__a, __b, &__cc);
3179  return __cc == 0;
3180 }
3181 
3182 // This prototype is deprecated.
3183 static inline __ATTRS_o_ai int
3184 vec_all_gt(vector bool char __a, vector bool char __b) {
3185  int __cc;
3186  __builtin_s390_vchlbs((vector unsigned char)__a,
3187  (vector unsigned char)__b, &__cc);
3188  return __cc == 0;
3189 }
3190 
3191 static inline __ATTRS_o_ai int
3192 vec_all_gt(vector signed short __a, vector signed short __b) {
3193  int __cc;
3194  __builtin_s390_vchhs(__a, __b, &__cc);
3195  return __cc == 0;
3196 }
3197 
3198 // This prototype is deprecated.
3199 static inline __ATTRS_o_ai int
3200 vec_all_gt(vector signed short __a, vector bool short __b) {
3201  int __cc;
3202  __builtin_s390_vchhs(__a, (vector signed short)__b, &__cc);
3203  return __cc == 0;
3204 }
3205 
3206 // This prototype is deprecated.
3207 static inline __ATTRS_o_ai int
3208 vec_all_gt(vector bool short __a, vector signed short __b) {
3209  int __cc;
3210  __builtin_s390_vchhs((vector signed short)__a, __b, &__cc);
3211  return __cc == 0;
3212 }
3213 
3214 static inline __ATTRS_o_ai int
3215 vec_all_gt(vector unsigned short __a, vector unsigned short __b) {
3216  int __cc;
3217  __builtin_s390_vchlhs(__a, __b, &__cc);
3218  return __cc == 0;
3219 }
3220 
3221 // This prototype is deprecated.
3222 static inline __ATTRS_o_ai int
3223 vec_all_gt(vector unsigned short __a, vector bool short __b) {
3224  int __cc;
3225  __builtin_s390_vchlhs(__a, (vector unsigned short)__b, &__cc);
3226  return __cc == 0;
3227 }
3228 
3229 // This prototype is deprecated.
3230 static inline __ATTRS_o_ai int
3231 vec_all_gt(vector bool short __a, vector unsigned short __b) {
3232  int __cc;
3233  __builtin_s390_vchlhs((vector unsigned short)__a, __b, &__cc);
3234  return __cc == 0;
3235 }
3236 
3237 // This prototype is deprecated.
3238 static inline __ATTRS_o_ai int
3239 vec_all_gt(vector bool short __a, vector bool short __b) {
3240  int __cc;
3241  __builtin_s390_vchlhs((vector unsigned short)__a,
3242  (vector unsigned short)__b, &__cc);
3243  return __cc == 0;
3244 }
3245 
3246 static inline __ATTRS_o_ai int
3247 vec_all_gt(vector signed int __a, vector signed int __b) {
3248  int __cc;
3249  __builtin_s390_vchfs(__a, __b, &__cc);
3250  return __cc == 0;
3251 }
3252 
3253 // This prototype is deprecated.
3254 static inline __ATTRS_o_ai int
3255 vec_all_gt(vector signed int __a, vector bool int __b) {
3256  int __cc;
3257  __builtin_s390_vchfs(__a, (vector signed int)__b, &__cc);
3258  return __cc == 0;
3259 }
3260 
3261 // This prototype is deprecated.
3262 static inline __ATTRS_o_ai int
3263 vec_all_gt(vector bool int __a, vector signed int __b) {
3264  int __cc;
3265  __builtin_s390_vchfs((vector signed int)__a, __b, &__cc);
3266  return __cc == 0;
3267 }
3268 
3269 static inline __ATTRS_o_ai int
3270 vec_all_gt(vector unsigned int __a, vector unsigned int __b) {
3271  int __cc;
3272  __builtin_s390_vchlfs(__a, __b, &__cc);
3273  return __cc == 0;
3274 }
3275 
3276 // This prototype is deprecated.
3277 static inline __ATTRS_o_ai int
3278 vec_all_gt(vector unsigned int __a, vector bool int __b) {
3279  int __cc;
3280  __builtin_s390_vchlfs(__a, (vector unsigned int)__b, &__cc);
3281  return __cc == 0;
3282 }
3283 
3284 // This prototype is deprecated.
3285 static inline __ATTRS_o_ai int
3286 vec_all_gt(vector bool int __a, vector unsigned int __b) {
3287  int __cc;
3288  __builtin_s390_vchlfs((vector unsigned int)__a, __b, &__cc);
3289  return __cc == 0;
3290 }
3291 
3292 // This prototype is deprecated.
3293 static inline __ATTRS_o_ai int
3294 vec_all_gt(vector bool int __a, vector bool int __b) {
3295  int __cc;
3296  __builtin_s390_vchlfs((vector unsigned int)__a,
3297  (vector unsigned int)__b, &__cc);
3298  return __cc == 0;
3299 }
3300 
3301 static inline __ATTRS_o_ai int
3302 vec_all_gt(vector signed long long __a, vector signed long long __b) {
3303  int __cc;
3304  __builtin_s390_vchgs(__a, __b, &__cc);
3305  return __cc == 0;
3306 }
3307 
3308 // This prototype is deprecated.
3309 static inline __ATTRS_o_ai int
3310 vec_all_gt(vector signed long long __a, vector bool long long __b) {
3311  int __cc;
3312  __builtin_s390_vchgs(__a, (vector signed long long)__b, &__cc);
3313  return __cc == 0;
3314 }
3315 
3316 // This prototype is deprecated.
3317 static inline __ATTRS_o_ai int
3318 vec_all_gt(vector bool long long __a, vector signed long long __b) {
3319  int __cc;
3320  __builtin_s390_vchgs((vector signed long long)__a, __b, &__cc);
3321  return __cc == 0;
3322 }
3323 
3324 static inline __ATTRS_o_ai int
3325 vec_all_gt(vector unsigned long long __a, vector unsigned long long __b) {
3326  int __cc;
3327  __builtin_s390_vchlgs(__a, __b, &__cc);
3328  return __cc == 0;
3329 }
3330 
3331 // This prototype is deprecated.
3332 static inline __ATTRS_o_ai int
3333 vec_all_gt(vector unsigned long long __a, vector bool long long __b) {
3334  int __cc;
3335  __builtin_s390_vchlgs(__a, (vector unsigned long long)__b, &__cc);
3336  return __cc == 0;
3337 }
3338 
3339 // This prototype is deprecated.
3340 static inline __ATTRS_o_ai int
3341 vec_all_gt(vector bool long long __a, vector unsigned long long __b) {
3342  int __cc;
3343  __builtin_s390_vchlgs((vector unsigned long long)__a, __b, &__cc);
3344  return __cc == 0;
3345 }
3346 
3347 // This prototype is deprecated.
3348 static inline __ATTRS_o_ai int
3349 vec_all_gt(vector bool long long __a, vector bool long long __b) {
3350  int __cc;
3351  __builtin_s390_vchlgs((vector unsigned long long)__a,
3352  (vector unsigned long long)__b, &__cc);
3353  return __cc == 0;
3354 }
3355 
3356 #if __ARCH__ >= 12
3357 static inline __ATTRS_o_ai int
3358 vec_all_gt(vector float __a, vector float __b) {
3359  int __cc;
3360  __builtin_s390_vfchsbs(__a, __b, &__cc);
3361  return __cc == 0;
3362 }
3363 #endif
3364 
3365 static inline __ATTRS_o_ai int
3366 vec_all_gt(vector double __a, vector double __b) {
3367  int __cc;
3368  __builtin_s390_vfchdbs(__a, __b, &__cc);
3369  return __cc == 0;
3370 }
3371 
3372 /*-- vec_all_le -------------------------------------------------------------*/
3373 
3374 static inline __ATTRS_o_ai int
3375 vec_all_le(vector signed char __a, vector signed char __b) {
3376  int __cc;
3377  __builtin_s390_vchbs(__a, __b, &__cc);
3378  return __cc == 3;
3379 }
3380 
3381 // This prototype is deprecated.
3382 static inline __ATTRS_o_ai int
3383 vec_all_le(vector signed char __a, vector bool char __b) {
3384  int __cc;
3385  __builtin_s390_vchbs(__a, (vector signed char)__b, &__cc);
3386  return __cc == 3;
3387 }
3388 
3389 // This prototype is deprecated.
3390 static inline __ATTRS_o_ai int
3391 vec_all_le(vector bool char __a, vector signed char __b) {
3392  int __cc;
3393  __builtin_s390_vchbs((vector signed char)__a, __b, &__cc);
3394  return __cc == 3;
3395 }
3396 
3397 static inline __ATTRS_o_ai int
3398 vec_all_le(vector unsigned char __a, vector unsigned char __b) {
3399  int __cc;
3400  __builtin_s390_vchlbs(__a, __b, &__cc);
3401  return __cc == 3;
3402 }
3403 
3404 // This prototype is deprecated.
3405 static inline __ATTRS_o_ai int
3406 vec_all_le(vector unsigned char __a, vector bool char __b) {
3407  int __cc;
3408  __builtin_s390_vchlbs(__a, (vector unsigned char)__b, &__cc);
3409  return __cc == 3;
3410 }
3411 
3412 // This prototype is deprecated.
3413 static inline __ATTRS_o_ai int
3414 vec_all_le(vector bool char __a, vector unsigned char __b) {
3415  int __cc;
3416  __builtin_s390_vchlbs((vector unsigned char)__a, __b, &__cc);
3417  return __cc == 3;
3418 }
3419 
3420 // This prototype is deprecated.
3421 static inline __ATTRS_o_ai int
3422 vec_all_le(vector bool char __a, vector bool char __b) {
3423  int __cc;
3424  __builtin_s390_vchlbs((vector unsigned char)__a,
3425  (vector unsigned char)__b, &__cc);
3426  return __cc == 3;
3427 }
3428 
3429 static inline __ATTRS_o_ai int
3430 vec_all_le(vector signed short __a, vector signed short __b) {
3431  int __cc;
3432  __builtin_s390_vchhs(__a, __b, &__cc);
3433  return __cc == 3;
3434 }
3435 
3436 // This prototype is deprecated.
3437 static inline __ATTRS_o_ai int
3438 vec_all_le(vector signed short __a, vector bool short __b) {
3439  int __cc;
3440  __builtin_s390_vchhs(__a, (vector signed short)__b, &__cc);
3441  return __cc == 3;
3442 }
3443 
3444 // This prototype is deprecated.
3445 static inline __ATTRS_o_ai int
3446 vec_all_le(vector bool short __a, vector signed short __b) {
3447  int __cc;
3448  __builtin_s390_vchhs((vector signed short)__a, __b, &__cc);
3449  return __cc == 3;
3450 }
3451 
3452 static inline __ATTRS_o_ai int
3453 vec_all_le(vector unsigned short __a, vector unsigned short __b) {
3454  int __cc;
3455  __builtin_s390_vchlhs(__a, __b, &__cc);
3456  return __cc == 3;
3457 }
3458 
3459 // This prototype is deprecated.
3460 static inline __ATTRS_o_ai int
3461 vec_all_le(vector unsigned short __a, vector bool short __b) {
3462  int __cc;
3463  __builtin_s390_vchlhs(__a, (vector unsigned short)__b, &__cc);
3464  return __cc == 3;
3465 }
3466 
3467 // This prototype is deprecated.
3468 static inline __ATTRS_o_ai int
3469 vec_all_le(vector bool short __a, vector unsigned short __b) {
3470  int __cc;
3471  __builtin_s390_vchlhs((vector unsigned short)__a, __b, &__cc);
3472  return __cc == 3;
3473 }
3474 
3475 // This prototype is deprecated.
3476 static inline __ATTRS_o_ai int
3477 vec_all_le(vector bool short __a, vector bool short __b) {
3478  int __cc;
3479  __builtin_s390_vchlhs((vector unsigned short)__a,
3480  (vector unsigned short)__b, &__cc);
3481  return __cc == 3;
3482 }
3483 
3484 static inline __ATTRS_o_ai int
3485 vec_all_le(vector signed int __a, vector signed int __b) {
3486  int __cc;
3487  __builtin_s390_vchfs(__a, __b, &__cc);
3488  return __cc == 3;
3489 }
3490 
3491 // This prototype is deprecated.
3492 static inline __ATTRS_o_ai int
3493 vec_all_le(vector signed int __a, vector bool int __b) {
3494  int __cc;
3495  __builtin_s390_vchfs(__a, (vector signed int)__b, &__cc);
3496  return __cc == 3;
3497 }
3498 
3499 // This prototype is deprecated.
3500 static inline __ATTRS_o_ai int
3501 vec_all_le(vector bool int __a, vector signed int __b) {
3502  int __cc;
3503  __builtin_s390_vchfs((vector signed int)__a, __b, &__cc);
3504  return __cc == 3;
3505 }
3506 
3507 static inline __ATTRS_o_ai int
3508 vec_all_le(vector unsigned int __a, vector unsigned int __b) {
3509  int __cc;
3510  __builtin_s390_vchlfs(__a, __b, &__cc);
3511  return __cc == 3;
3512 }
3513 
3514 // This prototype is deprecated.
3515 static inline __ATTRS_o_ai int
3516 vec_all_le(vector unsigned int __a, vector bool int __b) {
3517  int __cc;
3518  __builtin_s390_vchlfs(__a, (vector unsigned int)__b, &__cc);
3519  return __cc == 3;
3520 }
3521 
3522 // This prototype is deprecated.
3523 static inline __ATTRS_o_ai int
3524 vec_all_le(vector bool int __a, vector unsigned int __b) {
3525  int __cc;
3526  __builtin_s390_vchlfs((vector unsigned int)__a, __b, &__cc);
3527  return __cc == 3;
3528 }
3529 
3530 // This prototype is deprecated.
3531 static inline __ATTRS_o_ai int
3532 vec_all_le(vector bool int __a, vector bool int __b) {
3533  int __cc;
3534  __builtin_s390_vchlfs((vector unsigned int)__a,
3535  (vector unsigned int)__b, &__cc);
3536  return __cc == 3;
3537 }
3538 
3539 static inline __ATTRS_o_ai int
3540 vec_all_le(vector signed long long __a, vector signed long long __b) {
3541  int __cc;
3542  __builtin_s390_vchgs(__a, __b, &__cc);
3543  return __cc == 3;
3544 }
3545 
3546 // This prototype is deprecated.
3547 static inline __ATTRS_o_ai int
3548 vec_all_le(vector signed long long __a, vector bool long long __b) {
3549  int __cc;
3550  __builtin_s390_vchgs(__a, (vector signed long long)__b, &__cc);
3551  return __cc == 3;
3552 }
3553 
3554 // This prototype is deprecated.
3555 static inline __ATTRS_o_ai int
3556 vec_all_le(vector bool long long __a, vector signed long long __b) {
3557  int __cc;
3558  __builtin_s390_vchgs((vector signed long long)__a, __b, &__cc);
3559  return __cc == 3;
3560 }
3561 
3562 static inline __ATTRS_o_ai int
3563 vec_all_le(vector unsigned long long __a, vector unsigned long long __b) {
3564  int __cc;
3565  __builtin_s390_vchlgs(__a, __b, &__cc);
3566  return __cc == 3;
3567 }
3568 
3569 // This prototype is deprecated.
3570 static inline __ATTRS_o_ai int
3571 vec_all_le(vector unsigned long long __a, vector bool long long __b) {
3572  int __cc;
3573  __builtin_s390_vchlgs(__a, (vector unsigned long long)__b, &__cc);
3574  return __cc == 3;
3575 }
3576 
3577 // This prototype is deprecated.
3578 static inline __ATTRS_o_ai int
3579 vec_all_le(vector bool long long __a, vector unsigned long long __b) {
3580  int __cc;
3581  __builtin_s390_vchlgs((vector unsigned long long)__a, __b, &__cc);
3582  return __cc == 3;
3583 }
3584 
3585 // This prototype is deprecated.
3586 static inline __ATTRS_o_ai int
3587 vec_all_le(vector bool long long __a, vector bool long long __b) {
3588  int __cc;
3589  __builtin_s390_vchlgs((vector unsigned long long)__a,
3590  (vector unsigned long long)__b, &__cc);
3591  return __cc == 3;
3592 }
3593 
3594 #if __ARCH__ >= 12
3595 static inline __ATTRS_o_ai int
3596 vec_all_le(vector float __a, vector float __b) {
3597  int __cc;
3598  __builtin_s390_vfchesbs(__b, __a, &__cc);
3599  return __cc == 0;
3600 }
3601 #endif
3602 
3603 static inline __ATTRS_o_ai int
3604 vec_all_le(vector double __a, vector double __b) {
3605  int __cc;
3606  __builtin_s390_vfchedbs(__b, __a, &__cc);
3607  return __cc == 0;
3608 }
3609 
3610 /*-- vec_all_lt -------------------------------------------------------------*/
3611 
3612 static inline __ATTRS_o_ai int
3613 vec_all_lt(vector signed char __a, vector signed char __b) {
3614  int __cc;
3615  __builtin_s390_vchbs(__b, __a, &__cc);
3616  return __cc == 0;
3617 }
3618 
3619 // This prototype is deprecated.
3620 static inline __ATTRS_o_ai int
3621 vec_all_lt(vector signed char __a, vector bool char __b) {
3622  int __cc;
3623  __builtin_s390_vchbs((vector signed char)__b, __a, &__cc);
3624  return __cc == 0;
3625 }
3626 
3627 // This prototype is deprecated.
3628 static inline __ATTRS_o_ai int
3629 vec_all_lt(vector bool char __a, vector signed char __b) {
3630  int __cc;
3631  __builtin_s390_vchbs(__b, (vector signed char)__a, &__cc);
3632  return __cc == 0;
3633 }
3634 
3635 static inline __ATTRS_o_ai int
3636 vec_all_lt(vector unsigned char __a, vector unsigned char __b) {
3637  int __cc;
3638  __builtin_s390_vchlbs(__b, __a, &__cc);
3639  return __cc == 0;
3640 }
3641 
3642 // This prototype is deprecated.
3643 static inline __ATTRS_o_ai int
3644 vec_all_lt(vector unsigned char __a, vector bool char __b) {
3645  int __cc;
3646  __builtin_s390_vchlbs((vector unsigned char)__b, __a, &__cc);
3647  return __cc == 0;
3648 }
3649 
3650 // This prototype is deprecated.
3651 static inline __ATTRS_o_ai int
3652 vec_all_lt(vector bool char __a, vector unsigned char __b) {
3653  int __cc;
3654  __builtin_s390_vchlbs(__b, (vector unsigned char)__a, &__cc);
3655  return __cc == 0;
3656 }
3657 
3658 // This prototype is deprecated.
3659 static inline __ATTRS_o_ai int
3660 vec_all_lt(vector bool char __a, vector bool char __b) {
3661  int __cc;
3662  __builtin_s390_vchlbs((vector unsigned char)__b,
3663  (vector unsigned char)__a, &__cc);
3664  return __cc == 0;
3665 }
3666 
3667 static inline __ATTRS_o_ai int
3668 vec_all_lt(vector signed short __a, vector signed short __b) {
3669  int __cc;
3670  __builtin_s390_vchhs(__b, __a, &__cc);
3671  return __cc == 0;
3672 }
3673 
3674 // This prototype is deprecated.
3675 static inline __ATTRS_o_ai int
3676 vec_all_lt(vector signed short __a, vector bool short __b) {
3677  int __cc;
3678  __builtin_s390_vchhs((vector signed short)__b, __a, &__cc);
3679  return __cc == 0;
3680 }
3681 
3682 // This prototype is deprecated.
3683 static inline __ATTRS_o_ai int
3684 vec_all_lt(vector bool short __a, vector signed short __b) {
3685  int __cc;
3686  __builtin_s390_vchhs(__b, (vector signed short)__a, &__cc);
3687  return __cc == 0;
3688 }
3689 
3690 static inline __ATTRS_o_ai int
3691 vec_all_lt(vector unsigned short __a, vector unsigned short __b) {
3692  int __cc;
3693  __builtin_s390_vchlhs(__b, __a, &__cc);
3694  return __cc == 0;
3695 }
3696 
3697 // This prototype is deprecated.
3698 static inline __ATTRS_o_ai int
3699 vec_all_lt(vector unsigned short __a, vector bool short __b) {
3700  int __cc;
3701  __builtin_s390_vchlhs((vector unsigned short)__b, __a, &__cc);
3702  return __cc == 0;
3703 }
3704 
3705 // This prototype is deprecated.
3706 static inline __ATTRS_o_ai int
3707 vec_all_lt(vector bool short __a, vector unsigned short __b) {
3708  int __cc;
3709  __builtin_s390_vchlhs(__b, (vector unsigned short)__a, &__cc);
3710  return __cc == 0;
3711 }
3712 
3713 // This prototype is deprecated.
3714 static inline __ATTRS_o_ai int
3715 vec_all_lt(vector bool short __a, vector bool short __b) {
3716  int __cc;
3717  __builtin_s390_vchlhs((vector unsigned short)__b,
3718  (vector unsigned short)__a, &__cc);
3719  return __cc == 0;
3720 }
3721 
3722 static inline __ATTRS_o_ai int
3723 vec_all_lt(vector signed int __a, vector signed int __b) {
3724  int __cc;
3725  __builtin_s390_vchfs(__b, __a, &__cc);
3726  return __cc == 0;
3727 }
3728 
3729 // This prototype is deprecated.
3730 static inline __ATTRS_o_ai int
3731 vec_all_lt(vector signed int __a, vector bool int __b) {
3732  int __cc;
3733  __builtin_s390_vchfs((vector signed int)__b, __a, &__cc);
3734  return __cc == 0;
3735 }
3736 
3737 // This prototype is deprecated.
3738 static inline __ATTRS_o_ai int
3739 vec_all_lt(vector bool int __a, vector signed int __b) {
3740  int __cc;
3741  __builtin_s390_vchfs(__b, (vector signed int)__a, &__cc);
3742  return __cc == 0;
3743 }
3744 
3745 static inline __ATTRS_o_ai int
3746 vec_all_lt(vector unsigned int __a, vector unsigned int __b) {
3747  int __cc;
3748  __builtin_s390_vchlfs(__b, __a, &__cc);
3749  return __cc == 0;
3750 }
3751 
3752 // This prototype is deprecated.
3753 static inline __ATTRS_o_ai int
3754 vec_all_lt(vector unsigned int __a, vector bool int __b) {
3755  int __cc;
3756  __builtin_s390_vchlfs((vector unsigned int)__b, __a, &__cc);
3757  return __cc == 0;
3758 }
3759 
3760 // This prototype is deprecated.
3761 static inline __ATTRS_o_ai int
3762 vec_all_lt(vector bool int __a, vector unsigned int __b) {
3763  int __cc;
3764  __builtin_s390_vchlfs(__b, (vector unsigned int)__a, &__cc);
3765  return __cc == 0;
3766 }
3767 
3768 // This prototype is deprecated.
3769 static inline __ATTRS_o_ai int
3770 vec_all_lt(vector bool int __a, vector bool int __b) {
3771  int __cc;
3772  __builtin_s390_vchlfs((vector unsigned int)__b,
3773  (vector unsigned int)__a, &__cc);
3774  return __cc == 0;
3775 }
3776 
3777 static inline __ATTRS_o_ai int
3778 vec_all_lt(vector signed long long __a, vector signed long long __b) {
3779  int __cc;
3780  __builtin_s390_vchgs(__b, __a, &__cc);
3781  return __cc == 0;
3782 }
3783 
3784 // This prototype is deprecated.
3785 static inline __ATTRS_o_ai int
3786 vec_all_lt(vector signed long long __a, vector bool long long __b) {
3787  int __cc;
3788  __builtin_s390_vchgs((vector signed long long)__b, __a, &__cc);
3789  return __cc == 0;
3790 }
3791 
3792 // This prototype is deprecated.
3793 static inline __ATTRS_o_ai int
3794 vec_all_lt(vector bool long long __a, vector signed long long __b) {
3795  int __cc;
3796  __builtin_s390_vchgs(__b, (vector signed long long)__a, &__cc);
3797  return __cc == 0;
3798 }
3799 
3800 static inline __ATTRS_o_ai int
3801 vec_all_lt(vector unsigned long long __a, vector unsigned long long __b) {
3802  int __cc;
3803  __builtin_s390_vchlgs(__b, __a, &__cc);
3804  return __cc == 0;
3805 }
3806 
3807 // This prototype is deprecated.
3808 static inline __ATTRS_o_ai int
3809 vec_all_lt(vector unsigned long long __a, vector bool long long __b) {
3810  int __cc;
3811  __builtin_s390_vchlgs((vector unsigned long long)__b, __a, &__cc);
3812  return __cc == 0;
3813 }
3814 
3815 // This prototype is deprecated.
3816 static inline __ATTRS_o_ai int
3817 vec_all_lt(vector bool long long __a, vector unsigned long long __b) {
3818  int __cc;
3819  __builtin_s390_vchlgs(__b, (vector unsigned long long)__a, &__cc);
3820  return __cc == 0;
3821 }
3822 
3823 // This prototype is deprecated.
3824 static inline __ATTRS_o_ai int
3825 vec_all_lt(vector bool long long __a, vector bool long long __b) {
3826  int __cc;
3827  __builtin_s390_vchlgs((vector unsigned long long)__b,
3828  (vector unsigned long long)__a, &__cc);
3829  return __cc == 0;
3830 }
3831 
3832 #if __ARCH__ >= 12
3833 static inline __ATTRS_o_ai int
3834 vec_all_lt(vector float __a, vector float __b) {
3835  int __cc;
3836  __builtin_s390_vfchsbs(__b, __a, &__cc);
3837  return __cc == 0;
3838 }
3839 #endif
3840 
3841 static inline __ATTRS_o_ai int
3842 vec_all_lt(vector double __a, vector double __b) {
3843  int __cc;
3844  __builtin_s390_vfchdbs(__b, __a, &__cc);
3845  return __cc == 0;
3846 }
3847 
3848 /*-- vec_all_nge ------------------------------------------------------------*/
3849 
3850 #if __ARCH__ >= 12
3851 static inline __ATTRS_o_ai int
3852 vec_all_nge(vector float __a, vector float __b) {
3853  int __cc;
3854  __builtin_s390_vfchesbs(__a, __b, &__cc);
3855  return __cc == 3;
3856 }
3857 #endif
3858 
3859 static inline __ATTRS_o_ai int
3860 vec_all_nge(vector double __a, vector double __b) {
3861  int __cc;
3862  __builtin_s390_vfchedbs(__a, __b, &__cc);
3863  return __cc == 3;
3864 }
3865 
3866 /*-- vec_all_ngt ------------------------------------------------------------*/
3867 
3868 #if __ARCH__ >= 12
3869 static inline __ATTRS_o_ai int
3870 vec_all_ngt(vector float __a, vector float __b) {
3871  int __cc;
3872  __builtin_s390_vfchsbs(__a, __b, &__cc);
3873  return __cc == 3;
3874 }
3875 #endif
3876 
3877 static inline __ATTRS_o_ai int
3878 vec_all_ngt(vector double __a, vector double __b) {
3879  int __cc;
3880  __builtin_s390_vfchdbs(__a, __b, &__cc);
3881  return __cc == 3;
3882 }
3883 
3884 /*-- vec_all_nle ------------------------------------------------------------*/
3885 
3886 #if __ARCH__ >= 12
3887 static inline __ATTRS_o_ai int
3888 vec_all_nle(vector float __a, vector float __b) {
3889  int __cc;
3890  __builtin_s390_vfchesbs(__b, __a, &__cc);
3891  return __cc == 3;
3892 }
3893 #endif
3894 
3895 static inline __ATTRS_o_ai int
3896 vec_all_nle(vector double __a, vector double __b) {
3897  int __cc;
3898  __builtin_s390_vfchedbs(__b, __a, &__cc);
3899  return __cc == 3;
3900 }
3901 
3902 /*-- vec_all_nlt ------------------------------------------------------------*/
3903 
3904 #if __ARCH__ >= 12
3905 static inline __ATTRS_o_ai int
3906 vec_all_nlt(vector float __a, vector float __b) {
3907  int __cc;
3908  __builtin_s390_vfchsbs(__b, __a, &__cc);
3909  return __cc == 3;
3910 }
3911 #endif
3912 
3913 static inline __ATTRS_o_ai int
3914 vec_all_nlt(vector double __a, vector double __b) {
3915  int __cc;
3916  __builtin_s390_vfchdbs(__b, __a, &__cc);
3917  return __cc == 3;
3918 }
3919 
3920 /*-- vec_all_nan ------------------------------------------------------------*/
3921 
3922 #if __ARCH__ >= 12
3923 static inline __ATTRS_o_ai int
3924 vec_all_nan(vector float __a) {
3925  int __cc;
3926  __builtin_s390_vftcisb(__a, 15, &__cc);
3927  return __cc == 0;
3928 }
3929 #endif
3930 
3931 static inline __ATTRS_o_ai int
3932 vec_all_nan(vector double __a) {
3933  int __cc;
3934  __builtin_s390_vftcidb(__a, 15, &__cc);
3935  return __cc == 0;
3936 }
3937 
3938 /*-- vec_all_numeric --------------------------------------------------------*/
3939 
3940 #if __ARCH__ >= 12
3941 static inline __ATTRS_o_ai int
3942 vec_all_numeric(vector float __a) {
3943  int __cc;
3944  __builtin_s390_vftcisb(__a, 15, &__cc);
3945  return __cc == 3;
3946 }
3947 #endif
3948 
3949 static inline __ATTRS_o_ai int
3950 vec_all_numeric(vector double __a) {
3951  int __cc;
3952  __builtin_s390_vftcidb(__a, 15, &__cc);
3953  return __cc == 3;
3954 }
3955 
3956 /*-- vec_any_eq -------------------------------------------------------------*/
3957 
3958 static inline __ATTRS_o_ai int
3959 vec_any_eq(vector signed char __a, vector signed char __b) {
3960  int __cc;
3961  __builtin_s390_vceqbs(__a, __b, &__cc);
3962  return __cc <= 1;
3963 }
3964 
3965 // This prototype is deprecated.
3966 static inline __ATTRS_o_ai int
3967 vec_any_eq(vector signed char __a, vector bool char __b) {
3968  int __cc;
3969  __builtin_s390_vceqbs(__a, (vector signed char)__b, &__cc);
3970  return __cc <= 1;
3971 }
3972 
3973 // This prototype is deprecated.
3974 static inline __ATTRS_o_ai int
3975 vec_any_eq(vector bool char __a, vector signed char __b) {
3976  int __cc;
3977  __builtin_s390_vceqbs((vector signed char)__a, __b, &__cc);
3978  return __cc <= 1;
3979 }
3980 
3981 static inline __ATTRS_o_ai int
3982 vec_any_eq(vector unsigned char __a, vector unsigned char __b) {
3983  int __cc;
3984  __builtin_s390_vceqbs((vector signed char)__a,
3985  (vector signed char)__b, &__cc);
3986  return __cc <= 1;
3987 }
3988 
3989 // This prototype is deprecated.
3990 static inline __ATTRS_o_ai int
3991 vec_any_eq(vector unsigned char __a, vector bool char __b) {
3992  int __cc;
3993  __builtin_s390_vceqbs((vector signed char)__a,
3994  (vector signed char)__b, &__cc);
3995  return __cc <= 1;
3996 }
3997 
3998 // This prototype is deprecated.
3999 static inline __ATTRS_o_ai int
4000 vec_any_eq(vector bool char __a, vector unsigned char __b) {
4001  int __cc;
4002  __builtin_s390_vceqbs((vector signed char)__a,
4003  (vector signed char)__b, &__cc);
4004  return __cc <= 1;
4005 }
4006 
4007 static inline __ATTRS_o_ai int
4008 vec_any_eq(vector bool char __a, vector bool char __b) {
4009  int __cc;
4010  __builtin_s390_vceqbs((vector signed char)__a,
4011  (vector signed char)__b, &__cc);
4012  return __cc <= 1;
4013 }
4014 
4015 static inline __ATTRS_o_ai int
4016 vec_any_eq(vector signed short __a, vector signed short __b) {
4017  int __cc;
4018  __builtin_s390_vceqhs(__a, __b, &__cc);
4019  return __cc <= 1;
4020 }
4021 
4022 // This prototype is deprecated.
4023 static inline __ATTRS_o_ai int
4024 vec_any_eq(vector signed short __a, vector bool short __b) {
4025  int __cc;
4026  __builtin_s390_vceqhs(__a, (vector signed short)__b, &__cc);
4027  return __cc <= 1;
4028 }
4029 
4030 // This prototype is deprecated.
4031 static inline __ATTRS_o_ai int
4032 vec_any_eq(vector bool short __a, vector signed short __b) {
4033  int __cc;
4034  __builtin_s390_vceqhs((vector signed short)__a, __b, &__cc);
4035  return __cc <= 1;
4036 }
4037 
4038 static inline __ATTRS_o_ai int
4039 vec_any_eq(vector unsigned short __a, vector unsigned short __b) {
4040  int __cc;
4041  __builtin_s390_vceqhs((vector signed short)__a,
4042  (vector signed short)__b, &__cc);
4043  return __cc <= 1;
4044 }
4045 
4046 // This prototype is deprecated.
4047 static inline __ATTRS_o_ai int
4048 vec_any_eq(vector unsigned short __a, vector bool short __b) {
4049  int __cc;
4050  __builtin_s390_vceqhs((vector signed short)__a,
4051  (vector signed short)__b, &__cc);
4052  return __cc <= 1;
4053 }
4054 
4055 // This prototype is deprecated.
4056 static inline __ATTRS_o_ai int
4057 vec_any_eq(vector bool short __a, vector unsigned short __b) {
4058  int __cc;
4059  __builtin_s390_vceqhs((vector signed short)__a,
4060  (vector signed short)__b, &__cc);
4061  return __cc <= 1;
4062 }
4063 
4064 static inline __ATTRS_o_ai int
4065 vec_any_eq(vector bool short __a, vector bool short __b) {
4066  int __cc;
4067  __builtin_s390_vceqhs((vector signed short)__a,
4068  (vector signed short)__b, &__cc);
4069  return __cc <= 1;
4070 }
4071 
4072 static inline __ATTRS_o_ai int
4073 vec_any_eq(vector signed int __a, vector signed int __b) {
4074  int __cc;
4075  __builtin_s390_vceqfs(__a, __b, &__cc);
4076  return __cc <= 1;
4077 }
4078 
4079 // This prototype is deprecated.
4080 static inline __ATTRS_o_ai int
4081 vec_any_eq(vector signed int __a, vector bool int __b) {
4082  int __cc;
4083  __builtin_s390_vceqfs(__a, (vector signed int)__b, &__cc);
4084  return __cc <= 1;
4085 }
4086 
4087 // This prototype is deprecated.
4088 static inline __ATTRS_o_ai int
4089 vec_any_eq(vector bool int __a, vector signed int __b) {
4090  int __cc;
4091  __builtin_s390_vceqfs((vector signed int)__a, __b, &__cc);
4092  return __cc <= 1;
4093 }
4094 
4095 static inline __ATTRS_o_ai int
4096 vec_any_eq(vector unsigned int __a, vector unsigned int __b) {
4097  int __cc;
4098  __builtin_s390_vceqfs((vector signed int)__a,
4099  (vector signed int)__b, &__cc);
4100  return __cc <= 1;
4101 }
4102 
4103 // This prototype is deprecated.
4104 static inline __ATTRS_o_ai int
4105 vec_any_eq(vector unsigned int __a, vector bool int __b) {
4106  int __cc;
4107  __builtin_s390_vceqfs((vector signed int)__a,
4108  (vector signed int)__b, &__cc);
4109  return __cc <= 1;
4110 }
4111 
4112 // This prototype is deprecated.
4113 static inline __ATTRS_o_ai int
4114 vec_any_eq(vector bool int __a, vector unsigned int __b) {
4115  int __cc;
4116  __builtin_s390_vceqfs((vector signed int)__a,
4117  (vector signed int)__b, &__cc);
4118  return __cc <= 1;
4119 }
4120 
4121 static inline __ATTRS_o_ai int
4122 vec_any_eq(vector bool int __a, vector bool int __b) {
4123  int __cc;
4124  __builtin_s390_vceqfs((vector signed int)__a,
4125  (vector signed int)__b, &__cc);
4126  return __cc <= 1;
4127 }
4128 
4129 static inline __ATTRS_o_ai int
4130 vec_any_eq(vector signed long long __a, vector signed long long __b) {
4131  int __cc;
4132  __builtin_s390_vceqgs(__a, __b, &__cc);
4133  return __cc <= 1;
4134 }
4135 
4136 // This prototype is deprecated.
4137 static inline __ATTRS_o_ai int
4138 vec_any_eq(vector signed long long __a, vector bool long long __b) {
4139  int __cc;
4140  __builtin_s390_vceqgs(__a, (vector signed long long)__b, &__cc);
4141  return __cc <= 1;
4142 }
4143 
4144 // This prototype is deprecated.
4145 static inline __ATTRS_o_ai int
4146 vec_any_eq(vector bool long long __a, vector signed long long __b) {
4147  int __cc;
4148  __builtin_s390_vceqgs((vector signed long long)__a, __b, &__cc);
4149  return __cc <= 1;
4150 }
4151 
4152 static inline __ATTRS_o_ai int
4153 vec_any_eq(vector unsigned long long __a, vector unsigned long long __b) {
4154  int __cc;
4155  __builtin_s390_vceqgs((vector signed long long)__a,
4156  (vector signed long long)__b, &__cc);
4157  return __cc <= 1;
4158 }
4159 
4160 // This prototype is deprecated.
4161 static inline __ATTRS_o_ai int
4162 vec_any_eq(vector unsigned long long __a, vector bool long long __b) {
4163  int __cc;
4164  __builtin_s390_vceqgs((vector signed long long)__a,
4165  (vector signed long long)__b, &__cc);
4166  return __cc <= 1;
4167 }
4168 
4169 // This prototype is deprecated.
4170 static inline __ATTRS_o_ai int
4171 vec_any_eq(vector bool long long __a, vector unsigned long long __b) {
4172  int __cc;
4173  __builtin_s390_vceqgs((vector signed long long)__a,
4174  (vector signed long long)__b, &__cc);
4175  return __cc <= 1;
4176 }
4177 
4178 static inline __ATTRS_o_ai int
4179 vec_any_eq(vector bool long long __a, vector bool long long __b) {
4180  int __cc;
4181  __builtin_s390_vceqgs((vector signed long long)__a,
4182  (vector signed long long)__b, &__cc);
4183  return __cc <= 1;
4184 }
4185 
4186 #if __ARCH__ >= 12
4187 static inline __ATTRS_o_ai int
4188 vec_any_eq(vector float __a, vector float __b) {
4189  int __cc;
4190  __builtin_s390_vfcesbs(__a, __b, &__cc);
4191  return __cc <= 1;
4192 }
4193 #endif
4194 
4195 static inline __ATTRS_o_ai int
4196 vec_any_eq(vector double __a, vector double __b) {
4197  int __cc;
4198  __builtin_s390_vfcedbs(__a, __b, &__cc);
4199  return __cc <= 1;
4200 }
4201 
4202 /*-- vec_any_ne -------------------------------------------------------------*/
4203 
4204 static inline __ATTRS_o_ai int
4205 vec_any_ne(vector signed char __a, vector signed char __b) {
4206  int __cc;
4207  __builtin_s390_vceqbs(__a, __b, &__cc);
4208  return __cc != 0;
4209 }
4210 
4211 // This prototype is deprecated.
4212 static inline __ATTRS_o_ai int
4213 vec_any_ne(vector signed char __a, vector bool char __b) {
4214  int __cc;
4215  __builtin_s390_vceqbs(__a, (vector signed char)__b, &__cc);
4216  return __cc != 0;
4217 }
4218 
4219 // This prototype is deprecated.
4220 static inline __ATTRS_o_ai int
4221 vec_any_ne(vector bool char __a, vector signed char __b) {
4222  int __cc;
4223  __builtin_s390_vceqbs((vector signed char)__a, __b, &__cc);
4224  return __cc != 0;
4225 }
4226 
4227 static inline __ATTRS_o_ai int
4228 vec_any_ne(vector unsigned char __a, vector unsigned char __b) {
4229  int __cc;
4230  __builtin_s390_vceqbs((vector signed char)__a,
4231  (vector signed char)__b, &__cc);
4232  return __cc != 0;
4233 }
4234 
4235 // This prototype is deprecated.
4236 static inline __ATTRS_o_ai int
4237 vec_any_ne(vector unsigned char __a, vector bool char __b) {
4238  int __cc;
4239  __builtin_s390_vceqbs((vector signed char)__a,
4240  (vector signed char)__b, &__cc);
4241  return __cc != 0;
4242 }
4243 
4244 // This prototype is deprecated.
4245 static inline __ATTRS_o_ai int
4246 vec_any_ne(vector bool char __a, vector unsigned char __b) {
4247  int __cc;
4248  __builtin_s390_vceqbs((vector signed char)__a,
4249  (vector signed char)__b, &__cc);
4250  return __cc != 0;
4251 }
4252 
4253 static inline __ATTRS_o_ai int
4254 vec_any_ne(vector bool char __a, vector bool char __b) {
4255  int __cc;
4256  __builtin_s390_vceqbs((vector signed char)__a,
4257  (vector signed char)__b, &__cc);
4258  return __cc != 0;
4259 }
4260 
4261 static inline __ATTRS_o_ai int
4262 vec_any_ne(vector signed short __a, vector signed short __b) {
4263  int __cc;
4264  __builtin_s390_vceqhs(__a, __b, &__cc);
4265  return __cc != 0;
4266 }
4267 
4268 // This prototype is deprecated.
4269 static inline __ATTRS_o_ai int
4270 vec_any_ne(vector signed short __a, vector bool short __b) {
4271  int __cc;
4272  __builtin_s390_vceqhs(__a, (vector signed short)__b, &__cc);
4273  return __cc != 0;
4274 }
4275 
4276 // This prototype is deprecated.
4277 static inline __ATTRS_o_ai int
4278 vec_any_ne(vector bool short __a, vector signed short __b) {
4279  int __cc;
4280  __builtin_s390_vceqhs((vector signed short)__a, __b, &__cc);
4281  return __cc != 0;
4282 }
4283 
4284 static inline __ATTRS_o_ai int
4285 vec_any_ne(vector unsigned short __a, vector unsigned short __b) {
4286  int __cc;
4287  __builtin_s390_vceqhs((vector signed short)__a,
4288  (vector signed short)__b, &__cc);
4289  return __cc != 0;
4290 }
4291 
4292 // This prototype is deprecated.
4293 static inline __ATTRS_o_ai int
4294 vec_any_ne(vector unsigned short __a, vector bool short __b) {
4295  int __cc;
4296  __builtin_s390_vceqhs((vector signed short)__a,
4297  (vector signed short)__b, &__cc);
4298  return __cc != 0;
4299 }
4300 
4301 // This prototype is deprecated.
4302 static inline __ATTRS_o_ai int
4303 vec_any_ne(vector bool short __a, vector unsigned short __b) {
4304  int __cc;
4305  __builtin_s390_vceqhs((vector signed short)__a,
4306  (vector signed short)__b, &__cc);
4307  return __cc != 0;
4308 }
4309 
4310 static inline __ATTRS_o_ai int
4311 vec_any_ne(vector bool short __a, vector bool short __b) {
4312  int __cc;
4313  __builtin_s390_vceqhs((vector signed short)__a,
4314  (vector signed short)__b, &__cc);
4315  return __cc != 0;
4316 }
4317 
4318 static inline __ATTRS_o_ai int
4319 vec_any_ne(vector signed int __a, vector signed int __b) {
4320  int __cc;
4321  __builtin_s390_vceqfs(__a, __b, &__cc);
4322  return __cc != 0;
4323 }
4324 
4325 // This prototype is deprecated.
4326 static inline __ATTRS_o_ai int
4327 vec_any_ne(vector signed int __a, vector bool int __b) {
4328  int __cc;
4329  __builtin_s390_vceqfs(__a, (vector signed int)__b, &__cc);
4330  return __cc != 0;
4331 }
4332 
4333 // This prototype is deprecated.
4334 static inline __ATTRS_o_ai int
4335 vec_any_ne(vector bool int __a, vector signed int __b) {
4336  int __cc;
4337  __builtin_s390_vceqfs((vector signed int)__a, __b, &__cc);
4338  return __cc != 0;
4339 }
4340 
4341 static inline __ATTRS_o_ai int
4342 vec_any_ne(vector unsigned int __a, vector unsigned int __b) {
4343  int __cc;
4344  __builtin_s390_vceqfs((vector signed int)__a,
4345  (vector signed int)__b, &__cc);
4346  return __cc != 0;
4347 }
4348 
4349 // This prototype is deprecated.
4350 static inline __ATTRS_o_ai int
4351 vec_any_ne(vector unsigned int __a, vector bool int __b) {
4352  int __cc;
4353  __builtin_s390_vceqfs((vector signed int)__a,
4354  (vector signed int)__b, &__cc);
4355  return __cc != 0;
4356 }
4357 
4358 // This prototype is deprecated.
4359 static inline __ATTRS_o_ai int
4360 vec_any_ne(vector bool int __a, vector unsigned int __b) {
4361  int __cc;
4362  __builtin_s390_vceqfs((vector signed int)__a,
4363  (vector signed int)__b, &__cc);
4364  return __cc != 0;
4365 }
4366 
4367 static inline __ATTRS_o_ai int
4368 vec_any_ne(vector bool int __a, vector bool int __b) {
4369  int __cc;
4370  __builtin_s390_vceqfs((vector signed int)__a,
4371  (vector signed int)__b, &__cc);
4372  return __cc != 0;
4373 }
4374 
4375 static inline __ATTRS_o_ai int
4376 vec_any_ne(vector signed long long __a, vector signed long long __b) {
4377  int __cc;
4378  __builtin_s390_vceqgs(__a, __b, &__cc);
4379  return __cc != 0;
4380 }
4381 
4382 // This prototype is deprecated.
4383 static inline __ATTRS_o_ai int
4384 vec_any_ne(vector signed long long __a, vector bool long long __b) {
4385  int __cc;
4386  __builtin_s390_vceqgs(__a, (vector signed long long)__b, &__cc);
4387  return __cc != 0;
4388 }
4389 
4390 // This prototype is deprecated.
4391 static inline __ATTRS_o_ai int
4392 vec_any_ne(vector bool long long __a, vector signed long long __b) {
4393  int __cc;
4394  __builtin_s390_vceqgs((vector signed long long)__a, __b, &__cc);
4395  return __cc != 0;
4396 }
4397 
4398 static inline __ATTRS_o_ai int
4399 vec_any_ne(vector unsigned long long __a, vector unsigned long long __b) {
4400  int __cc;
4401  __builtin_s390_vceqgs((vector signed long long)__a,
4402  (vector signed long long)__b, &__cc);
4403  return __cc != 0;
4404 }
4405 
4406 // This prototype is deprecated.
4407 static inline __ATTRS_o_ai int
4408 vec_any_ne(vector unsigned long long __a, vector bool long long __b) {
4409  int __cc;
4410  __builtin_s390_vceqgs((vector signed long long)__a,
4411  (vector signed long long)__b, &__cc);
4412  return __cc != 0;
4413 }
4414 
4415 // This prototype is deprecated.
4416 static inline __ATTRS_o_ai int
4417 vec_any_ne(vector bool long long __a, vector unsigned long long __b) {
4418  int __cc;
4419  __builtin_s390_vceqgs((vector signed long long)__a,
4420  (vector signed long long)__b, &__cc);
4421  return __cc != 0;
4422 }
4423 
4424 static inline __ATTRS_o_ai int
4425 vec_any_ne(vector bool long long __a, vector bool long long __b) {
4426  int __cc;
4427  __builtin_s390_vceqgs((vector signed long long)__a,
4428  (vector signed long long)__b, &__cc);
4429  return __cc != 0;
4430 }
4431 
4432 #if __ARCH__ >= 12
4433 static inline __ATTRS_o_ai int
4434 vec_any_ne(vector float __a, vector float __b) {
4435  int __cc;
4436  __builtin_s390_vfcesbs(__a, __b, &__cc);
4437  return __cc != 0;
4438 }
4439 #endif
4440 
4441 static inline __ATTRS_o_ai int
4442 vec_any_ne(vector double __a, vector double __b) {
4443  int __cc;
4444  __builtin_s390_vfcedbs(__a, __b, &__cc);
4445  return __cc != 0;
4446 }
4447 
4448 /*-- vec_any_ge -------------------------------------------------------------*/
4449 
4450 static inline __ATTRS_o_ai int
4451 vec_any_ge(vector signed char __a, vector signed char __b) {
4452  int __cc;
4453  __builtin_s390_vchbs(__b, __a, &__cc);
4454  return __cc != 0;
4455 }
4456 
4457 // This prototype is deprecated.
4458 static inline __ATTRS_o_ai int
4459 vec_any_ge(vector signed char __a, vector bool char __b) {
4460  int __cc;
4461  __builtin_s390_vchbs((vector signed char)__b, __a, &__cc);
4462  return __cc != 0;
4463 }
4464 
4465 // This prototype is deprecated.
4466 static inline __ATTRS_o_ai int
4467 vec_any_ge(vector bool char __a, vector signed char __b) {
4468  int __cc;
4469  __builtin_s390_vchbs(__b, (vector signed char)__a, &__cc);
4470  return __cc != 0;
4471 }
4472 
4473 static inline __ATTRS_o_ai int
4474 vec_any_ge(vector unsigned char __a, vector unsigned char __b) {
4475  int __cc;
4476  __builtin_s390_vchlbs(__b, __a, &__cc);
4477  return __cc != 0;
4478 }
4479 
4480 // This prototype is deprecated.
4481 static inline __ATTRS_o_ai int
4482 vec_any_ge(vector unsigned char __a, vector bool char __b) {
4483  int __cc;
4484  __builtin_s390_vchlbs((vector unsigned char)__b, __a, &__cc);
4485  return __cc != 0;
4486 }
4487 
4488 // This prototype is deprecated.
4489 static inline __ATTRS_o_ai int
4490 vec_any_ge(vector bool char __a, vector unsigned char __b) {
4491  int __cc;
4492  __builtin_s390_vchlbs(__b, (vector unsigned char)__a, &__cc);
4493  return __cc != 0;
4494 }
4495 
4496 // This prototype is deprecated.
4497 static inline __ATTRS_o_ai int
4498 vec_any_ge(vector bool char __a, vector bool char __b) {
4499  int __cc;
4500  __builtin_s390_vchlbs((vector unsigned char)__b,
4501  (vector unsigned char)__a, &__cc);
4502  return __cc != 0;
4503 }
4504 
4505 static inline __ATTRS_o_ai int
4506 vec_any_ge(vector signed short __a, vector signed short __b) {
4507  int __cc;
4508  __builtin_s390_vchhs(__b, __a, &__cc);
4509  return __cc != 0;
4510 }
4511 
4512 // This prototype is deprecated.
4513 static inline __ATTRS_o_ai int
4514 vec_any_ge(vector signed short __a, vector bool short __b) {
4515  int __cc;
4516  __builtin_s390_vchhs((vector signed short)__b, __a, &__cc);
4517  return __cc != 0;
4518 }
4519 
4520 // This prototype is deprecated.
4521 static inline __ATTRS_o_ai int
4522 vec_any_ge(vector bool short __a, vector signed short __b) {
4523  int __cc;
4524  __builtin_s390_vchhs(__b, (vector signed short)__a, &__cc);
4525  return __cc != 0;
4526 }
4527 
4528 static inline __ATTRS_o_ai int
4529 vec_any_ge(vector unsigned short __a, vector unsigned short __b) {
4530  int __cc;
4531  __builtin_s390_vchlhs(__b, __a, &__cc);
4532  return __cc != 0;
4533 }
4534 
4535 // This prototype is deprecated.
4536 static inline __ATTRS_o_ai int
4537 vec_any_ge(vector unsigned short __a, vector bool short __b) {
4538  int __cc;
4539  __builtin_s390_vchlhs((vector unsigned short)__b, __a, &__cc);
4540  return __cc != 0;
4541 }
4542 
4543 // This prototype is deprecated.
4544 static inline __ATTRS_o_ai int
4545 vec_any_ge(vector bool short __a, vector unsigned short __b) {
4546  int __cc;
4547  __builtin_s390_vchlhs(__b, (vector unsigned short)__a, &__cc);
4548  return __cc != 0;
4549 }
4550 
4551 // This prototype is deprecated.
4552 static inline __ATTRS_o_ai int
4553 vec_any_ge(vector bool short __a, vector bool short __b) {
4554  int __cc;
4555  __builtin_s390_vchlhs((vector unsigned short)__b,
4556  (vector unsigned short)__a, &__cc);
4557  return __cc != 0;
4558 }
4559 
4560 static inline __ATTRS_o_ai int
4561 vec_any_ge(vector signed int __a, vector signed int __b) {
4562  int __cc;
4563  __builtin_s390_vchfs(__b, __a, &__cc);
4564  return __cc != 0;
4565 }
4566 
4567 // This prototype is deprecated.
4568 static inline __ATTRS_o_ai int
4569 vec_any_ge(vector signed int __a, vector bool int __b) {
4570  int __cc;
4571  __builtin_s390_vchfs((vector signed int)__b, __a, &__cc);
4572  return __cc != 0;
4573 }
4574 
4575 // This prototype is deprecated.
4576 static inline __ATTRS_o_ai int
4577 vec_any_ge(vector bool int __a, vector signed int __b) {
4578  int __cc;
4579  __builtin_s390_vchfs(__b, (vector signed int)__a, &__cc);
4580  return __cc != 0;
4581 }
4582 
4583 static inline __ATTRS_o_ai int
4584 vec_any_ge(vector unsigned int __a, vector unsigned int __b) {
4585  int __cc;
4586  __builtin_s390_vchlfs(__b, __a, &__cc);
4587  return __cc != 0;
4588 }
4589 
4590 // This prototype is deprecated.
4591 static inline __ATTRS_o_ai int
4592 vec_any_ge(vector unsigned int __a, vector bool int __b) {
4593  int __cc;
4594  __builtin_s390_vchlfs((vector unsigned int)__b, __a, &__cc);
4595  return __cc != 0;
4596 }
4597 
4598 // This prototype is deprecated.
4599 static inline __ATTRS_o_ai int
4600 vec_any_ge(vector bool int __a, vector unsigned int __b) {
4601  int __cc;
4602  __builtin_s390_vchlfs(__b, (vector unsigned int)__a, &__cc);
4603  return __cc != 0;
4604 }
4605 
4606 // This prototype is deprecated.
4607 static inline __ATTRS_o_ai int
4608 vec_any_ge(vector bool int __a, vector bool int __b) {
4609  int __cc;
4610  __builtin_s390_vchlfs((vector unsigned int)__b,
4611  (vector unsigned int)__a, &__cc);
4612  return __cc != 0;
4613 }
4614 
4615 static inline __ATTRS_o_ai int
4616 vec_any_ge(vector signed long long __a, vector signed long long __b) {
4617  int __cc;
4618  __builtin_s390_vchgs(__b, __a, &__cc);
4619  return __cc != 0;
4620 }
4621 
4622 // This prototype is deprecated.
4623 static inline __ATTRS_o_ai int
4624 vec_any_ge(vector signed long long __a, vector bool long long __b) {
4625  int __cc;
4626  __builtin_s390_vchgs((vector signed long long)__b, __a, &__cc);
4627  return __cc != 0;
4628 }
4629 
4630 // This prototype is deprecated.
4631 static inline __ATTRS_o_ai int
4632 vec_any_ge(vector bool long long __a, vector signed long long __b) {
4633  int __cc;
4634  __builtin_s390_vchgs(__b, (vector signed long long)__a, &__cc);
4635  return __cc != 0;
4636 }
4637 
4638 static inline __ATTRS_o_ai int
4639 vec_any_ge(vector unsigned long long __a, vector unsigned long long __b) {
4640  int __cc;
4641  __builtin_s390_vchlgs(__b, __a, &__cc);
4642  return __cc != 0;
4643 }
4644 
4645 // This prototype is deprecated.
4646 static inline __ATTRS_o_ai int
4647 vec_any_ge(vector unsigned long long __a, vector bool long long __b) {
4648  int __cc;
4649  __builtin_s390_vchlgs((vector unsigned long long)__b, __a, &__cc);
4650  return __cc != 0;
4651 }
4652 
4653 // This prototype is deprecated.
4654 static inline __ATTRS_o_ai int
4655 vec_any_ge(vector bool long long __a, vector unsigned long long __b) {
4656  int __cc;
4657  __builtin_s390_vchlgs(__b, (vector unsigned long long)__a, &__cc);
4658  return __cc != 0;
4659 }
4660 
4661 // This prototype is deprecated.
4662 static inline __ATTRS_o_ai int
4663 vec_any_ge(vector bool long long __a, vector bool long long __b) {
4664  int __cc;
4665  __builtin_s390_vchlgs((vector unsigned long long)__b,
4666  (vector unsigned long long)__a, &__cc);
4667  return __cc != 0;
4668 }
4669 
4670 #if __ARCH__ >= 12
4671 static inline __ATTRS_o_ai int
4672 vec_any_ge(vector float __a, vector float __b) {
4673  int __cc;
4674  __builtin_s390_vfchesbs(__a, __b, &__cc);
4675  return __cc <= 1;
4676 }
4677 #endif
4678 
4679 static inline __ATTRS_o_ai int
4680 vec_any_ge(vector double __a, vector double __b) {
4681  int __cc;
4682  __builtin_s390_vfchedbs(__a, __b, &__cc);
4683  return __cc <= 1;
4684 }
4685 
4686 /*-- vec_any_gt -------------------------------------------------------------*/
4687 
4688 static inline __ATTRS_o_ai int
4689 vec_any_gt(vector signed char __a, vector signed char __b) {
4690  int __cc;
4691  __builtin_s390_vchbs(__a, __b, &__cc);
4692  return __cc <= 1;
4693 }
4694 
4695 // This prototype is deprecated.
4696 static inline __ATTRS_o_ai int
4697 vec_any_gt(vector signed char __a, vector bool char __b) {
4698  int __cc;
4699  __builtin_s390_vchbs(__a, (vector signed char)__b, &__cc);
4700  return __cc <= 1;
4701 }
4702 
4703 // This prototype is deprecated.
4704 static inline __ATTRS_o_ai int
4705 vec_any_gt(vector bool char __a, vector signed char __b) {
4706  int __cc;
4707  __builtin_s390_vchbs((vector signed char)__a, __b, &__cc);
4708  return __cc <= 1;
4709 }
4710 
4711 static inline __ATTRS_o_ai int
4712 vec_any_gt(vector unsigned char __a, vector unsigned char __b) {
4713  int __cc;
4714  __builtin_s390_vchlbs(__a, __b, &__cc);
4715  return __cc <= 1;
4716 }
4717 
4718 // This prototype is deprecated.
4719 static inline __ATTRS_o_ai int
4720 vec_any_gt(vector unsigned char __a, vector bool char __b) {
4721  int __cc;
4722  __builtin_s390_vchlbs(__a, (vector unsigned char)__b, &__cc);
4723  return __cc <= 1;
4724 }
4725 
4726 // This prototype is deprecated.
4727 static inline __ATTRS_o_ai int
4728 vec_any_gt(vector bool char __a, vector unsigned char __b) {
4729  int __cc;
4730  __builtin_s390_vchlbs((vector unsigned char)__a, __b, &__cc);
4731  return __cc <= 1;
4732 }
4733 
4734 // This prototype is deprecated.
4735 static inline __ATTRS_o_ai int
4736 vec_any_gt(vector bool char __a, vector bool char __b) {
4737  int __cc;
4738  __builtin_s390_vchlbs((vector unsigned char)__a,
4739  (vector unsigned char)__b, &__cc);
4740  return __cc <= 1;
4741 }
4742 
4743 static inline __ATTRS_o_ai int
4744 vec_any_gt(vector signed short __a, vector signed short __b) {
4745  int __cc;
4746  __builtin_s390_vchhs(__a, __b, &__cc);
4747  return __cc <= 1;
4748 }
4749 
4750 // This prototype is deprecated.
4751 static inline __ATTRS_o_ai int
4752 vec_any_gt(vector signed short __a, vector bool short __b) {
4753  int __cc;
4754  __builtin_s390_vchhs(__a, (vector signed short)__b, &__cc);
4755  return __cc <= 1;
4756 }
4757 
4758 // This prototype is deprecated.
4759 static inline __ATTRS_o_ai int
4760 vec_any_gt(vector bool short __a, vector signed short __b) {
4761  int __cc;
4762  __builtin_s390_vchhs((vector signed short)__a, __b, &__cc);
4763  return __cc <= 1;
4764 }
4765 
4766 static inline __ATTRS_o_ai int
4767 vec_any_gt(vector unsigned short __a, vector unsigned short __b) {
4768  int __cc;
4769  __builtin_s390_vchlhs(__a, __b, &__cc);
4770  return __cc <= 1;
4771 }
4772 
4773 // This prototype is deprecated.
4774 static inline __ATTRS_o_ai int
4775 vec_any_gt(vector unsigned short __a, vector bool short __b) {
4776  int __cc;
4777  __builtin_s390_vchlhs(__a, (vector unsigned short)__b, &__cc);
4778  return __cc <= 1;
4779 }
4780 
4781 // This prototype is deprecated.
4782 static inline __ATTRS_o_ai int
4783 vec_any_gt(vector bool short __a, vector unsigned short __b) {
4784  int __cc;
4785  __builtin_s390_vchlhs((vector unsigned short)__a, __b, &__cc);
4786  return __cc <= 1;
4787 }
4788 
4789 // This prototype is deprecated.
4790 static inline __ATTRS_o_ai int
4791 vec_any_gt(vector bool short __a, vector bool short __b) {
4792  int __cc;
4793  __builtin_s390_vchlhs((vector unsigned short)__a,
4794  (vector unsigned short)__b, &__cc);
4795  return __cc <= 1;
4796 }
4797 
4798 static inline __ATTRS_o_ai int
4799 vec_any_gt(vector signed int __a, vector signed int __b) {
4800  int __cc;
4801  __builtin_s390_vchfs(__a, __b, &__cc);
4802  return __cc <= 1;
4803 }
4804 
4805 // This prototype is deprecated.
4806 static inline __ATTRS_o_ai int
4807 vec_any_gt(vector signed int __a, vector bool int __b) {
4808  int __cc;
4809  __builtin_s390_vchfs(__a, (vector signed int)__b, &__cc);
4810  return __cc <= 1;
4811 }
4812 
4813 // This prototype is deprecated.
4814 static inline __ATTRS_o_ai int
4815 vec_any_gt(vector bool int __a, vector signed int __b) {
4816  int __cc;
4817  __builtin_s390_vchfs((vector signed int)__a, __b, &__cc);
4818  return __cc <= 1;
4819 }
4820 
4821 static inline __ATTRS_o_ai int
4822 vec_any_gt(vector unsigned int __a, vector unsigned int __b) {
4823  int __cc;
4824  __builtin_s390_vchlfs(__a, __b, &__cc);
4825  return __cc <= 1;
4826 }
4827 
4828 // This prototype is deprecated.
4829 static inline __ATTRS_o_ai int
4830 vec_any_gt(vector unsigned int __a, vector bool int __b) {
4831  int __cc;
4832  __builtin_s390_vchlfs(__a, (vector unsigned int)__b, &__cc);
4833  return __cc <= 1;
4834 }
4835 
4836 // This prototype is deprecated.
4837 static inline __ATTRS_o_ai int
4838 vec_any_gt(vector bool int __a, vector unsigned int __b) {
4839  int __cc;
4840  __builtin_s390_vchlfs((vector unsigned int)__a, __b, &__cc);
4841  return __cc <= 1;
4842 }
4843 
4844 // This prototype is deprecated.
4845 static inline __ATTRS_o_ai int
4846 vec_any_gt(vector bool int __a, vector bool int __b) {
4847  int __cc;
4848  __builtin_s390_vchlfs((vector unsigned int)__a,
4849  (vector unsigned int)__b, &__cc);
4850  return __cc <= 1;
4851 }
4852 
4853 static inline __ATTRS_o_ai int
4854 vec_any_gt(vector signed long long __a, vector signed long long __b) {
4855  int __cc;
4856  __builtin_s390_vchgs(__a, __b, &__cc);
4857  return __cc <= 1;
4858 }
4859 
4860 // This prototype is deprecated.
4861 static inline __ATTRS_o_ai int
4862 vec_any_gt(vector signed long long __a, vector bool long long __b) {
4863  int __cc;
4864  __builtin_s390_vchgs(__a, (vector signed long long)__b, &__cc);
4865  return __cc <= 1;
4866 }
4867 
4868 // This prototype is deprecated.
4869 static inline __ATTRS_o_ai int
4870 vec_any_gt(vector bool long long __a, vector signed long long __b) {
4871  int __cc;
4872  __builtin_s390_vchgs((vector signed long long)__a, __b, &__cc);
4873  return __cc <= 1;
4874 }
4875 
4876 static inline __ATTRS_o_ai int
4877 vec_any_gt(vector unsigned long long __a, vector unsigned long long __b) {
4878  int __cc;
4879  __builtin_s390_vchlgs(__a, __b, &__cc);
4880  return __cc <= 1;
4881 }
4882 
4883 // This prototype is deprecated.
4884 static inline __ATTRS_o_ai int
4885 vec_any_gt(vector unsigned long long __a, vector bool long long __b) {
4886  int __cc;
4887  __builtin_s390_vchlgs(__a, (vector unsigned long long)__b, &__cc);
4888  return __cc <= 1;
4889 }
4890 
4891 // This prototype is deprecated.
4892 static inline __ATTRS_o_ai int
4893 vec_any_gt(vector bool long long __a, vector unsigned long long __b) {
4894  int __cc;
4895  __builtin_s390_vchlgs((vector unsigned long long)__a, __b, &__cc);
4896  return __cc <= 1;
4897 }
4898 
4899 // This prototype is deprecated.
4900 static inline __ATTRS_o_ai int
4901 vec_any_gt(vector bool long long __a, vector bool long long __b) {
4902  int __cc;
4903  __builtin_s390_vchlgs((vector unsigned long long)__a,
4904  (vector unsigned long long)__b, &__cc);
4905  return __cc <= 1;
4906 }
4907 
4908 #if __ARCH__ >= 12
4909 static inline __ATTRS_o_ai int
4910 vec_any_gt(vector float __a, vector float __b) {
4911  int __cc;
4912  __builtin_s390_vfchsbs(__a, __b, &__cc);
4913  return __cc <= 1;
4914 }
4915 #endif
4916 
4917 static inline __ATTRS_o_ai int
4918 vec_any_gt(vector double __a, vector double __b) {
4919  int __cc;
4920  __builtin_s390_vfchdbs(__a, __b, &__cc);
4921  return __cc <= 1;
4922 }
4923 
4924 /*-- vec_any_le -------------------------------------------------------------*/
4925 
4926 static inline __ATTRS_o_ai int
4927 vec_any_le(vector signed char __a, vector signed char __b) {
4928  int __cc;
4929  __builtin_s390_vchbs(__a, __b, &__cc);
4930  return __cc != 0;
4931 }
4932 
4933 // This prototype is deprecated.
4934 static inline __ATTRS_o_ai int
4935 vec_any_le(vector signed char __a, vector bool char __b) {
4936  int __cc;
4937  __builtin_s390_vchbs(__a, (vector signed char)__b, &__cc);
4938  return __cc != 0;
4939 }
4940 
4941 // This prototype is deprecated.
4942 static inline __ATTRS_o_ai int
4943 vec_any_le(vector bool char __a, vector signed char __b) {
4944  int __cc;
4945  __builtin_s390_vchbs((vector signed char)__a, __b, &__cc);
4946  return __cc != 0;
4947 }
4948 
4949 static inline __ATTRS_o_ai int
4950 vec_any_le(vector unsigned char __a, vector unsigned char __b) {
4951  int __cc;
4952  __builtin_s390_vchlbs(__a, __b, &__cc);
4953  return __cc != 0;
4954 }
4955 
4956 // This prototype is deprecated.
4957 static inline __ATTRS_o_ai int
4958 vec_any_le(vector unsigned char __a, vector bool char __b) {
4959  int __cc;
4960  __builtin_s390_vchlbs(__a, (vector unsigned char)__b, &__cc);
4961  return __cc != 0;
4962 }
4963 
4964 // This prototype is deprecated.
4965 static inline __ATTRS_o_ai int
4966 vec_any_le(vector bool char __a, vector unsigned char __b) {
4967  int __cc;
4968  __builtin_s390_vchlbs((vector unsigned char)__a, __b, &__cc);
4969  return __cc != 0;
4970 }
4971 
4972 // This prototype is deprecated.
4973 static inline __ATTRS_o_ai int
4974 vec_any_le(vector bool char __a, vector bool char __b) {
4975  int __cc;
4976  __builtin_s390_vchlbs((vector unsigned char)__a,
4977  (vector unsigned char)__b, &__cc);
4978  return __cc != 0;
4979 }
4980 
4981 static inline __ATTRS_o_ai int
4982 vec_any_le(vector signed short __a, vector signed short __b) {
4983  int __cc;
4984  __builtin_s390_vchhs(__a, __b, &__cc);
4985  return __cc != 0;
4986 }
4987 
4988 // This prototype is deprecated.
4989 static inline __ATTRS_o_ai int
4990 vec_any_le(vector signed short __a, vector bool short __b) {
4991  int __cc;
4992  __builtin_s390_vchhs(__a, (vector signed short)__b, &__cc);
4993  return __cc != 0;
4994 }
4995 
4996 // This prototype is deprecated.
4997 static inline __ATTRS_o_ai int
4998 vec_any_le(vector bool short __a, vector signed short __b) {
4999  int __cc;
5000  __builtin_s390_vchhs((vector signed short)__a, __b, &__cc);
5001  return __cc != 0;
5002 }
5003 
5004 static inline __ATTRS_o_ai int
5005 vec_any_le(vector unsigned short __a, vector unsigned short __b) {
5006  int __cc;
5007  __builtin_s390_vchlhs(__a, __b, &__cc);
5008  return __cc != 0;
5009 }
5010 
5011 // This prototype is deprecated.
5012 static inline __ATTRS_o_ai int
5013 vec_any_le(vector unsigned short __a, vector bool short __b) {
5014  int __cc;
5015  __builtin_s390_vchlhs(__a, (vector unsigned short)__b, &__cc);
5016  return __cc != 0;
5017 }
5018 
5019 // This prototype is deprecated.
5020 static inline __ATTRS_o_ai int
5021 vec_any_le(vector bool short __a, vector unsigned short __b) {
5022  int __cc;
5023  __builtin_s390_vchlhs((vector unsigned short)__a, __b, &__cc);
5024  return __cc != 0;
5025 }
5026 
5027 // This prototype is deprecated.
5028 static inline __ATTRS_o_ai int
5029 vec_any_le(vector bool short __a, vector bool short __b) {
5030  int __cc;
5031  __builtin_s390_vchlhs((vector unsigned short)__a,
5032  (vector unsigned short)__b, &__cc);
5033  return __cc != 0;
5034 }
5035 
5036 static inline __ATTRS_o_ai int
5037 vec_any_le(vector signed int __a, vector signed int __b) {
5038  int __cc;
5039  __builtin_s390_vchfs(__a, __b, &__cc);
5040  return __cc != 0;
5041 }
5042 
5043 // This prototype is deprecated.
5044 static inline __ATTRS_o_ai int
5045 vec_any_le(vector signed int __a, vector bool int __b) {
5046  int __cc;
5047  __builtin_s390_vchfs(__a, (vector signed int)__b, &__cc);
5048  return __cc != 0;
5049 }
5050 
5051 // This prototype is deprecated.
5052 static inline __ATTRS_o_ai int
5053 vec_any_le(vector bool int __a, vector signed int __b) {
5054  int __cc;
5055  __builtin_s390_vchfs((vector signed int)__a, __b, &__cc);
5056  return __cc != 0;
5057 }
5058 
5059 static inline __ATTRS_o_ai int
5060 vec_any_le(vector unsigned int __a, vector unsigned int __b) {
5061  int __cc;
5062  __builtin_s390_vchlfs(__a, __b, &__cc);
5063  return __cc != 0;
5064 }
5065 
5066 // This prototype is deprecated.
5067 static inline __ATTRS_o_ai int
5068 vec_any_le(vector unsigned int __a, vector bool int __b) {
5069  int __cc;
5070  __builtin_s390_vchlfs(__a, (vector unsigned int)__b, &__cc);
5071  return __cc != 0;
5072 }
5073 
5074 // This prototype is deprecated.
5075 static inline __ATTRS_o_ai int
5076 vec_any_le(vector bool int __a, vector unsigned int __b) {
5077  int __cc;
5078  __builtin_s390_vchlfs((vector unsigned int)__a, __b, &__cc);
5079  return __cc != 0;
5080 }
5081 
5082 // This prototype is deprecated.
5083 static inline __ATTRS_o_ai int
5084 vec_any_le(vector bool int __a, vector bool int __b) {
5085  int __cc;
5086  __builtin_s390_vchlfs((vector unsigned int)__a,
5087  (vector unsigned int)__b, &__cc);
5088  return __cc != 0;
5089 }
5090 
5091 static inline __ATTRS_o_ai int
5092 vec_any_le(vector signed long long __a, vector signed long long __b) {
5093  int __cc;
5094  __builtin_s390_vchgs(__a, __b, &__cc);
5095  return __cc != 0;
5096 }
5097 
5098 // This prototype is deprecated.
5099 static inline __ATTRS_o_ai int
5100 vec_any_le(vector signed long long __a, vector bool long long __b) {
5101  int __cc;
5102  __builtin_s390_vchgs(__a, (vector signed long long)__b, &__cc);
5103  return __cc != 0;
5104 }
5105 
5106 // This prototype is deprecated.
5107 static inline __ATTRS_o_ai int
5108 vec_any_le(vector bool long long __a, vector signed long long __b) {
5109  int __cc;
5110  __builtin_s390_vchgs((vector signed long long)__a, __b, &__cc);
5111  return __cc != 0;
5112 }
5113 
5114 static inline __ATTRS_o_ai int
5115 vec_any_le(vector unsigned long long __a, vector unsigned long long __b) {
5116  int __cc;
5117  __builtin_s390_vchlgs(__a, __b, &__cc);
5118  return __cc != 0;
5119 }
5120 
5121 // This prototype is deprecated.
5122 static inline __ATTRS_o_ai int
5123 vec_any_le(vector unsigned long long __a, vector bool long long __b) {
5124  int __cc;
5125  __builtin_s390_vchlgs(__a, (vector unsigned long long)__b, &__cc);
5126  return __cc != 0;
5127 }
5128 
5129 // This prototype is deprecated.
5130 static inline __ATTRS_o_ai int
5131 vec_any_le(vector bool long long __a, vector unsigned long long __b) {
5132  int __cc;
5133  __builtin_s390_vchlgs((vector unsigned long long)__a, __b, &__cc);
5134  return __cc != 0;
5135 }
5136 
5137 // This prototype is deprecated.
5138 static inline __ATTRS_o_ai int
5139 vec_any_le(vector bool long long __a, vector bool long long __b) {
5140  int __cc;
5141  __builtin_s390_vchlgs((vector unsigned long long)__a,
5142  (vector unsigned long long)__b, &__cc);
5143  return __cc != 0;
5144 }
5145 
5146 #if __ARCH__ >= 12
5147 static inline __ATTRS_o_ai int
5148 vec_any_le(vector float __a, vector float __b) {
5149  int __cc;
5150  __builtin_s390_vfchesbs(__b, __a, &__cc);
5151  return __cc <= 1;
5152 }
5153 #endif
5154 
5155 static inline __ATTRS_o_ai int
5156 vec_any_le(vector double __a, vector double __b) {
5157  int __cc;
5158  __builtin_s390_vfchedbs(__b, __a, &__cc);
5159  return __cc <= 1;
5160 }
5161 
5162 /*-- vec_any_lt -------------------------------------------------------------*/
5163 
5164 static inline __ATTRS_o_ai int
5165 vec_any_lt(vector signed char __a, vector signed char __b) {
5166  int __cc;
5167  __builtin_s390_vchbs(__b, __a, &__cc);
5168  return __cc <= 1;
5169 }
5170 
5171 // This prototype is deprecated.
5172 static inline __ATTRS_o_ai int
5173 vec_any_lt(vector signed char __a, vector bool char __b) {
5174  int __cc;
5175  __builtin_s390_vchbs((vector signed char)__b, __a, &__cc);
5176  return __cc <= 1;
5177 }
5178 
5179 // This prototype is deprecated.
5180 static inline __ATTRS_o_ai int
5181 vec_any_lt(vector bool char __a, vector signed char __b) {
5182  int __cc;
5183  __builtin_s390_vchbs(__b, (vector signed char)__a, &__cc);
5184  return __cc <= 1;
5185 }
5186 
5187 static inline __ATTRS_o_ai int
5188 vec_any_lt(vector unsigned char __a, vector unsigned char __b) {
5189  int __cc;
5190  __builtin_s390_vchlbs(__b, __a, &__cc);
5191  return __cc <= 1;
5192 }
5193 
5194 // This prototype is deprecated.
5195 static inline __ATTRS_o_ai int
5196 vec_any_lt(vector unsigned char __a, vector bool char __b) {
5197  int __cc;
5198  __builtin_s390_vchlbs((vector unsigned char)__b, __a, &__cc);
5199  return __cc <= 1;
5200 }
5201 
5202 // This prototype is deprecated.
5203 static inline __ATTRS_o_ai int
5204 vec_any_lt(vector bool char __a, vector unsigned char __b) {
5205  int __cc;
5206  __builtin_s390_vchlbs(__b, (vector unsigned char)__a, &__cc);
5207  return __cc <= 1;
5208 }
5209 
5210 // This prototype is deprecated.
5211 static inline __ATTRS_o_ai int
5212 vec_any_lt(vector bool char __a, vector bool char __b) {
5213  int __cc;
5214  __builtin_s390_vchlbs((vector unsigned char)__b,
5215  (vector unsigned char)__a, &__cc);
5216  return __cc <= 1;
5217 }
5218 
5219 static inline __ATTRS_o_ai int
5220 vec_any_lt(vector signed short __a, vector signed short __b) {
5221  int __cc;
5222  __builtin_s390_vchhs(__b, __a, &__cc);
5223  return __cc <= 1;
5224 }
5225 
5226 // This prototype is deprecated.
5227 static inline __ATTRS_o_ai int
5228 vec_any_lt(vector signed short __a, vector bool short __b) {
5229  int __cc;
5230  __builtin_s390_vchhs((vector signed short)__b, __a, &__cc);
5231  return __cc <= 1;
5232 }
5233 
5234 // This prototype is deprecated.
5235 static inline __ATTRS_o_ai int
5236 vec_any_lt(vector bool short __a, vector signed short __b) {
5237  int __cc;
5238  __builtin_s390_vchhs(__b, (vector signed short)__a, &__cc);
5239  return __cc <= 1;
5240 }
5241 
5242 static inline __ATTRS_o_ai int
5243 vec_any_lt(vector unsigned short __a, vector unsigned short __b) {
5244  int __cc;
5245  __builtin_s390_vchlhs(__b, __a, &__cc);
5246  return __cc <= 1;
5247 }
5248 
5249 // This prototype is deprecated.
5250 static inline __ATTRS_o_ai int
5251 vec_any_lt(vector unsigned short __a, vector bool short __b) {
5252  int __cc;
5253  __builtin_s390_vchlhs((vector unsigned short)__b, __a, &__cc);
5254  return __cc <= 1;
5255 }
5256 
5257 // This prototype is deprecated.
5258 static inline __ATTRS_o_ai int
5259 vec_any_lt(vector bool short __a, vector unsigned short __b) {
5260  int __cc;
5261  __builtin_s390_vchlhs(__b, (vector unsigned short)__a, &__cc);
5262  return __cc <= 1;
5263 }
5264 
5265 // This prototype is deprecated.
5266 static inline __ATTRS_o_ai int
5267 vec_any_lt(vector bool short __a, vector bool short __b) {
5268  int __cc;
5269  __builtin_s390_vchlhs((vector unsigned short)__b,
5270  (vector unsigned short)__a, &__cc);
5271  return __cc <= 1;
5272 }
5273 
5274 static inline __ATTRS_o_ai int
5275 vec_any_lt(vector signed int __a, vector signed int __b) {
5276  int __cc;
5277  __builtin_s390_vchfs(__b, __a, &__cc);
5278  return __cc <= 1;
5279 }
5280 
5281 // This prototype is deprecated.
5282 static inline __ATTRS_o_ai int
5283 vec_any_lt(vector signed int __a, vector bool int __b) {
5284  int __cc;
5285  __builtin_s390_vchfs((vector signed int)__b, __a, &__cc);
5286  return __cc <= 1;
5287 }
5288 
5289 // This prototype is deprecated.
5290 static inline __ATTRS_o_ai int
5291 vec_any_lt(vector bool int __a, vector signed int __b) {
5292  int __cc;
5293  __builtin_s390_vchfs(__b, (vector signed int)__a, &__cc);
5294  return __cc <= 1;
5295 }
5296 
5297 static inline __ATTRS_o_ai int
5298 vec_any_lt(vector unsigned int __a, vector unsigned int __b) {
5299  int __cc;
5300  __builtin_s390_vchlfs(__b, __a, &__cc);
5301  return __cc <= 1;
5302 }
5303 
5304 // This prototype is deprecated.
5305 static inline __ATTRS_o_ai int
5306 vec_any_lt(vector unsigned int __a, vector bool int __b) {
5307  int __cc;
5308  __builtin_s390_vchlfs((vector unsigned int)__b, __a, &__cc);
5309  return __cc <= 1;
5310 }
5311 
5312 // This prototype is deprecated.
5313 static inline __ATTRS_o_ai int
5314 vec_any_lt(vector bool int __a, vector unsigned int __b) {
5315  int __cc;
5316  __builtin_s390_vchlfs(__b, (vector unsigned int)__a, &__cc);
5317  return __cc <= 1;
5318 }
5319 
5320 // This prototype is deprecated.
5321 static inline __ATTRS_o_ai int
5322 vec_any_lt(vector bool int __a, vector bool int __b) {
5323  int __cc;
5324  __builtin_s390_vchlfs((vector unsigned int)__b,
5325  (vector unsigned int)__a, &__cc);
5326  return __cc <= 1;
5327 }
5328 
5329 static inline __ATTRS_o_ai int
5330 vec_any_lt(vector signed long long __a, vector signed long long __b) {
5331  int __cc;
5332  __builtin_s390_vchgs(__b, __a, &__cc);
5333  return __cc <= 1;
5334 }
5335 
5336 // This prototype is deprecated.
5337 static inline __ATTRS_o_ai int
5338 vec_any_lt(vector signed long long __a, vector bool long long __b) {
5339  int __cc;
5340  __builtin_s390_vchgs((vector signed long long)__b, __a, &__cc);
5341  return __cc <= 1;
5342 }
5343 
5344 // This prototype is deprecated.
5345 static inline __ATTRS_o_ai int
5346 vec_any_lt(vector bool long long __a, vector signed long long __b) {
5347  int __cc;
5348  __builtin_s390_vchgs(__b, (vector signed long long)__a, &__cc);
5349  return __cc <= 1;
5350 }
5351 
5352 static inline __ATTRS_o_ai int
5353 vec_any_lt(vector unsigned long long __a, vector unsigned long long __b) {
5354  int __cc;
5355  __builtin_s390_vchlgs(__b, __a, &__cc);
5356  return __cc <= 1;
5357 }
5358 
5359 // This prototype is deprecated.
5360 static inline __ATTRS_o_ai int
5361 vec_any_lt(vector unsigned long long __a, vector bool long long __b) {
5362  int __cc;
5363  __builtin_s390_vchlgs((vector unsigned long long)__b, __a, &__cc);
5364  return __cc <= 1;
5365 }
5366 
5367 // This prototype is deprecated.
5368 static inline __ATTRS_o_ai int
5369 vec_any_lt(vector bool long long __a, vector unsigned long long __b) {
5370  int __cc;
5371  __builtin_s390_vchlgs(__b, (vector unsigned long long)__a, &__cc);
5372  return __cc <= 1;
5373 }
5374 
5375 // This prototype is deprecated.
5376 static inline __ATTRS_o_ai int
5377 vec_any_lt(vector bool long long __a, vector bool long long __b) {
5378  int __cc;
5379  __builtin_s390_vchlgs((vector unsigned long long)__b,
5380  (vector unsigned long long)__a, &__cc);
5381  return __cc <= 1;
5382 }
5383 
5384 #if __ARCH__ >= 12
5385 static inline __ATTRS_o_ai int
5386 vec_any_lt(vector float __a, vector float __b) {
5387  int __cc;
5388  __builtin_s390_vfchsbs(__b, __a, &__cc);
5389  return __cc <= 1;
5390 }
5391 #endif
5392 
5393 static inline __ATTRS_o_ai int
5394 vec_any_lt(vector double __a, vector double __b) {
5395  int __cc;
5396  __builtin_s390_vfchdbs(__b, __a, &__cc);
5397  return __cc <= 1;
5398 }
5399 
5400 /*-- vec_any_nge ------------------------------------------------------------*/
5401 
5402 #if __ARCH__ >= 12
5403 static inline __ATTRS_o_ai int
5404 vec_any_nge(vector float __a, vector float __b) {
5405  int __cc;
5406  __builtin_s390_vfchesbs(__a, __b, &__cc);
5407  return __cc != 0;
5408 }
5409 #endif
5410 
5411 static inline __ATTRS_o_ai int
5412 vec_any_nge(vector double __a, vector double __b) {
5413  int __cc;
5414  __builtin_s390_vfchedbs(__a, __b, &__cc);
5415  return __cc != 0;
5416 }
5417 
5418 /*-- vec_any_ngt ------------------------------------------------------------*/
5419 
5420 #if __ARCH__ >= 12
5421 static inline __ATTRS_o_ai int
5422 vec_any_ngt(vector float __a, vector float __b) {
5423  int __cc;
5424  __builtin_s390_vfchsbs(__a, __b, &__cc);
5425  return __cc != 0;
5426 }
5427 #endif
5428 
5429 static inline __ATTRS_o_ai int
5430 vec_any_ngt(vector double __a, vector double __b) {
5431  int __cc;
5432  __builtin_s390_vfchdbs(__a, __b, &__cc);
5433  return __cc != 0;
5434 }
5435 
5436 /*-- vec_any_nle ------------------------------------------------------------*/
5437 
5438 #if __ARCH__ >= 12
5439 static inline __ATTRS_o_ai int
5440 vec_any_nle(vector float __a, vector float __b) {
5441  int __cc;
5442  __builtin_s390_vfchesbs(__b, __a, &__cc);
5443  return __cc != 0;
5444 }
5445 #endif
5446 
5447 static inline __ATTRS_o_ai int
5448 vec_any_nle(vector double __a, vector double __b) {
5449  int __cc;
5450  __builtin_s390_vfchedbs(__b, __a, &__cc);
5451  return __cc != 0;
5452 }
5453 
5454 /*-- vec_any_nlt ------------------------------------------------------------*/
5455 
5456 #if __ARCH__ >= 12
5457 static inline __ATTRS_o_ai int
5458 vec_any_nlt(vector float __a, vector float __b) {
5459  int __cc;
5460  __builtin_s390_vfchsbs(__b, __a, &__cc);
5461  return __cc != 0;
5462 }
5463 #endif
5464 
5465 static inline __ATTRS_o_ai int
5466 vec_any_nlt(vector double __a, vector double __b) {
5467  int __cc;
5468  __builtin_s390_vfchdbs(__b, __a, &__cc);
5469  return __cc != 0;
5470 }
5471 
5472 /*-- vec_any_nan ------------------------------------------------------------*/
5473 
5474 #if __ARCH__ >= 12
5475 static inline __ATTRS_o_ai int
5476 vec_any_nan(vector float __a) {
5477  int __cc;
5478  __builtin_s390_vftcisb(__a, 15, &__cc);
5479  return __cc != 3;
5480 }
5481 #endif
5482 
5483 static inline __ATTRS_o_ai int
5484 vec_any_nan(vector double __a) {
5485  int __cc;
5486  __builtin_s390_vftcidb(__a, 15, &__cc);
5487  return __cc != 3;
5488 }
5489 
5490 /*-- vec_any_numeric --------------------------------------------------------*/
5491 
5492 #if __ARCH__ >= 12
5493 static inline __ATTRS_o_ai int
5494 vec_any_numeric(vector float __a) {
5495  int __cc;
5496  __builtin_s390_vftcisb(__a, 15, &__cc);
5497  return __cc != 0;
5498 }
5499 #endif
5500 
5501 static inline __ATTRS_o_ai int
5502 vec_any_numeric(vector double __a) {
5503  int __cc;
5504  __builtin_s390_vftcidb(__a, 15, &__cc);
5505  return __cc != 0;
5506 }
5507 
5508 /*-- vec_andc ---------------------------------------------------------------*/
5509 
5510 static inline __ATTRS_o_ai vector bool char
5511 vec_andc(vector bool char __a, vector bool char __b) {
5512  return __a & ~__b;
5513 }
5514 
5515 static inline __ATTRS_o_ai vector signed char
5516 vec_andc(vector signed char __a, vector signed char __b) {
5517  return __a & ~__b;
5518 }
5519 
5520 // This prototype is deprecated.
5521 static inline __ATTRS_o_ai vector signed char
5522 vec_andc(vector bool char __a, vector signed char __b) {
5523  return __a & ~__b;
5524 }
5525 
5526 // This prototype is deprecated.
5527 static inline __ATTRS_o_ai vector signed char
5528 vec_andc(vector signed char __a, vector bool char __b) {
5529  return __a & ~__b;
5530 }
5531 
5532 static inline __ATTRS_o_ai vector unsigned char
5533 vec_andc(vector unsigned char __a, vector unsigned char __b) {
5534  return __a & ~__b;
5535 }
5536 
5537 // This prototype is deprecated.
5538 static inline __ATTRS_o_ai vector unsigned char
5539 vec_andc(vector bool char __a, vector unsigned char __b) {
5540  return __a & ~__b;
5541 }
5542 
5543 // This prototype is deprecated.
5544 static inline __ATTRS_o_ai vector unsigned char
5545 vec_andc(vector unsigned char __a, vector bool char __b) {
5546  return __a & ~__b;
5547 }
5548 
5549 static inline __ATTRS_o_ai vector bool short
5550 vec_andc(vector bool short __a, vector bool short __b) {
5551  return __a & ~__b;
5552 }
5553 
5554 static inline __ATTRS_o_ai vector signed short
5555 vec_andc(vector signed short __a, vector signed short __b) {
5556  return __a & ~__b;
5557 }
5558 
5559 // This prototype is deprecated.
5560 static inline __ATTRS_o_ai vector signed short
5561 vec_andc(vector bool short __a, vector signed short __b) {
5562  return __a & ~__b;
5563 }
5564 
5565 // This prototype is deprecated.
5566 static inline __ATTRS_o_ai vector signed short
5567 vec_andc(vector signed short __a, vector bool short __b) {
5568  return __a & ~__b;
5569 }
5570 
5571 static inline __ATTRS_o_ai vector unsigned short
5572 vec_andc(vector unsigned short __a, vector unsigned short __b) {
5573  return __a & ~__b;
5574 }
5575 
5576 // This prototype is deprecated.
5577 static inline __ATTRS_o_ai vector unsigned short
5578 vec_andc(vector bool short __a, vector unsigned short __b) {
5579  return __a & ~__b;
5580 }
5581 
5582 // This prototype is deprecated.
5583 static inline __ATTRS_o_ai vector unsigned short
5584 vec_andc(vector unsigned short __a, vector bool short __b) {
5585  return __a & ~__b;
5586 }
5587 
5588 static inline __ATTRS_o_ai vector bool int
5589 vec_andc(vector bool int __a, vector bool int __b) {
5590  return __a & ~__b;
5591 }
5592 
5593 static inline __ATTRS_o_ai vector signed int
5594 vec_andc(vector signed int __a, vector signed int __b) {
5595  return __a & ~__b;
5596 }
5597 
5598 // This prototype is deprecated.
5599 static inline __ATTRS_o_ai vector signed int
5600 vec_andc(vector bool int __a, vector signed int __b) {
5601  return __a & ~__b;
5602 }
5603 
5604 // This prototype is deprecated.
5605 static inline __ATTRS_o_ai vector signed int
5606 vec_andc(vector signed int __a, vector bool int __b) {
5607  return __a & ~__b;
5608 }
5609 
5610 static inline __ATTRS_o_ai vector unsigned int
5611 vec_andc(vector unsigned int __a, vector unsigned int __b) {
5612  return __a & ~__b;
5613 }
5614 
5615 // This prototype is deprecated.
5616 static inline __ATTRS_o_ai vector unsigned int
5617 vec_andc(vector bool int __a, vector unsigned int __b) {
5618  return __a & ~__b;
5619 }
5620 
5621 // This prototype is deprecated.
5622 static inline __ATTRS_o_ai vector unsigned int
5623 vec_andc(vector unsigned int __a, vector bool int __b) {
5624  return __a & ~__b;
5625 }
5626 
5627 static inline __ATTRS_o_ai vector bool long long
5628 vec_andc(vector bool long long __a, vector bool long long __b) {
5629  return __a & ~__b;
5630 }
5631 
5632 static inline __ATTRS_o_ai vector signed long long
5633 vec_andc(vector signed long long __a, vector signed long long __b) {
5634  return __a & ~__b;
5635 }
5636 
5637 // This prototype is deprecated.
5638 static inline __ATTRS_o_ai vector signed long long
5639 vec_andc(vector bool long long __a, vector signed long long __b) {
5640  return __a & ~__b;
5641 }
5642 
5643 // This prototype is deprecated.
5644 static inline __ATTRS_o_ai vector signed long long
5645 vec_andc(vector signed long long __a, vector bool long long __b) {
5646  return __a & ~__b;
5647 }
5648 
5649 static inline __ATTRS_o_ai vector unsigned long long
5650 vec_andc(vector unsigned long long __a, vector unsigned long long __b) {
5651  return __a & ~__b;
5652 }
5653 
5654 // This prototype is deprecated.
5655 static inline __ATTRS_o_ai vector unsigned long long
5656 vec_andc(vector bool long long __a, vector unsigned long long __b) {
5657  return __a & ~__b;
5658 }
5659 
5660 // This prototype is deprecated.
5661 static inline __ATTRS_o_ai vector unsigned long long
5662 vec_andc(vector unsigned long long __a, vector bool long long __b) {
5663  return __a & ~__b;
5664 }
5665 
5666 #if __ARCH__ >= 12
5667 static inline __ATTRS_o_ai vector float
5668 vec_andc(vector float __a, vector float __b) {
5669  return (vector float)((vector unsigned int)__a &
5670  ~(vector unsigned int)__b);
5671 }
5672 #endif
5673 
5674 static inline __ATTRS_o_ai vector double
5675 vec_andc(vector double __a, vector double __b) {
5676  return (vector double)((vector unsigned long long)__a &
5677  ~(vector unsigned long long)__b);
5678 }
5679 
5680 // This prototype is deprecated.
5681 static inline __ATTRS_o_ai vector double
5682 vec_andc(vector bool long long __a, vector double __b) {
5683  return (vector double)((vector unsigned long long)__a &
5684  ~(vector unsigned long long)__b);
5685 }
5686 
5687 // This prototype is deprecated.
5688 static inline __ATTRS_o_ai vector double
5689 vec_andc(vector double __a, vector bool long long __b) {
5690  return (vector double)((vector unsigned long long)__a &
5691  ~(vector unsigned long long)__b);
5692 }
5693 
5694 /*-- vec_nor ----------------------------------------------------------------*/
5695 
5696 static inline __ATTRS_o_ai vector bool char
5697 vec_nor(vector bool char __a, vector bool char __b) {
5698  return ~(__a | __b);
5699 }
5700 
5701 static inline __ATTRS_o_ai vector signed char
5702 vec_nor(vector signed char __a, vector signed char __b) {
5703  return ~(__a | __b);
5704 }
5705 
5706 // This prototype is deprecated.
5707 static inline __ATTRS_o_ai vector signed char
5708 vec_nor(vector bool char __a, vector signed char __b) {
5709  return ~(__a | __b);
5710 }
5711 
5712 // This prototype is deprecated.
5713 static inline __ATTRS_o_ai vector signed char
5714 vec_nor(vector signed char __a, vector bool char __b) {
5715  return ~(__a | __b);
5716 }
5717 
5718 static inline __ATTRS_o_ai vector unsigned char
5719 vec_nor(vector unsigned char __a, vector unsigned char __b) {
5720  return ~(__a | __b);
5721 }
5722 
5723 // This prototype is deprecated.
5724 static inline __ATTRS_o_ai vector unsigned char
5725 vec_nor(vector bool char __a, vector unsigned char __b) {
5726  return ~(__a | __b);
5727 }
5728 
5729 // This prototype is deprecated.
5730 static inline __ATTRS_o_ai vector unsigned char
5731 vec_nor(vector unsigned char __a, vector bool char __b) {
5732  return ~(__a | __b);
5733 }
5734 
5735 static inline __ATTRS_o_ai vector bool short
5736 vec_nor(vector bool short __a, vector bool short __b) {
5737  return ~(__a | __b);
5738 }
5739 
5740 static inline __ATTRS_o_ai vector signed short
5741 vec_nor(vector signed short __a, vector signed short __b) {
5742  return ~(__a | __b);
5743 }
5744 
5745 // This prototype is deprecated.
5746 static inline __ATTRS_o_ai vector signed short
5747 vec_nor(vector bool short __a, vector signed short __b) {
5748  return ~(__a | __b);
5749 }
5750 
5751 // This prototype is deprecated.
5752 static inline __ATTRS_o_ai vector signed short
5753 vec_nor(vector signed short __a, vector bool short __b) {
5754  return ~(__a | __b);
5755 }
5756 
5757 static inline __ATTRS_o_ai vector unsigned short
5758 vec_nor(vector unsigned short __a, vector unsigned short __b) {
5759  return ~(__a | __b);
5760 }
5761 
5762 // This prototype is deprecated.
5763 static inline __ATTRS_o_ai vector unsigned short
5764 vec_nor(vector bool short __a, vector unsigned short __b) {
5765  return ~(__a | __b);
5766 }
5767 
5768 // This prototype is deprecated.
5769 static inline __ATTRS_o_ai vector unsigned short
5770 vec_nor(vector unsigned short __a, vector bool short __b) {
5771  return ~(__a | __b);
5772 }
5773 
5774 static inline __ATTRS_o_ai vector bool int
5775 vec_nor(vector bool int __a, vector bool int __b) {
5776  return ~(__a | __b);
5777 }
5778 
5779 static inline __ATTRS_o_ai vector signed int
5780 vec_nor(vector signed int __a, vector signed int __b) {
5781  return ~(__a | __b);
5782 }
5783 
5784 // This prototype is deprecated.
5785 static inline __ATTRS_o_ai vector signed int
5786 vec_nor(vector bool int __a, vector signed int __b) {
5787  return ~(__a | __b);
5788 }
5789 
5790 // This prototype is deprecated.
5791 static inline __ATTRS_o_ai vector signed int
5792 vec_nor(vector signed int __a, vector bool int __b) {
5793  return ~(__a | __b);
5794 }
5795 
5796 static inline __ATTRS_o_ai vector unsigned int
5797 vec_nor(vector unsigned int __a, vector unsigned int __b) {
5798  return ~(__a | __b);
5799 }
5800 
5801 // This prototype is deprecated.
5802 static inline __ATTRS_o_ai vector unsigned int
5803 vec_nor(vector bool int __a, vector unsigned int __b) {
5804  return ~(__a | __b);
5805 }
5806 
5807 // This prototype is deprecated.
5808 static inline __ATTRS_o_ai vector unsigned int
5809 vec_nor(vector unsigned int __a, vector bool int __b) {
5810  return ~(__a | __b);
5811 }
5812 
5813 static inline __ATTRS_o_ai vector bool long long
5814 vec_nor(vector bool long long __a, vector bool long long __b) {
5815  return ~(__a | __b);
5816 }
5817 
5818 static inline __ATTRS_o_ai vector signed long long
5819 vec_nor(vector signed long long __a, vector signed long long __b) {
5820  return ~(__a | __b);
5821 }
5822 
5823 // This prototype is deprecated.
5824 static inline __ATTRS_o_ai vector signed long long
5825 vec_nor(vector bool long long __a, vector signed long long __b) {
5826  return ~(__a | __b);
5827 }
5828 
5829 // This prototype is deprecated.
5830 static inline __ATTRS_o_ai vector signed long long
5831 vec_nor(vector signed long long __a, vector bool long long __b) {
5832  return ~(__a | __b);
5833 }
5834 
5835 static inline __ATTRS_o_ai vector unsigned long long
5836 vec_nor(vector unsigned long long __a, vector unsigned long long __b) {
5837  return ~(__a | __b);
5838 }
5839 
5840 // This prototype is deprecated.
5841 static inline __ATTRS_o_ai vector unsigned long long
5842 vec_nor(vector bool long long __a, vector unsigned long long __b) {
5843  return ~(__a | __b);
5844 }
5845 
5846 // This prototype is deprecated.
5847 static inline __ATTRS_o_ai vector unsigned long long
5848 vec_nor(vector unsigned long long __a, vector bool long long __b) {
5849  return ~(__a | __b);
5850 }
5851 
5852 #if __ARCH__ >= 12
5853 static inline __ATTRS_o_ai vector float
5854 vec_nor(vector float __a, vector float __b) {
5855  return (vector float)~((vector unsigned int)__a |
5856  (vector unsigned int)__b);
5857 }
5858 #endif
5859 
5860 static inline __ATTRS_o_ai vector double
5861 vec_nor(vector double __a, vector double __b) {
5862  return (vector double)~((vector unsigned long long)__a |
5863  (vector unsigned long long)__b);
5864 }
5865 
5866 // This prototype is deprecated.
5867 static inline __ATTRS_o_ai vector double
5868 vec_nor(vector bool long long __a, vector double __b) {
5869  return (vector double)~((vector unsigned long long)__a |
5870  (vector unsigned long long)__b);
5871 }
5872 
5873 // This prototype is deprecated.
5874 static inline __ATTRS_o_ai vector double
5875 vec_nor(vector double __a, vector bool long long __b) {
5876  return (vector double)~((vector unsigned long long)__a |
5877  (vector unsigned long long)__b);
5878 }
5879 
5880 /*-- vec_orc ----------------------------------------------------------------*/
5881 
5882 #if __ARCH__ >= 12
5883 static inline __ATTRS_o_ai vector bool char
5884 vec_orc(vector bool char __a, vector bool char __b) {
5885  return __a | ~__b;
5886 }
5887 
5888 static inline __ATTRS_o_ai vector signed char
5889 vec_orc(vector signed char __a, vector signed char __b) {
5890  return __a | ~__b;
5891 }
5892 
5893 static inline __ATTRS_o_ai vector unsigned char
5894 vec_orc(vector unsigned char __a, vector unsigned char __b) {
5895  return __a | ~__b;
5896 }
5897 
5898 static inline __ATTRS_o_ai vector bool short
5899 vec_orc(vector bool short __a, vector bool short __b) {
5900  return __a | ~__b;
5901 }
5902 
5903 static inline __ATTRS_o_ai vector signed short
5904 vec_orc(vector signed short __a, vector signed short __b) {
5905  return __a | ~__b;
5906 }
5907 
5908 static inline __ATTRS_o_ai vector unsigned short
5909 vec_orc(vector unsigned short __a, vector unsigned short __b) {
5910  return __a | ~__b;
5911 }
5912 
5913 static inline __ATTRS_o_ai vector bool int
5914 vec_orc(vector bool int __a, vector bool int __b) {
5915  return __a | ~__b;
5916 }
5917 
5918 static inline __ATTRS_o_ai vector signed int
5919 vec_orc(vector signed int __a, vector signed int __b) {
5920  return __a | ~__b;
5921 }
5922 
5923 static inline __ATTRS_o_ai vector unsigned int
5924 vec_orc(vector unsigned int __a, vector unsigned int __b) {
5925  return __a | ~__b;
5926 }
5927 
5928 static inline __ATTRS_o_ai vector bool long long
5929 vec_orc(vector bool long long __a, vector bool long long __b) {
5930  return __a | ~__b;
5931 }
5932 
5933 static inline __ATTRS_o_ai vector signed long long
5934 vec_orc(vector signed long long __a, vector signed long long __b) {
5935  return __a | ~__b;
5936 }
5937 
5938 static inline __ATTRS_o_ai vector unsigned long long
5939 vec_orc(vector unsigned long long __a, vector unsigned long long __b) {
5940  return __a | ~__b;
5941 }
5942 
5943 static inline __ATTRS_o_ai vector float
5944 vec_orc(vector float __a, vector float __b) {
5945  return (vector float)((vector unsigned int)__a &
5946  ~(vector unsigned int)__b);
5947 }
5948 
5949 static inline __ATTRS_o_ai vector double
5950 vec_orc(vector double __a, vector double __b) {
5951  return (vector double)((vector unsigned long long)__a &
5952  ~(vector unsigned long long)__b);
5953 }
5954 #endif
5955 
5956 /*-- vec_nand ---------------------------------------------------------------*/
5957 
5958 #if __ARCH__ >= 12
5959 static inline __ATTRS_o_ai vector bool char
5960 vec_nand(vector bool char __a, vector bool char __b) {
5961  return ~(__a & __b);
5962 }
5963 
5964 static inline __ATTRS_o_ai vector signed char
5965 vec_nand(vector signed char __a, vector signed char __b) {
5966  return ~(__a & __b);
5967 }
5968 
5969 static inline __ATTRS_o_ai vector unsigned char
5970 vec_nand(vector unsigned char __a, vector unsigned char __b) {
5971  return ~(__a & __b);
5972 }
5973 
5974 static inline __ATTRS_o_ai vector bool short
5975 vec_nand(vector bool short __a, vector bool short __b) {
5976  return ~(__a & __b);
5977 }
5978 
5979 static inline __ATTRS_o_ai vector signed short
5980 vec_nand(vector signed short __a, vector signed short __b) {
5981  return ~(__a & __b);
5982 }
5983 
5984 static inline __ATTRS_o_ai vector unsigned short
5985 vec_nand(vector unsigned short __a, vector unsigned short __b) {
5986  return ~(__a & __b);
5987 }
5988 
5989 static inline __ATTRS_o_ai vector bool int
5990 vec_nand(vector bool int __a, vector bool int __b) {
5991  return ~(__a & __b);
5992 }
5993 
5994 static inline __ATTRS_o_ai vector signed int
5995 vec_nand(vector signed int __a, vector signed int __b) {
5996  return ~(__a & __b);
5997 }
5998 
5999 static inline __ATTRS_o_ai vector unsigned int
6000 vec_nand(vector unsigned int __a, vector unsigned int __b) {
6001  return ~(__a & __b);
6002 }
6003 
6004 static inline __ATTRS_o_ai vector bool long long
6005 vec_nand(vector bool long long __a, vector bool long long __b) {
6006  return ~(__a & __b);
6007 }
6008 
6009 static inline __ATTRS_o_ai vector signed long long
6010 vec_nand(vector signed long long __a, vector signed long long __b) {
6011  return ~(__a & __b);
6012 }
6013 
6014 static inline __ATTRS_o_ai vector unsigned long long
6015 vec_nand(vector unsigned long long __a, vector unsigned long long __b) {
6016  return ~(__a & __b);
6017 }
6018 
6019 static inline __ATTRS_o_ai vector float
6020 vec_nand(vector float __a, vector float __b) {
6021  return (vector float)~((vector unsigned int)__a &
6022  (vector unsigned int)__b);
6023 }
6024 
6025 static inline __ATTRS_o_ai vector double
6026 vec_nand(vector double __a, vector double __b) {
6027  return (vector double)~((vector unsigned long long)__a &
6028  (vector unsigned long long)__b);
6029 }
6030 #endif
6031 
6032 /*-- vec_eqv ----------------------------------------------------------------*/
6033 
6034 #if __ARCH__ >= 12
6035 static inline __ATTRS_o_ai vector bool char
6036 vec_eqv(vector bool char __a, vector bool char __b) {
6037  return ~(__a ^ __b);
6038 }
6039 
6040 static inline __ATTRS_o_ai vector signed char
6041 vec_eqv(vector signed char __a, vector signed char __b) {
6042  return ~(__a ^ __b);
6043 }
6044 
6045 static inline __ATTRS_o_ai vector unsigned char
6046 vec_eqv(vector unsigned char __a, vector unsigned char __b) {
6047  return ~(__a ^ __b);
6048 }
6049 
6050 static inline __ATTRS_o_ai vector bool short
6051 vec_eqv(vector bool short __a, vector bool short __b) {
6052  return ~(__a ^ __b);
6053 }
6054 
6055 static inline __ATTRS_o_ai vector signed short
6056 vec_eqv(vector signed short __a, vector signed short __b) {
6057  return ~(__a ^ __b);
6058 }
6059 
6060 static inline __ATTRS_o_ai vector unsigned short
6061 vec_eqv(vector unsigned short __a, vector unsigned short __b) {
6062  return ~(__a ^ __b);
6063 }
6064 
6065 static inline __ATTRS_o_ai vector bool int
6066 vec_eqv(vector bool int __a, vector bool int __b) {
6067  return ~(__a ^ __b);
6068 }
6069 
6070 static inline __ATTRS_o_ai vector signed int
6071 vec_eqv(vector signed int __a, vector signed int __b) {
6072  return ~(__a ^ __b);
6073 }
6074 
6075 static inline __ATTRS_o_ai vector unsigned int
6076 vec_eqv(vector unsigned int __a, vector unsigned int __b) {
6077  return ~(__a ^ __b);
6078 }
6079 
6080 static inline __ATTRS_o_ai vector bool long long
6081 vec_eqv(vector bool long long __a, vector bool long long __b) {
6082  return ~(__a ^ __b);
6083 }
6084 
6085 static inline __ATTRS_o_ai vector signed long long
6086 vec_eqv(vector signed long long __a, vector signed long long __b) {
6087  return ~(__a ^ __b);
6088 }
6089 
6090 static inline __ATTRS_o_ai vector unsigned long long
6091 vec_eqv(vector unsigned long long __a, vector unsigned long long __b) {
6092  return ~(__a ^ __b);
6093 }
6094 
6095 static inline __ATTRS_o_ai vector float
6096 vec_eqv(vector float __a, vector float __b) {
6097  return (vector float)~((vector unsigned int)__a ^
6098  (vector unsigned int)__b);
6099 }
6100 
6101 static inline __ATTRS_o_ai vector double
6102 vec_eqv(vector double __a, vector double __b) {
6103  return (vector double)~((vector unsigned long long)__a ^
6104  (vector unsigned long long)__b);
6105 }
6106 #endif
6107 
6108 /*-- vec_cntlz --------------------------------------------------------------*/
6109 
6110 static inline __ATTRS_o_ai vector unsigned char
6111 vec_cntlz(vector signed char __a) {
6112  return __builtin_s390_vclzb((vector unsigned char)__a);
6113 }
6114 
6115 static inline __ATTRS_o_ai vector unsigned char
6116 vec_cntlz(vector unsigned char __a) {
6117  return __builtin_s390_vclzb(__a);
6118 }
6119 
6120 static inline __ATTRS_o_ai vector unsigned short
6121 vec_cntlz(vector signed short __a) {
6122  return __builtin_s390_vclzh((vector unsigned short)__a);
6123 }
6124 
6125 static inline __ATTRS_o_ai vector unsigned short
6126 vec_cntlz(vector unsigned short __a) {
6127  return __builtin_s390_vclzh(__a);
6128 }
6129 
6130 static inline __ATTRS_o_ai vector unsigned int
6131 vec_cntlz(vector signed int __a) {
6132  return __builtin_s390_vclzf((vector unsigned int)__a);
6133 }
6134 
6135 static inline __ATTRS_o_ai vector unsigned int
6136 vec_cntlz(vector unsigned int __a) {
6137  return __builtin_s390_vclzf(__a);
6138 }
6139 
6140 static inline __ATTRS_o_ai vector unsigned long long
6141 vec_cntlz(vector signed long long __a) {
6142  return __builtin_s390_vclzg((vector unsigned long long)__a);
6143 }
6144 
6145 static inline __ATTRS_o_ai vector unsigned long long
6146 vec_cntlz(vector unsigned long long __a) {
6147  return __builtin_s390_vclzg(__a);
6148 }
6149 
6150 /*-- vec_cnttz --------------------------------------------------------------*/
6151 
6152 static inline __ATTRS_o_ai vector unsigned char
6153 vec_cnttz(vector signed char __a) {
6154  return __builtin_s390_vctzb((vector unsigned char)__a);
6155 }
6156 
6157 static inline __ATTRS_o_ai vector unsigned char
6158 vec_cnttz(vector unsigned char __a) {
6159  return __builtin_s390_vctzb(__a);
6160 }
6161 
6162 static inline __ATTRS_o_ai vector unsigned short
6163 vec_cnttz(vector signed short __a) {
6164  return __builtin_s390_vctzh((vector unsigned short)__a);
6165 }
6166 
6167 static inline __ATTRS_o_ai vector unsigned short
6168 vec_cnttz(vector unsigned short __a) {
6169  return __builtin_s390_vctzh(__a);
6170 }
6171 
6172 static inline __ATTRS_o_ai vector unsigned int
6173 vec_cnttz(vector signed int __a) {
6174  return __builtin_s390_vctzf((vector unsigned int)__a);
6175 }
6176 
6177 static inline __ATTRS_o_ai vector unsigned int
6178 vec_cnttz(vector unsigned int __a) {
6179  return __builtin_s390_vctzf(__a);
6180 }
6181 
6182 static inline __ATTRS_o_ai vector unsigned long long
6183 vec_cnttz(vector signed long long __a) {
6184  return __builtin_s390_vctzg((vector unsigned long long)__a);
6185 }
6186 
6187 static inline __ATTRS_o_ai vector unsigned long long
6188 vec_cnttz(vector unsigned long long __a) {
6189  return __builtin_s390_vctzg(__a);
6190 }
6191 
6192 /*-- vec_popcnt -------------------------------------------------------------*/
6193 
6194 static inline __ATTRS_o_ai vector unsigned char
6195 vec_popcnt(vector signed char __a) {
6196  return __builtin_s390_vpopctb((vector unsigned char)__a);
6197 }
6198 
6199 static inline __ATTRS_o_ai vector unsigned char
6200 vec_popcnt(vector unsigned char __a) {
6201  return __builtin_s390_vpopctb(__a);
6202 }
6203 
6204 static inline __ATTRS_o_ai vector unsigned short
6205 vec_popcnt(vector signed short __a) {
6206  return __builtin_s390_vpopcth((vector unsigned short)__a);
6207 }
6208 
6209 static inline __ATTRS_o_ai vector unsigned short
6210 vec_popcnt(vector unsigned short __a) {
6211  return __builtin_s390_vpopcth(__a);
6212 }
6213 
6214 static inline __ATTRS_o_ai vector unsigned int
6215 vec_popcnt(vector signed int __a) {
6216  return __builtin_s390_vpopctf((vector unsigned int)__a);
6217 }
6218 
6219 static inline __ATTRS_o_ai vector unsigned int
6220 vec_popcnt(vector unsigned int __a) {
6221  return __builtin_s390_vpopctf(__a);
6222 }
6223 
6224 static inline __ATTRS_o_ai vector unsigned long long
6225 vec_popcnt(vector signed long long __a) {
6226  return __builtin_s390_vpopctg((vector unsigned long long)__a);
6227 }
6228 
6229 static inline __ATTRS_o_ai vector unsigned long long
6230 vec_popcnt(vector unsigned long long __a) {
6231  return __builtin_s390_vpopctg(__a);
6232 }
6233 
6234 /*-- vec_rl -----------------------------------------------------------------*/
6235 
6236 static inline __ATTRS_o_ai vector signed char
6237 vec_rl(vector signed char __a, vector unsigned char __b) {
6238  return (vector signed char)__builtin_s390_verllvb(
6239  (vector unsigned char)__a, __b);
6240 }
6241 
6242 static inline __ATTRS_o_ai vector unsigned char
6243 vec_rl(vector unsigned char __a, vector unsigned char __b) {
6244  return __builtin_s390_verllvb(__a, __b);
6245 }
6246 
6247 static inline __ATTRS_o_ai vector signed short
6248 vec_rl(vector signed short __a, vector unsigned short __b) {
6249  return (vector signed short)__builtin_s390_verllvh(
6250  (vector unsigned short)__a, __b);
6251 }
6252 
6253 static inline __ATTRS_o_ai vector unsigned short
6254 vec_rl(vector unsigned short __a, vector unsigned short __b) {
6255  return __builtin_s390_verllvh(__a, __b);
6256 }
6257 
6258 static inline __ATTRS_o_ai vector signed int
6259 vec_rl(vector signed int __a, vector unsigned int __b) {
6260  return (vector signed int)__builtin_s390_verllvf(
6261  (vector unsigned int)__a, __b);
6262 }
6263 
6264 static inline __ATTRS_o_ai vector unsigned int
6265 vec_rl(vector unsigned int __a, vector unsigned int __b) {
6266  return __builtin_s390_verllvf(__a, __b);
6267 }
6268 
6269 static inline __ATTRS_o_ai vector signed long long
6270 vec_rl(vector signed long long __a, vector unsigned long long __b) {
6271  return (vector signed long long)__builtin_s390_verllvg(
6272  (vector unsigned long long)__a, __b);
6273 }
6274 
6275 static inline __ATTRS_o_ai vector unsigned long long
6276 vec_rl(vector unsigned long long __a, vector unsigned long long __b) {
6277  return __builtin_s390_verllvg(__a, __b);
6278 }
6279 
6280 /*-- vec_rli ----------------------------------------------------------------*/
6281 
6282 static inline __ATTRS_o_ai vector signed char
6283 vec_rli(vector signed char __a, unsigned long __b) {
6284  return (vector signed char)__builtin_s390_verllb(
6285  (vector unsigned char)__a, (int)__b);
6286 }
6287 
6288 static inline __ATTRS_o_ai vector unsigned char
6289 vec_rli(vector unsigned char __a, unsigned long __b) {
6290  return __builtin_s390_verllb(__a, (int)__b);
6291 }
6292 
6293 static inline __ATTRS_o_ai vector signed short
6294 vec_rli(vector signed short __a, unsigned long __b) {
6295  return (vector signed short)__builtin_s390_verllh(
6296  (vector unsigned short)__a, (int)__b);
6297 }
6298 
6299 static inline __ATTRS_o_ai vector unsigned short
6300 vec_rli(vector unsigned short __a, unsigned long __b) {
6301  return __builtin_s390_verllh(__a, (int)__b);
6302 }
6303 
6304 static inline __ATTRS_o_ai vector signed int
6305 vec_rli(vector signed int __a, unsigned long __b) {
6306  return (vector signed int)__builtin_s390_verllf(
6307  (vector unsigned int)__a, (int)__b);
6308 }
6309 
6310 static inline __ATTRS_o_ai vector unsigned int
6311 vec_rli(vector unsigned int __a, unsigned long __b) {
6312  return __builtin_s390_verllf(__a, (int)__b);
6313 }
6314 
6315 static inline __ATTRS_o_ai vector signed long long
6316 vec_rli(vector signed long long __a, unsigned long __b) {
6317  return (vector signed long long)__builtin_s390_verllg(
6318  (vector unsigned long long)__a, (int)__b);
6319 }
6320 
6321 static inline __ATTRS_o_ai vector unsigned long long
6322 vec_rli(vector unsigned long long __a, unsigned long __b) {
6323  return __builtin_s390_verllg(__a, (int)__b);
6324 }
6325 
6326 /*-- vec_rl_mask ------------------------------------------------------------*/
6327 
6328 extern __ATTRS_o vector signed char
6329 vec_rl_mask(vector signed char __a, vector unsigned char __b,
6330  unsigned char __c) __constant(__c);
6331 
6332 extern __ATTRS_o vector unsigned char
6333 vec_rl_mask(vector unsigned char __a, vector unsigned char __b,
6334  unsigned char __c) __constant(__c);
6335 
6336 extern __ATTRS_o vector signed short
6337 vec_rl_mask(vector signed short __a, vector unsigned short __b,
6338  unsigned char __c) __constant(__c);
6339 
6340 extern __ATTRS_o vector unsigned short
6341 vec_rl_mask(vector unsigned short __a, vector unsigned short __b,
6342  unsigned char __c) __constant(__c);
6343 
6344 extern __ATTRS_o vector signed int
6345 vec_rl_mask(vector signed int __a, vector unsigned int __b,
6346  unsigned char __c) __constant(__c);
6347 
6348 extern __ATTRS_o vector unsigned int
6349 vec_rl_mask(vector unsigned int __a, vector unsigned int __b,
6350  unsigned char __c) __constant(__c);
6351 
6352 extern __ATTRS_o vector signed long long
6353 vec_rl_mask(vector signed long long __a, vector unsigned long long __b,
6354  unsigned char __c) __constant(__c);
6355 
6356 extern __ATTRS_o vector unsigned long long
6357 vec_rl_mask(vector unsigned long long __a, vector unsigned long long __b,
6358  unsigned char __c) __constant(__c);
6359 
6360 #define vec_rl_mask(X, Y, Z) ((__typeof__((vec_rl_mask)((X), (Y), (Z)))) \
6361  __extension__ ({ \
6362  vector unsigned char __res; \
6363  vector unsigned char __x = (vector unsigned char)(X); \
6364  vector unsigned char __y = (vector unsigned char)(Y); \
6365  switch (sizeof ((X)[0])) { \
6366  case 1: __res = (vector unsigned char) __builtin_s390_verimb( \
6367  (vector unsigned char)__x, (vector unsigned char)__x, \
6368  (vector unsigned char)__y, (Z)); break; \
6369  case 2: __res = (vector unsigned char) __builtin_s390_verimh( \
6370  (vector unsigned short)__x, (vector unsigned short)__x, \
6371  (vector unsigned short)__y, (Z)); break; \
6372  case 4: __res = (vector unsigned char) __builtin_s390_verimf( \
6373  (vector unsigned int)__x, (vector unsigned int)__x, \
6374  (vector unsigned int)__y, (Z)); break; \
6375  default: __res = (vector unsigned char) __builtin_s390_verimg( \
6376  (vector unsigned long long)__x, (vector unsigned long long)__x, \
6377  (vector unsigned long long)__y, (Z)); break; \
6378  } __res; }))
6379 
6380 /*-- vec_sll ----------------------------------------------------------------*/
6381 
6382 static inline __ATTRS_o_ai vector signed char
6383 vec_sll(vector signed char __a, vector unsigned char __b) {
6384  return (vector signed char)__builtin_s390_vsl(
6385  (vector unsigned char)__a, __b);
6386 }
6387 
6388 // This prototype is deprecated.
6389 static inline __ATTRS_o_ai vector signed char
6390 vec_sll(vector signed char __a, vector unsigned short __b) {
6391  return (vector signed char)__builtin_s390_vsl(
6392  (vector unsigned char)__a, (vector unsigned char)__b);
6393 }
6394 
6395 // This prototype is deprecated.
6396 static inline __ATTRS_o_ai vector signed char
6397 vec_sll(vector signed char __a, vector unsigned int __b) {
6398  return (vector signed char)__builtin_s390_vsl(
6399  (vector unsigned char)__a, (vector unsigned char)__b);
6400 }
6401 
6402 // This prototype is deprecated.
6403 static inline __ATTRS_o_ai vector bool char
6404 vec_sll(vector bool char __a, vector unsigned char __b) {
6405  return (vector bool char)__builtin_s390_vsl(
6406  (vector unsigned char)__a, __b);
6407 }
6408 
6409 // This prototype is deprecated.
6410 static inline __ATTRS_o_ai vector bool char
6411 vec_sll(vector bool char __a, vector unsigned short __b) {
6412  return (vector bool char)__builtin_s390_vsl(
6413  (vector unsigned char)__a, (vector unsigned char)__b);
6414 }
6415 
6416 // This prototype is deprecated.
6417 static inline __ATTRS_o_ai vector bool char
6418 vec_sll(vector bool char __a, vector unsigned int __b) {
6419  return (vector bool char)__builtin_s390_vsl(
6420  (vector unsigned char)__a, (vector unsigned char)__b);
6421 }
6422 
6423 static inline __ATTRS_o_ai vector unsigned char
6424 vec_sll(vector unsigned char __a, vector unsigned char __b) {
6425  return __builtin_s390_vsl(__a, __b);
6426 }
6427 
6428 // This prototype is deprecated.
6429 static inline __ATTRS_o_ai vector unsigned char
6430 vec_sll(vector unsigned char __a, vector unsigned short __b) {
6431  return __builtin_s390_vsl(__a, (vector unsigned char)__b);
6432 }
6433 
6434 // This prototype is deprecated.
6435 static inline __ATTRS_o_ai vector unsigned char
6436 vec_sll(vector unsigned char __a, vector unsigned int __b) {
6437  return __builtin_s390_vsl(__a, (vector unsigned char)__b);
6438 }
6439 
6440 static inline __ATTRS_o_ai vector signed short
6441 vec_sll(vector signed short __a, vector unsigned char __b) {
6442  return (vector signed short)__builtin_s390_vsl(
6443  (vector unsigned char)__a, __b);
6444 }
6445 
6446 // This prototype is deprecated.
6447 static inline __ATTRS_o_ai vector signed short
6448 vec_sll(vector signed short __a, vector unsigned short __b) {
6449  return (vector signed short)__builtin_s390_vsl(
6450  (vector unsigned char)__a, (vector unsigned char)__b);
6451 }
6452 
6453 // This prototype is deprecated.
6454 static inline __ATTRS_o_ai vector signed short
6455 vec_sll(vector signed short __a, vector unsigned int __b) {
6456  return (vector signed short)__builtin_s390_vsl(
6457  (vector unsigned char)__a, (vector unsigned char)__b);
6458 }
6459 
6460 // This prototype is deprecated.
6461 static inline __ATTRS_o_ai vector bool short
6462 vec_sll(vector bool short __a, vector unsigned char __b) {
6463  return (vector bool short)__builtin_s390_vsl(
6464  (vector unsigned char)__a, __b);
6465 }
6466 
6467 // This prototype is deprecated.
6468 static inline __ATTRS_o_ai vector bool short
6469 vec_sll(vector bool short __a, vector unsigned short __b) {
6470  return (vector bool short)__builtin_s390_vsl(
6471  (vector unsigned char)__a, (vector unsigned char)__b);
6472 }
6473 
6474 // This prototype is deprecated.
6475 static inline __ATTRS_o_ai vector bool short
6476 vec_sll(vector bool short __a, vector unsigned int __b) {
6477  return (vector bool short)__builtin_s390_vsl(
6478  (vector unsigned char)__a, (vector unsigned char)__b);
6479 }
6480 
6481 static inline __ATTRS_o_ai vector unsigned short
6482 vec_sll(vector unsigned short __a, vector unsigned char __b) {
6483  return (vector unsigned short)__builtin_s390_vsl(
6484  (vector unsigned char)__a, __b);
6485 }
6486 
6487 // This prototype is deprecated.
6488 static inline __ATTRS_o_ai vector unsigned short
6489 vec_sll(vector unsigned short __a, vector unsigned short __b) {
6490  return (vector unsigned short)__builtin_s390_vsl(
6491  (vector unsigned char)__a, (vector unsigned char)__b);
6492 }
6493 
6494 // This prototype is deprecated.
6495 static inline __ATTRS_o_ai vector unsigned short
6496 vec_sll(vector unsigned short __a, vector unsigned int __b) {
6497  return (vector unsigned short)__builtin_s390_vsl(
6498  (vector unsigned char)__a, (vector unsigned char)__b);
6499 }
6500 
6501 static inline __ATTRS_o_ai vector signed int
6502 vec_sll(vector signed int __a, vector unsigned char __b) {
6503  return (vector signed int)__builtin_s390_vsl(
6504  (vector unsigned char)__a, __b);
6505 }
6506 
6507 // This prototype is deprecated.
6508 static inline __ATTRS_o_ai vector signed int
6509 vec_sll(vector signed int __a, vector unsigned short __b) {
6510  return (vector signed int)__builtin_s390_vsl(
6511  (vector unsigned char)__a, (vector unsigned char)__b);
6512 }
6513 
6514 // This prototype is deprecated.
6515 static inline __ATTRS_o_ai vector signed int
6516 vec_sll(vector signed int __a, vector unsigned int __b) {
6517  return (vector signed int)__builtin_s390_vsl(
6518  (vector unsigned char)__a, (vector unsigned char)__b);
6519 }
6520 
6521 // This prototype is deprecated.
6522 static inline __ATTRS_o_ai vector bool int
6523 vec_sll(vector bool int __a, vector unsigned char __b) {
6524  return (vector bool int)__builtin_s390_vsl(
6525  (vector unsigned char)__a, __b);
6526 }
6527 
6528 // This prototype is deprecated.
6529 static inline __ATTRS_o_ai vector bool int
6530 vec_sll(vector bool int __a, vector unsigned short __b) {
6531  return (vector bool int)__builtin_s390_vsl(
6532  (vector unsigned char)__a, (vector unsigned char)__b);
6533 }
6534 
6535 // This prototype is deprecated.
6536 static inline __ATTRS_o_ai vector bool int
6537 vec_sll(vector bool int __a, vector unsigned int __b) {
6538  return (vector bool int)__builtin_s390_vsl(
6539  (vector unsigned char)__a, (vector unsigned char)__b);
6540 }
6541 
6542 static inline __ATTRS_o_ai vector unsigned int
6543 vec_sll(vector unsigned int __a, vector unsigned char __b) {
6544  return (vector unsigned int)__builtin_s390_vsl(
6545  (vector unsigned char)__a, __b);
6546 }
6547 
6548 // This prototype is deprecated.
6549 static inline __ATTRS_o_ai vector unsigned int
6550 vec_sll(vector unsigned int __a, vector unsigned short __b) {
6551  return (vector unsigned int)__builtin_s390_vsl(
6552  (vector unsigned char)__a, (vector unsigned char)__b);
6553 }
6554 
6555 // This prototype is deprecated.
6556 static inline __ATTRS_o_ai vector unsigned int
6557 vec_sll(vector unsigned int __a, vector unsigned int __b) {
6558  return (vector unsigned int)__builtin_s390_vsl(
6559  (vector unsigned char)__a, (vector unsigned char)__b);
6560 }
6561 
6562 static inline __ATTRS_o_ai vector signed long long
6563 vec_sll(vector signed long long __a, vector unsigned char __b) {
6564  return (vector signed long long)__builtin_s390_vsl(
6565  (vector unsigned char)__a, __b);
6566 }
6567 
6568 // This prototype is deprecated.
6569 static inline __ATTRS_o_ai vector signed long long
6570 vec_sll(vector signed long long __a, vector unsigned short __b) {
6571  return (vector signed long long)__builtin_s390_vsl(
6572  (vector unsigned char)__a, (vector unsigned char)__b);
6573 }
6574 
6575 // This prototype is deprecated.
6576 static inline __ATTRS_o_ai vector signed long long
6577 vec_sll(vector signed long long __a, vector unsigned int __b) {
6578  return (vector signed long long)__builtin_s390_vsl(
6579  (vector unsigned char)__a, (vector unsigned char)__b);
6580 }
6581 
6582 // This prototype is deprecated.
6583 static inline __ATTRS_o_ai vector bool long long
6584 vec_sll(vector bool long long __a, vector unsigned char __b) {
6585  return (vector bool long long)__builtin_s390_vsl(
6586  (vector unsigned char)__a, __b);
6587 }
6588 
6589 // This prototype is deprecated.
6590 static inline __ATTRS_o_ai vector bool long long
6591 vec_sll(vector bool long long __a, vector unsigned short __b) {
6592  return (vector bool long long)__builtin_s390_vsl(
6593  (vector unsigned char)__a, (vector unsigned char)__b);
6594 }
6595 
6596 // This prototype is deprecated.
6597 static inline __ATTRS_o_ai vector bool long long
6598 vec_sll(vector bool long long __a, vector unsigned int __b) {
6599  return (vector bool long long)__builtin_s390_vsl(
6600  (vector unsigned char)__a, (vector unsigned char)__b);
6601 }
6602 
6603 static inline __ATTRS_o_ai vector unsigned long long
6604 vec_sll(vector unsigned long long __a, vector unsigned char __b) {
6605  return (vector unsigned long long)__builtin_s390_vsl(
6606  (vector unsigned char)__a, __b);
6607 }
6608 
6609 // This prototype is deprecated.
6610 static inline __ATTRS_o_ai vector unsigned long long
6611 vec_sll(vector unsigned long long __a, vector unsigned short __b) {
6612  return (vector unsigned long long)__builtin_s390_vsl(
6613  (vector unsigned char)__a, (vector unsigned char)__b);
6614 }
6615 
6616 // This prototype is deprecated.
6617 static inline __ATTRS_o_ai vector unsigned long long
6618 vec_sll(vector unsigned long long __a, vector unsigned int __b) {
6619  return (vector unsigned long long)__builtin_s390_vsl(
6620  (vector unsigned char)__a, (vector unsigned char)__b);
6621 }
6622 
6623 /*-- vec_slb ----------------------------------------------------------------*/
6624 
6625 static inline __ATTRS_o_ai vector signed char
6626 vec_slb(vector signed char __a, vector signed char __b) {
6627  return (vector signed char)__builtin_s390_vslb(
6628  (vector unsigned char)__a, (vector unsigned char)__b);
6629 }
6630 
6631 static inline __ATTRS_o_ai vector signed char
6632 vec_slb(vector signed char __a, vector unsigned char __b) {
6633  return (vector signed char)__builtin_s390_vslb(
6634  (vector unsigned char)__a, __b);
6635 }
6636 
6637 static inline __ATTRS_o_ai vector unsigned char
6638 vec_slb(vector unsigned char __a, vector signed char __b) {
6639  return __builtin_s390_vslb(__a, (vector unsigned char)__b);
6640 }
6641 
6642 static inline __ATTRS_o_ai vector unsigned char
6643 vec_slb(vector unsigned char __a, vector unsigned char __b) {
6644  return __builtin_s390_vslb(__a, __b);
6645 }
6646 
6647 static inline __ATTRS_o_ai vector signed short
6648 vec_slb(vector signed short __a, vector signed short __b) {
6649  return (vector signed short)__builtin_s390_vslb(
6650  (vector unsigned char)__a, (vector unsigned char)__b);
6651 }
6652 
6653 static inline __ATTRS_o_ai vector signed short
6654 vec_slb(vector signed short __a, vector unsigned short __b) {
6655  return (vector signed short)__builtin_s390_vslb(
6656  (vector unsigned char)__a, (vector unsigned char)__b);
6657 }
6658 
6659 static inline __ATTRS_o_ai vector unsigned short
6660 vec_slb(vector unsigned short __a, vector signed short __b) {
6661  return (vector unsigned short)__builtin_s390_vslb(
6662  (vector unsigned char)__a, (vector unsigned char)__b);
6663 }
6664 
6665 static inline __ATTRS_o_ai vector unsigned short
6666 vec_slb(vector unsigned short __a, vector unsigned short __b) {
6667  return (vector unsigned short)__builtin_s390_vslb(
6668  (vector unsigned char)__a, (vector unsigned char)__b);
6669 }
6670 
6671 static inline __ATTRS_o_ai vector signed int
6672 vec_slb(vector signed int __a, vector signed int __b) {
6673  return (vector signed int)__builtin_s390_vslb(
6674  (vector unsigned char)__a, (vector unsigned char)__b);
6675 }
6676 
6677 static inline __ATTRS_o_ai vector signed int
6678 vec_slb(vector signed int __a, vector unsigned int __b) {
6679  return (vector signed int)__builtin_s390_vslb(
6680  (vector unsigned char)__a, (vector unsigned char)__b);
6681 }
6682 
6683 static inline __ATTRS_o_ai vector unsigned int
6684 vec_slb(vector unsigned int __a, vector signed int __b) {
6685  return (vector unsigned int)__builtin_s390_vslb(
6686  (vector unsigned char)__a, (vector unsigned char)__b);
6687 }
6688 
6689 static inline __ATTRS_o_ai vector unsigned int
6690 vec_slb(vector unsigned int __a, vector unsigned int __b) {
6691  return (vector unsigned int)__builtin_s390_vslb(
6692  (vector unsigned char)__a, (vector unsigned char)__b);
6693 }
6694 
6695 static inline __ATTRS_o_ai vector signed long long
6696 vec_slb(vector signed long long __a, vector signed long long __b) {
6697  return (vector signed long long)__builtin_s390_vslb(
6698  (vector unsigned char)__a, (vector unsigned char)__b);
6699 }
6700 
6701 static inline __ATTRS_o_ai vector signed long long
6702 vec_slb(vector signed long long __a, vector unsigned long long __b) {
6703  return (vector signed long long)__builtin_s390_vslb(
6704  (vector unsigned char)__a, (vector unsigned char)__b);
6705 }
6706 
6707 static inline __ATTRS_o_ai vector unsigned long long
6708 vec_slb(vector unsigned long long __a, vector signed long long __b) {
6709  return (vector unsigned long long)__builtin_s390_vslb(
6710  (vector unsigned char)__a, (vector unsigned char)__b);
6711 }
6712 
6713 static inline __ATTRS_o_ai vector unsigned long long
6714 vec_slb(vector unsigned long long __a, vector unsigned long long __b) {
6715  return (vector unsigned long long)__builtin_s390_vslb(
6716  (vector unsigned char)__a, (vector unsigned char)__b);
6717 }
6718 
6719 #if __ARCH__ >= 12
6720 static inline __ATTRS_o_ai vector float
6721 vec_slb(vector float __a, vector signed int __b) {
6722  return (vector float)__builtin_s390_vslb(
6723  (vector unsigned char)__a, (vector unsigned char)__b);
6724 }
6725 
6726 static inline __ATTRS_o_ai vector float
6727 vec_slb(vector float __a, vector unsigned int __b) {
6728  return (vector float)__builtin_s390_vslb(
6729  (vector unsigned char)__a, (vector unsigned char)__b);
6730 }
6731 #endif
6732 
6733 static inline __ATTRS_o_ai vector double
6734 vec_slb(vector double __a, vector signed long long __b) {
6735  return (vector double)__builtin_s390_vslb(
6736  (vector unsigned char)__a, (vector unsigned char)__b);
6737 }
6738 
6739 static inline __ATTRS_o_ai vector double
6740 vec_slb(vector double __a, vector unsigned long long __b) {
6741  return (vector double)__builtin_s390_vslb(
6742  (vector unsigned char)__a, (vector unsigned char)__b);
6743 }
6744 
6745 /*-- vec_sld ----------------------------------------------------------------*/
6746 
6747 extern __ATTRS_o vector signed char
6748 vec_sld(vector signed char __a, vector signed char __b, int __c)
6749  __constant_range(__c, 0, 15);
6750 
6751 extern __ATTRS_o vector bool char
6752 vec_sld(vector bool char __a, vector bool char __b, int __c)
6753  __constant_range(__c, 0, 15);
6754 
6755 extern __ATTRS_o vector unsigned char
6756 vec_sld(vector unsigned char __a, vector unsigned char __b, int __c)
6757  __constant_range(__c, 0, 15);
6758 
6759 extern __ATTRS_o vector signed short
6760 vec_sld(vector signed short __a, vector signed short __b, int __c)
6761  __constant_range(__c, 0, 15);
6762 
6763 extern __ATTRS_o vector bool short
6764 vec_sld(vector bool short __a, vector bool short __b, int __c)
6765  __constant_range(__c, 0, 15);
6766 
6767 extern __ATTRS_o vector unsigned short
6768 vec_sld(vector unsigned short __a, vector unsigned short __b, int __c)
6769  __constant_range(__c, 0, 15);
6770 
6771 extern __ATTRS_o vector signed int
6772 vec_sld(vector signed int __a, vector signed int __b, int __c)
6773  __constant_range(__c, 0, 15);
6774 
6775 extern __ATTRS_o vector bool int
6776 vec_sld(vector bool int __a, vector bool int __b, int __c)
6777  __constant_range(__c, 0, 15);
6778 
6779 extern __ATTRS_o vector unsigned int
6780 vec_sld(vector unsigned int __a, vector unsigned int __b, int __c)
6781  __constant_range(__c, 0, 15);
6782 
6783 extern __ATTRS_o vector signed long long
6784 vec_sld(vector signed long long __a, vector signed long long __b, int __c)
6785  __constant_range(__c, 0, 15);
6786 
6787 extern __ATTRS_o vector bool long long
6788 vec_sld(vector bool long long __a, vector bool long long __b, int __c)
6789  __constant_range(__c, 0, 15);
6790 
6791 extern __ATTRS_o vector unsigned long long
6792 vec_sld(vector unsigned long long __a, vector unsigned long long __b, int __c)
6793  __constant_range(__c, 0, 15);
6794 
6795 #if __ARCH__ >= 12
6796 extern __ATTRS_o vector float
6797 vec_sld(vector float __a, vector float __b, int __c)
6798  __constant_range(__c, 0, 15);
6799 #endif
6800 
6801 extern __ATTRS_o vector double
6802 vec_sld(vector double __a, vector double __b, int __c)
6803  __constant_range(__c, 0, 15);
6804 
6805 #define vec_sld(X, Y, Z) ((__typeof__((vec_sld)((X), (Y), (Z)))) \
6806  __builtin_s390_vsldb((vector unsigned char)(X), \
6807  (vector unsigned char)(Y), (Z)))
6808 
6809 /*-- vec_sldw ---------------------------------------------------------------*/
6810 
6811 extern __ATTRS_o vector signed char
6812 vec_sldw(vector signed char __a, vector signed char __b, int __c)
6813  __constant_range(__c, 0, 3);
6814 
6815 extern __ATTRS_o vector unsigned char
6816 vec_sldw(vector unsigned char __a, vector unsigned char __b, int __c)
6817  __constant_range(__c, 0, 3);
6818 
6819 extern __ATTRS_o vector signed short
6820 vec_sldw(vector signed short __a, vector signed short __b, int __c)
6821  __constant_range(__c, 0, 3);
6822 
6823 extern __ATTRS_o vector unsigned short
6824 vec_sldw(vector unsigned short __a, vector unsigned short __b, int __c)
6825  __constant_range(__c, 0, 3);
6826 
6827 extern __ATTRS_o vector signed int
6828 vec_sldw(vector signed int __a, vector signed int __b, int __c)
6829  __constant_range(__c, 0, 3);
6830 
6831 extern __ATTRS_o vector unsigned int
6832 vec_sldw(vector unsigned int __a, vector unsigned int __b, int __c)
6833  __constant_range(__c, 0, 3);
6834 
6835 extern __ATTRS_o vector signed long long
6836 vec_sldw(vector signed long long __a, vector signed long long __b, int __c)
6837  __constant_range(__c, 0, 3);
6838 
6839 extern __ATTRS_o vector unsigned long long
6840 vec_sldw(vector unsigned long long __a, vector unsigned long long __b, int __c)
6841  __constant_range(__c, 0, 3);
6842 
6843 // This prototype is deprecated.
6844 extern __ATTRS_o vector double
6845 vec_sldw(vector double __a, vector double __b, int __c)
6846  __constant_range(__c, 0, 3);
6847 
6848 #define vec_sldw(X, Y, Z) ((__typeof__((vec_sldw)((X), (Y), (Z)))) \
6849  __builtin_s390_vsldb((vector unsigned char)(X), \
6850  (vector unsigned char)(Y), (Z) * 4))
6851 
6852 /*-- vec_sral ---------------------------------------------------------------*/
6853 
6854 static inline __ATTRS_o_ai vector signed char
6855 vec_sral(vector signed char __a, vector unsigned char __b) {
6856  return (vector signed char)__builtin_s390_vsra(
6857  (vector unsigned char)__a, __b);
6858 }
6859 
6860 // This prototype is deprecated.
6861 static inline __ATTRS_o_ai vector signed char
6862 vec_sral(vector signed char __a, vector unsigned short __b) {
6863  return (vector signed char)__builtin_s390_vsra(
6864  (vector unsigned char)__a, (vector unsigned char)__b);
6865 }
6866 
6867 // This prototype is deprecated.
6868 static inline __ATTRS_o_ai vector signed char
6869 vec_sral(vector signed char __a, vector unsigned int __b) {
6870  return (vector signed char)__builtin_s390_vsra(
6871  (vector unsigned char)__a, (vector unsigned char)__b);
6872 }
6873 
6874 // This prototype is deprecated.
6875 static inline __ATTRS_o_ai vector bool char
6876 vec_sral(vector bool char __a, vector unsigned char __b) {
6877  return (vector bool char)__builtin_s390_vsra(
6878  (vector unsigned char)__a, __b);
6879 }
6880 
6881 // This prototype is deprecated.
6882 static inline __ATTRS_o_ai vector bool char
6883 vec_sral(vector bool char __a, vector unsigned short __b) {
6884  return (vector bool char)__builtin_s390_vsra(
6885  (vector unsigned char)__a, (vector unsigned char)__b);
6886 }
6887 
6888 // This prototype is deprecated.
6889 static inline __ATTRS_o_ai vector bool char
6890 vec_sral(vector bool char __a, vector unsigned int __b) {
6891  return (vector bool char)__builtin_s390_vsra(
6892  (vector unsigned char)__a, (vector unsigned char)__b);
6893 }
6894 
6895 static inline __ATTRS_o_ai vector unsigned char
6896 vec_sral(vector unsigned char __a, vector unsigned char __b) {
6897  return __builtin_s390_vsra(__a, __b);
6898 }
6899 
6900 // This prototype is deprecated.
6901 static inline __ATTRS_o_ai vector unsigned char
6902 vec_sral(vector unsigned char __a, vector unsigned short __b) {
6903  return __builtin_s390_vsra(__a, (vector unsigned char)__b);
6904 }
6905 
6906 // This prototype is deprecated.
6907 static inline __ATTRS_o_ai vector unsigned char
6908 vec_sral(vector unsigned char __a, vector unsigned int __b) {
6909  return __builtin_s390_vsra(__a, (vector unsigned char)__b);
6910 }
6911 
6912 static inline __ATTRS_o_ai vector signed short
6913 vec_sral(vector signed short __a, vector unsigned char __b) {
6914  return (vector signed short)__builtin_s390_vsra(
6915  (vector unsigned char)__a, __b);
6916 }
6917 
6918 // This prototype is deprecated.
6919 static inline __ATTRS_o_ai vector signed short
6920 vec_sral(vector signed short __a, vector unsigned short __b) {
6921  return (vector signed short)__builtin_s390_vsra(
6922  (vector unsigned char)__a, (vector unsigned char)__b);
6923 }
6924 
6925 // This prototype is deprecated.
6926 static inline __ATTRS_o_ai vector signed short
6927 vec_sral(vector signed short __a, vector unsigned int __b) {
6928  return (vector signed short)__builtin_s390_vsra(
6929  (vector unsigned char)__a, (vector unsigned char)__b);
6930 }
6931 
6932 // This prototype is deprecated.
6933 static inline __ATTRS_o_ai vector bool short
6934 vec_sral(vector bool short __a, vector unsigned char __b) {
6935  return (vector bool short)__builtin_s390_vsra(
6936  (vector unsigned char)__a, __b);
6937 }
6938 
6939 // This prototype is deprecated.
6940 static inline __ATTRS_o_ai vector bool short
6941 vec_sral(vector bool short __a, vector unsigned short __b) {
6942  return (vector bool short)__builtin_s390_vsra(
6943  (vector unsigned char)__a, (vector unsigned char)__b);
6944 }
6945 
6946 // This prototype is deprecated.
6947 static inline __ATTRS_o_ai vector bool short
6948 vec_sral(vector bool short __a, vector unsigned int __b) {
6949  return (vector bool short)__builtin_s390_vsra(
6950  (vector unsigned char)__a, (vector unsigned char)__b);
6951 }
6952 
6953 static inline __ATTRS_o_ai vector unsigned short
6954 vec_sral(vector unsigned short __a, vector unsigned char __b) {
6955  return (vector unsigned short)__builtin_s390_vsra(
6956  (vector unsigned char)__a, __b);
6957 }
6958 
6959 // This prototype is deprecated.
6960 static inline __ATTRS_o_ai vector unsigned short
6961 vec_sral(vector unsigned short __a, vector unsigned short __b) {
6962  return (vector unsigned short)__builtin_s390_vsra(
6963  (vector unsigned char)__a, (vector unsigned char)__b);
6964 }
6965 
6966 // This prototype is deprecated.
6967 static inline __ATTRS_o_ai vector unsigned short
6968 vec_sral(vector unsigned short __a, vector unsigned int __b) {
6969  return (vector unsigned short)__builtin_s390_vsra(
6970  (vector unsigned char)__a, (vector unsigned char)__b);
6971 }
6972 
6973 static inline __ATTRS_o_ai vector signed int
6974 vec_sral(vector signed int __a, vector unsigned char __b) {
6975  return (vector signed int)__builtin_s390_vsra(
6976  (vector unsigned char)__a, __b);
6977 }
6978 
6979 // This prototype is deprecated.
6980 static inline __ATTRS_o_ai vector signed int
6981 vec_sral(vector signed int __a, vector unsigned short __b) {
6982  return (vector signed int)__builtin_s390_vsra(
6983  (vector unsigned char)__a, (vector unsigned char)__b);
6984 }
6985 
6986 // This prototype is deprecated.
6987 static inline __ATTRS_o_ai vector signed int
6988 vec_sral(vector signed int __a, vector unsigned int __b) {
6989  return (vector signed int)__builtin_s390_vsra(
6990  (vector unsigned char)__a, (vector unsigned char)__b);
6991 }
6992 
6993 // This prototype is deprecated.
6994 static inline __ATTRS_o_ai vector bool int
6995 vec_sral(vector bool int __a, vector unsigned char __b) {
6996  return (vector bool int)__builtin_s390_vsra(
6997  (vector unsigned char)__a, __b);
6998 }
6999 
7000 // This prototype is deprecated.
7001 static inline __ATTRS_o_ai vector bool int
7002 vec_sral(vector bool int __a, vector unsigned short __b) {
7003  return (vector bool int)__builtin_s390_vsra(
7004  (vector unsigned char)__a, (vector unsigned char)__b);
7005 }
7006 
7007 // This prototype is deprecated.
7008 static inline __ATTRS_o_ai vector bool int
7009 vec_sral(vector bool int __a, vector unsigned int __b) {
7010  return (vector bool int)__builtin_s390_vsra(
7011  (vector unsigned char)__a, (vector unsigned char)__b);
7012 }
7013 
7014 static inline __ATTRS_o_ai vector unsigned int
7015 vec_sral(vector unsigned int __a, vector unsigned char __b) {
7016  return (vector unsigned int)__builtin_s390_vsra(
7017  (vector unsigned char)__a, __b);
7018 }
7019 
7020 // This prototype is deprecated.
7021 static inline __ATTRS_o_ai vector unsigned int
7022 vec_sral(vector unsigned int __a, vector unsigned short __b) {
7023  return (vector unsigned int)__builtin_s390_vsra(
7024  (vector unsigned char)__a, (vector unsigned char)__b);
7025 }
7026 
7027 // This prototype is deprecated.
7028 static inline __ATTRS_o_ai vector unsigned int
7029 vec_sral(vector unsigned int __a, vector unsigned int __b) {
7030  return (vector unsigned int)__builtin_s390_vsra(
7031  (vector unsigned char)__a, (vector unsigned char)__b);
7032 }
7033 
7034 static inline __ATTRS_o_ai vector signed long long
7035 vec_sral(vector signed long long __a, vector unsigned char __b) {
7036  return (vector signed long long)__builtin_s390_vsra(
7037  (vector unsigned char)__a, __b);
7038 }
7039 
7040 // This prototype is deprecated.
7041 static inline __ATTRS_o_ai vector signed long long
7042 vec_sral(vector signed long long __a, vector unsigned short __b) {
7043  return (vector signed long long)__builtin_s390_vsra(
7044  (vector unsigned char)__a, (vector unsigned char)__b);
7045 }
7046 
7047 // This prototype is deprecated.
7048 static inline __ATTRS_o_ai vector signed long long
7049 vec_sral(vector signed long long __a, vector unsigned int __b) {
7050  return (vector signed long long)__builtin_s390_vsra(
7051  (vector unsigned char)__a, (vector unsigned char)__b);
7052 }
7053 
7054 // This prototype is deprecated.
7055 static inline __ATTRS_o_ai vector bool long long
7056 vec_sral(vector bool long long __a, vector unsigned char __b) {
7057  return (vector bool long long)__builtin_s390_vsra(
7058  (vector unsigned char)__a, __b);
7059 }
7060 
7061 // This prototype is deprecated.
7062 static inline __ATTRS_o_ai vector bool long long
7063 vec_sral(vector bool long long __a, vector unsigned short __b) {
7064  return (vector bool long long)__builtin_s390_vsra(
7065  (vector unsigned char)__a, (vector unsigned char)__b);
7066 }
7067 
7068 // This prototype is deprecated.
7069 static inline __ATTRS_o_ai vector bool long long
7070 vec_sral(vector bool long long __a, vector unsigned int __b) {
7071  return (vector bool long long)__builtin_s390_vsra(
7072  (vector unsigned char)__a, (vector unsigned char)__b);
7073 }
7074 
7075 static inline __ATTRS_o_ai vector unsigned long long
7076 vec_sral(vector unsigned long long __a, vector unsigned char __b) {
7077  return (vector unsigned long long)__builtin_s390_vsra(
7078  (vector unsigned char)__a, __b);
7079 }
7080 
7081 // This prototype is deprecated.
7082 static inline __ATTRS_o_ai vector unsigned long long
7083 vec_sral(vector unsigned long long __a, vector unsigned short __b) {
7084  return (vector unsigned long long)__builtin_s390_vsra(
7085  (vector unsigned char)__a, (vector unsigned char)__b);
7086 }
7087 
7088 // This prototype is deprecated.
7089 static inline __ATTRS_o_ai vector unsigned long long
7090 vec_sral(vector unsigned long long __a, vector unsigned int __b) {
7091  return (vector unsigned long long)__builtin_s390_vsra(
7092  (vector unsigned char)__a, (vector unsigned char)__b);
7093 }
7094 
7095 /*-- vec_srab ---------------------------------------------------------------*/
7096 
7097 static inline __ATTRS_o_ai vector signed char
7098 vec_srab(vector signed char __a, vector signed char __b) {
7099  return (vector signed char)__builtin_s390_vsrab(
7100  (vector unsigned char)__a, (vector unsigned char)__b);
7101 }
7102 
7103 static inline __ATTRS_o_ai vector signed char
7104 vec_srab(vector signed char __a, vector unsigned char __b) {
7105  return (vector signed char)__builtin_s390_vsrab(
7106  (vector unsigned char)__a, __b);
7107 }
7108 
7109 static inline __ATTRS_o_ai vector unsigned char
7110 vec_srab(vector unsigned char __a, vector signed char __b) {
7111  return __builtin_s390_vsrab(__a, (vector unsigned char)__b);
7112 }
7113 
7114 static inline __ATTRS_o_ai vector unsigned char
7115 vec_srab(vector unsigned char __a, vector unsigned char __b) {
7116  return __builtin_s390_vsrab(__a, __b);
7117 }
7118 
7119 static inline __ATTRS_o_ai vector signed short
7120 vec_srab(vector signed short __a, vector signed short __b) {
7121  return (vector signed short)__builtin_s390_vsrab(
7122  (vector unsigned char)__a, (vector unsigned char)__b);
7123 }
7124 
7125 static inline __ATTRS_o_ai vector signed short
7126 vec_srab(vector signed short __a, vector unsigned short __b) {
7127  return (vector signed short)__builtin_s390_vsrab(
7128  (vector unsigned char)__a, (vector unsigned char)__b);
7129 }
7130 
7131 static inline __ATTRS_o_ai vector unsigned short
7132 vec_srab(vector unsigned short __a, vector signed short __b) {
7133  return (vector unsigned short)__builtin_s390_vsrab(
7134  (vector unsigned char)__a, (vector unsigned char)__b);
7135 }
7136 
7137 static inline __ATTRS_o_ai vector unsigned short
7138 vec_srab(vector unsigned short __a, vector unsigned short __b) {
7139  return (vector unsigned short)__builtin_s390_vsrab(
7140  (vector unsigned char)__a, (vector unsigned char)__b);
7141 }
7142 
7143 static inline __ATTRS_o_ai vector signed int
7144 vec_srab(vector signed int __a, vector signed int __b) {
7145  return (vector signed int)__builtin_s390_vsrab(
7146  (vector unsigned char)__a, (vector unsigned char)__b);
7147 }
7148 
7149 static inline __ATTRS_o_ai vector signed int
7150 vec_srab(vector signed int __a, vector unsigned int __b) {
7151  return (vector signed int)__builtin_s390_vsrab(
7152  (vector unsigned char)__a, (vector unsigned char)__b);
7153 }
7154 
7155 static inline __ATTRS_o_ai vector unsigned int
7156 vec_srab(vector unsigned int __a, vector signed int __b) {
7157  return (vector unsigned int)__builtin_s390_vsrab(
7158  (vector unsigned char)__a, (vector unsigned char)__b);
7159 }
7160 
7161 static inline __ATTRS_o_ai vector unsigned int
7162 vec_srab(vector unsigned int __a, vector unsigned int __b) {
7163  return (vector unsigned int)__builtin_s390_vsrab(
7164  (vector unsigned char)__a, (vector unsigned char)__b);
7165 }
7166 
7167 static inline __ATTRS_o_ai vector signed long long
7168 vec_srab(vector signed long long __a, vector signed long long __b) {
7169  return (vector signed long long)__builtin_s390_vsrab(
7170  (vector unsigned char)__a, (vector unsigned char)__b);
7171 }
7172 
7173 static inline __ATTRS_o_ai vector signed long long
7174 vec_srab(vector signed long long __a, vector unsigned long long __b) {
7175  return (vector signed long long)__builtin_s390_vsrab(
7176  (vector unsigned char)__a, (vector unsigned char)__b);
7177 }
7178 
7179 static inline __ATTRS_o_ai vector unsigned long long
7180 vec_srab(vector unsigned long long __a, vector signed long long __b) {
7181  return (vector unsigned long long)__builtin_s390_vsrab(
7182  (vector unsigned char)__a, (vector unsigned char)__b);
7183 }
7184 
7185 static inline __ATTRS_o_ai vector unsigned long long
7186 vec_srab(vector unsigned long long __a, vector unsigned long long __b) {
7187  return (vector unsigned long long)__builtin_s390_vsrab(
7188  (vector unsigned char)__a, (vector unsigned char)__b);
7189 }
7190 
7191 #if __ARCH__ >= 12
7192 static inline __ATTRS_o_ai vector float
7193 vec_srab(vector float __a, vector signed int __b) {
7194  return (vector float)__builtin_s390_vsrab(
7195  (vector unsigned char)__a, (vector unsigned char)__b);
7196 }
7197 
7198 static inline __ATTRS_o_ai vector float
7199 vec_srab(vector float __a, vector unsigned int __b) {
7200  return (vector float)__builtin_s390_vsrab(
7201  (vector unsigned char)__a, (vector unsigned char)__b);
7202 }
7203 #endif
7204 
7205 static inline __ATTRS_o_ai vector double
7206 vec_srab(vector double __a, vector signed long long __b) {
7207  return (vector double)__builtin_s390_vsrab(
7208  (vector unsigned char)__a, (vector unsigned char)__b);
7209 }
7210 
7211 static inline __ATTRS_o_ai vector double
7212 vec_srab(vector double __a, vector unsigned long long __b) {
7213  return (vector double)__builtin_s390_vsrab(
7214  (vector unsigned char)__a, (vector unsigned char)__b);
7215 }
7216 
7217 /*-- vec_srl ----------------------------------------------------------------*/
7218 
7219 static inline __ATTRS_o_ai vector signed char
7220 vec_srl(vector signed char __a, vector unsigned char __b) {
7221  return (vector signed char)__builtin_s390_vsrl(
7222  (vector unsigned char)__a, __b);
7223 }
7224 
7225 // This prototype is deprecated.
7226 static inline __ATTRS_o_ai vector signed char
7227 vec_srl(vector signed char __a, vector unsigned short __b) {
7228  return (vector signed char)__builtin_s390_vsrl(
7229  (vector unsigned char)__a, (vector unsigned char)__b);
7230 }
7231 
7232 // This prototype is deprecated.
7233 static inline __ATTRS_o_ai vector signed char
7234 vec_srl(vector signed char __a, vector unsigned int __b) {
7235  return (vector signed char)__builtin_s390_vsrl(
7236  (vector unsigned char)__a, (vector unsigned char)__b);
7237 }
7238 
7239 // This prototype is deprecated.
7240 static inline __ATTRS_o_ai vector bool char
7241 vec_srl(vector bool char __a, vector unsigned char __b) {
7242  return (vector bool char)__builtin_s390_vsrl(
7243  (vector unsigned char)__a, __b);
7244 }
7245 
7246 // This prototype is deprecated.
7247 static inline __ATTRS_o_ai vector bool char
7248 vec_srl(vector bool char __a, vector unsigned short __b) {
7249  return (vector bool char)__builtin_s390_vsrl(
7250  (vector unsigned char)__a, (vector unsigned char)__b);
7251 }
7252 
7253 // This prototype is deprecated.
7254 static inline __ATTRS_o_ai vector bool char
7255 vec_srl(vector bool char __a, vector unsigned int __b) {
7256  return (vector bool char)__builtin_s390_vsrl(
7257  (vector unsigned char)__a, (vector unsigned char)__b);
7258 }
7259 
7260 static inline __ATTRS_o_ai vector unsigned char
7261 vec_srl(vector unsigned char __a, vector unsigned char __b) {
7262  return __builtin_s390_vsrl(__a, __b);
7263 }
7264 
7265 // This prototype is deprecated.
7266 static inline __ATTRS_o_ai vector unsigned char
7267 vec_srl(vector unsigned char __a, vector unsigned short __b) {
7268  return __builtin_s390_vsrl(__a, (vector unsigned char)__b);
7269 }
7270 
7271 // This prototype is deprecated.
7272 static inline __ATTRS_o_ai vector unsigned char
7273 vec_srl(vector unsigned char __a, vector unsigned int __b) {
7274  return __builtin_s390_vsrl(__a, (vector unsigned char)__b);
7275 }
7276 
7277 static inline __ATTRS_o_ai vector signed short
7278 vec_srl(vector signed short __a, vector unsigned char __b) {
7279  return (vector signed short)__builtin_s390_vsrl(
7280  (vector unsigned char)__a, __b);
7281 }
7282 
7283 // This prototype is deprecated.
7284 static inline __ATTRS_o_ai vector signed short
7285 vec_srl(vector signed short __a, vector unsigned short __b) {
7286  return (vector signed short)__builtin_s390_vsrl(
7287  (vector unsigned char)__a, (vector unsigned char)__b);
7288 }
7289 
7290 // This prototype is deprecated.
7291 static inline __ATTRS_o_ai vector signed short
7292 vec_srl(vector signed short __a, vector unsigned int __b) {
7293  return (vector signed short)__builtin_s390_vsrl(
7294  (vector unsigned char)__a, (vector unsigned char)__b);
7295 }
7296 
7297 // This prototype is deprecated.
7298 static inline __ATTRS_o_ai vector bool short
7299 vec_srl(vector bool short __a, vector unsigned char __b) {
7300  return (vector bool short)__builtin_s390_vsrl(
7301  (vector unsigned char)__a, __b);
7302 }
7303 
7304 // This prototype is deprecated.
7305 static inline __ATTRS_o_ai vector bool short
7306 vec_srl(vector bool short __a, vector unsigned short __b) {
7307  return (vector bool short)__builtin_s390_vsrl(
7308  (vector unsigned char)__a, (vector unsigned char)__b);
7309 }
7310 
7311 // This prototype is deprecated.
7312 static inline __ATTRS_o_ai vector bool short
7313 vec_srl(vector bool short __a, vector unsigned int __b) {
7314  return (vector bool short)__builtin_s390_vsrl(
7315  (vector unsigned char)__a, (vector unsigned char)__b);
7316 }
7317 
7318 static inline __ATTRS_o_ai vector unsigned short
7319 vec_srl(vector unsigned short __a, vector unsigned char __b) {
7320  return (vector unsigned short)__builtin_s390_vsrl(
7321  (vector unsigned char)__a, __b);
7322 }
7323 
7324 // This prototype is deprecated.
7325 static inline __ATTRS_o_ai vector unsigned short
7326 vec_srl(vector unsigned short __a, vector unsigned short __b) {
7327  return (vector unsigned short)__builtin_s390_vsrl(
7328  (vector unsigned char)__a, (vector unsigned char)__b);
7329 }
7330 
7331 // This prototype is deprecated.
7332 static inline __ATTRS_o_ai vector unsigned short
7333 vec_srl(vector unsigned short __a, vector unsigned int __b) {
7334  return (vector unsigned short)__builtin_s390_vsrl(
7335  (vector unsigned char)__a, (vector unsigned char)__b);
7336 }
7337 
7338 static inline __ATTRS_o_ai vector signed int
7339 vec_srl(vector signed int __a, vector unsigned char __b) {
7340  return (vector signed int)__builtin_s390_vsrl(
7341  (vector unsigned char)__a, __b);
7342 }
7343 
7344 // This prototype is deprecated.
7345 static inline __ATTRS_o_ai vector signed int
7346 vec_srl(vector signed int __a, vector unsigned short __b) {
7347  return (vector signed int)__builtin_s390_vsrl(
7348  (vector unsigned char)__a, (vector unsigned char)__b);
7349 }
7350 
7351 // This prototype is deprecated.
7352 static inline __ATTRS_o_ai vector signed int
7353 vec_srl(vector signed int __a, vector unsigned int __b) {
7354  return (vector signed int)__builtin_s390_vsrl(
7355  (vector unsigned char)__a, (vector unsigned char)__b);
7356 }
7357 
7358 // This prototype is deprecated.
7359 static inline __ATTRS_o_ai vector bool int
7360 vec_srl(vector bool int __a, vector unsigned char __b) {
7361  return (vector bool int)__builtin_s390_vsrl(
7362  (vector unsigned char)__a, __b);
7363 }
7364 
7365 // This prototype is deprecated.
7366 static inline __ATTRS_o_ai vector bool int
7367 vec_srl(vector bool int __a, vector unsigned short __b) {
7368  return (vector bool int)__builtin_s390_vsrl(
7369  (vector unsigned char)__a, (vector unsigned char)__b);
7370 }
7371 
7372 // This prototype is deprecated.
7373 static inline __ATTRS_o_ai vector bool int
7374 vec_srl(vector bool int __a, vector unsigned int __b) {
7375  return (vector bool int)__builtin_s390_vsrl(
7376  (vector unsigned char)__a, (vector unsigned char)__b);
7377 }
7378 
7379 static inline __ATTRS_o_ai vector unsigned int
7380 vec_srl(vector unsigned int __a, vector unsigned char __b) {
7381  return (vector unsigned int)__builtin_s390_vsrl(
7382  (vector unsigned char)__a, __b);
7383 }
7384 
7385 // This prototype is deprecated.
7386 static inline __ATTRS_o_ai vector unsigned int
7387 vec_srl(vector unsigned int __a, vector unsigned short __b) {
7388  return (vector unsigned int)__builtin_s390_vsrl(
7389  (vector unsigned char)__a, (vector unsigned char)__b);
7390 }
7391 
7392 // This prototype is deprecated.
7393 static inline __ATTRS_o_ai vector unsigned int
7394 vec_srl(vector unsigned int __a, vector unsigned int __b) {
7395  return (vector unsigned int)__builtin_s390_vsrl(
7396  (vector unsigned char)__a, (vector unsigned char)__b);
7397 }
7398 
7399 static inline __ATTRS_o_ai vector signed long long
7400 vec_srl(vector signed long long __a, vector unsigned char __b) {
7401  return (vector signed long long)__builtin_s390_vsrl(
7402  (vector unsigned char)__a, __b);
7403 }
7404 
7405 // This prototype is deprecated.
7406 static inline __ATTRS_o_ai vector signed long long
7407 vec_srl(vector signed long long __a, vector unsigned short __b) {
7408  return (vector signed long long)__builtin_s390_vsrl(
7409  (vector unsigned char)__a, (vector unsigned char)__b);
7410 }
7411 
7412 // This prototype is deprecated.
7413 static inline __ATTRS_o_ai vector signed long long
7414 vec_srl(vector signed long long __a, vector unsigned int __b) {
7415  return (vector signed long long)__builtin_s390_vsrl(
7416  (vector unsigned char)__a, (vector unsigned char)__b);
7417 }
7418 
7419 // This prototype is deprecated.
7420 static inline __ATTRS_o_ai vector bool long long
7421 vec_srl(vector bool long long __a, vector unsigned char __b) {
7422  return (vector bool long long)__builtin_s390_vsrl(
7423  (vector unsigned char)__a, __b);
7424 }
7425 
7426 // This prototype is deprecated.
7427 static inline __ATTRS_o_ai vector bool long long
7428 vec_srl(vector bool long long __a, vector unsigned short __b) {
7429  return (vector bool long long)__builtin_s390_vsrl(
7430  (vector unsigned char)__a, (vector unsigned char)__b);
7431 }
7432 
7433 // This prototype is deprecated.
7434 static inline __ATTRS_o_ai vector bool long long
7435 vec_srl(vector bool long long __a, vector unsigned int __b) {
7436  return (vector bool long long)__builtin_s390_vsrl(
7437  (vector unsigned char)__a, (vector unsigned char)__b);
7438 }
7439 
7440 static inline __ATTRS_o_ai vector unsigned long long
7441 vec_srl(vector unsigned long long __a, vector unsigned char __b) {
7442  return (vector unsigned long long)__builtin_s390_vsrl(
7443  (vector unsigned char)__a, __b);
7444 }
7445 
7446 // This prototype is deprecated.
7447 static inline __ATTRS_o_ai vector unsigned long long
7448 vec_srl(vector unsigned long long __a, vector unsigned short __b) {
7449  return (vector unsigned long long)__builtin_s390_vsrl(
7450  (vector unsigned char)__a, (vector unsigned char)__b);
7451 }
7452 
7453 // This prototype is deprecated.
7454 static inline __ATTRS_o_ai vector unsigned long long
7455 vec_srl(vector unsigned long long __a, vector unsigned int __b) {
7456  return (vector unsigned long long)__builtin_s390_vsrl(
7457  (vector unsigned char)__a, (vector unsigned char)__b);
7458 }
7459 
7460 /*-- vec_srb ----------------------------------------------------------------*/
7461 
7462 static inline __ATTRS_o_ai vector signed char
7463 vec_srb(vector signed char __a, vector signed char __b) {
7464  return (vector signed char)__builtin_s390_vsrlb(
7465  (vector unsigned char)__a, (vector unsigned char)__b);
7466 }
7467 
7468 static inline __ATTRS_o_ai vector signed char
7469 vec_srb(vector signed char __a, vector unsigned char __b) {
7470  return (vector signed char)__builtin_s390_vsrlb(
7471  (vector unsigned char)__a, __b);
7472 }
7473 
7474 static inline __ATTRS_o_ai vector unsigned char
7475 vec_srb(vector unsigned char __a, vector signed char __b) {
7476  return __builtin_s390_vsrlb(__a, (vector unsigned char)__b);
7477 }
7478 
7479 static inline __ATTRS_o_ai vector unsigned char
7480 vec_srb(vector unsigned char __a, vector unsigned char __b) {
7481  return __builtin_s390_vsrlb(__a, __b);
7482 }
7483 
7484 static inline __ATTRS_o_ai vector signed short
7485 vec_srb(vector signed short __a, vector signed short __b) {
7486  return (vector signed short)__builtin_s390_vsrlb(
7487  (vector unsigned char)__a, (vector unsigned char)__b);
7488 }
7489 
7490 static inline __ATTRS_o_ai vector signed short
7491 vec_srb(vector signed short __a, vector unsigned short __b) {
7492  return (vector signed short)__builtin_s390_vsrlb(
7493  (vector unsigned char)__a, (vector unsigned char)__b);
7494 }
7495 
7496 static inline __ATTRS_o_ai vector unsigned short
7497 vec_srb(vector unsigned short __a, vector signed short __b) {
7498  return (vector unsigned short)__builtin_s390_vsrlb(
7499  (vector unsigned char)__a, (vector unsigned char)__b);
7500 }
7501 
7502 static inline __ATTRS_o_ai vector unsigned short
7503 vec_srb(vector unsigned short __a, vector unsigned short __b) {
7504  return (vector unsigned short)__builtin_s390_vsrlb(
7505  (vector unsigned char)__a, (vector unsigned char)__b);
7506 }
7507 
7508 static inline __ATTRS_o_ai vector signed int
7509 vec_srb(vector signed int __a, vector signed int __b) {
7510  return (vector signed int)__builtin_s390_vsrlb(
7511  (vector unsigned char)__a, (vector unsigned char)__b);
7512 }
7513 
7514 static inline __ATTRS_o_ai vector signed int
7515 vec_srb(vector signed int __a, vector unsigned int __b) {
7516  return (vector signed int)__builtin_s390_vsrlb(
7517  (vector unsigned char)__a, (vector unsigned char)__b);
7518 }
7519 
7520 static inline __ATTRS_o_ai vector unsigned int
7521 vec_srb(vector unsigned int __a, vector signed int __b) {
7522  return (vector unsigned int)__builtin_s390_vsrlb(
7523  (vector unsigned char)__a, (vector unsigned char)__b);
7524 }
7525 
7526 static inline __ATTRS_o_ai vector unsigned int
7527 vec_srb(vector unsigned int __a, vector unsigned int __b) {
7528  return (vector unsigned int)__builtin_s390_vsrlb(
7529  (vector unsigned char)__a, (vector unsigned char)__b);
7530 }
7531 
7532 static inline __ATTRS_o_ai vector signed long long
7533 vec_srb(vector signed long long __a, vector signed long long __b) {
7534  return (vector signed long long)__builtin_s390_vsrlb(
7535  (vector unsigned char)__a, (vector unsigned char)__b);
7536 }
7537 
7538 static inline __ATTRS_o_ai vector signed long long
7539 vec_srb(vector signed long long __a, vector unsigned long long __b) {
7540  return (vector signed long long)__builtin_s390_vsrlb(
7541  (vector unsigned char)__a, (vector unsigned char)__b);
7542 }
7543 
7544 static inline __ATTRS_o_ai vector unsigned long long
7545 vec_srb(vector unsigned long long __a, vector signed long long __b) {
7546  return (vector unsigned long long)__builtin_s390_vsrlb(
7547  (vector unsigned char)__a, (vector unsigned char)__b);
7548 }
7549 
7550 static inline __ATTRS_o_ai vector unsigned long long
7551 vec_srb(vector unsigned long long __a, vector unsigned long long __b) {
7552  return (vector unsigned long long)__builtin_s390_vsrlb(
7553  (vector unsigned char)__a, (vector unsigned char)__b);
7554 }
7555 
7556 #if __ARCH__ >= 12
7557 static inline __ATTRS_o_ai vector float
7558 vec_srb(vector float __a, vector signed int __b) {
7559  return (vector float)__builtin_s390_vsrlb(
7560  (vector unsigned char)__a, (vector unsigned char)__b);
7561 }
7562 
7563 static inline __ATTRS_o_ai vector float
7564 vec_srb(vector float __a, vector unsigned int __b) {
7565  return (vector float)__builtin_s390_vsrlb(
7566  (vector unsigned char)__a, (vector unsigned char)__b);
7567 }
7568 #endif
7569 
7570 static inline __ATTRS_o_ai vector double
7571 vec_srb(vector double __a, vector signed long long __b) {
7572  return (vector double)__builtin_s390_vsrlb(
7573  (vector unsigned char)__a, (vector unsigned char)__b);
7574 }
7575 
7576 static inline __ATTRS_o_ai vector double
7577 vec_srb(vector double __a, vector unsigned long long __b) {
7578  return (vector double)__builtin_s390_vsrlb(
7579  (vector unsigned char)__a, (vector unsigned char)__b);
7580 }
7581 
7582 /*-- vec_abs ----------------------------------------------------------------*/
7583 
7584 static inline __ATTRS_o_ai vector signed char
7585 vec_abs(vector signed char __a) {
7586  return vec_sel(__a, -__a, vec_cmplt(__a, (vector signed char)0));
7587 }
7588 
7589 static inline __ATTRS_o_ai vector signed short
7590 vec_abs(vector signed short __a) {
7591  return vec_sel(__a, -__a, vec_cmplt(__a, (vector signed short)0));
7592 }
7593 
7594 static inline __ATTRS_o_ai vector signed int
7595 vec_abs(vector signed int __a) {
7596  return vec_sel(__a, -__a, vec_cmplt(__a, (vector signed int)0));
7597 }
7598 
7599 static inline __ATTRS_o_ai vector signed long long
7600 vec_abs(vector signed long long __a) {
7601  return vec_sel(__a, -__a, vec_cmplt(__a, (vector signed long long)0));
7602 }
7603 
7604 #if __ARCH__ >= 12
7605 static inline __ATTRS_o_ai vector float
7606 vec_abs(vector float __a) {
7607  return __builtin_s390_vflpsb(__a);
7608 }
7609 #endif
7610 
7611 static inline __ATTRS_o_ai vector double
7612 vec_abs(vector double __a) {
7613  return __builtin_s390_vflpdb(__a);
7614 }
7615 
7616 /*-- vec_nabs ---------------------------------------------------------------*/
7617 
7618 #if __ARCH__ >= 12
7619 static inline __ATTRS_o_ai vector float
7620 vec_nabs(vector float __a) {
7621  return __builtin_s390_vflnsb(__a);
7622 }
7623 #endif
7624 
7625 static inline __ATTRS_o_ai vector double
7626 vec_nabs(vector double __a) {
7627  return __builtin_s390_vflndb(__a);
7628 }
7629 
7630 /*-- vec_max ----------------------------------------------------------------*/
7631 
7632 static inline __ATTRS_o_ai vector signed char
7633 vec_max(vector signed char __a, vector signed char __b) {
7634  return vec_sel(__b, __a, vec_cmpgt(__a, __b));
7635 }
7636 
7637 // This prototype is deprecated.
7638 static inline __ATTRS_o_ai vector signed char
7639 vec_max(vector signed char __a, vector bool char __b) {
7640  vector signed char __bc = (vector signed char)__b;
7641  return vec_sel(__bc, __a, vec_cmpgt(__a, __bc));
7642 }
7643 
7644 // This prototype is deprecated.
7645 static inline __ATTRS_o_ai vector signed char
7646 vec_max(vector bool char __a, vector signed char __b) {
7647  vector signed char __ac = (vector signed char)__a;
7648  return vec_sel(__b, __ac, vec_cmpgt(__ac, __b));
7649 }
7650 
7651 static inline __ATTRS_o_ai vector unsigned char
7652 vec_max(vector unsigned char __a, vector unsigned char __b) {
7653  return vec_sel(__b, __a, vec_cmpgt(__a, __b));
7654 }
7655 
7656 // This prototype is deprecated.
7657 static inline __ATTRS_o_ai vector unsigned char
7658 vec_max(vector unsigned char __a, vector bool char __b) {
7659  vector unsigned char __bc = (vector unsigned char)__b;
7660  return vec_sel(__bc, __a, vec_cmpgt(__a, __bc));
7661 }
7662 
7663 // This prototype is deprecated.
7664 static inline __ATTRS_o_ai vector unsigned char
7665 vec_max(vector bool char __a, vector unsigned char __b) {
7666  vector unsigned char __ac = (vector unsigned char)__a;
7667  return vec_sel(__b, __ac, vec_cmpgt(__ac, __b));
7668 }
7669 
7670 static inline __ATTRS_o_ai vector signed short
7671 vec_max(vector signed short __a, vector signed short __b) {
7672  return vec_sel(__b, __a, vec_cmpgt(__a, __b));
7673 }
7674 
7675 // This prototype is deprecated.
7676 static inline __ATTRS_o_ai vector signed short
7677 vec_max(vector signed short __a, vector bool short __b) {
7678  vector signed short __bc = (vector signed short)__b;
7679  return vec_sel(__bc, __a, vec_cmpgt(__a, __bc));
7680 }
7681 
7682 // This prototype is deprecated.
7683 static inline __ATTRS_o_ai vector signed short
7684 vec_max(vector bool short __a, vector signed short __b) {
7685  vector signed short __ac = (vector signed short)__a;
7686  return vec_sel(__b, __ac, vec_cmpgt(__ac, __b));
7687 }
7688 
7689 static inline __ATTRS_o_ai vector unsigned short
7690 vec_max(vector unsigned short __a, vector unsigned short __b) {
7691  return vec_sel(__b, __a, vec_cmpgt(__a, __b));
7692 }
7693 
7694 // This prototype is deprecated.
7695 static inline __ATTRS_o_ai vector unsigned short
7696 vec_max(vector unsigned short __a, vector bool short __b) {
7697  vector unsigned short __bc = (vector unsigned short)__b;
7698  return vec_sel(__bc, __a, vec_cmpgt(__a, __bc));
7699 }
7700 
7701 // This prototype is deprecated.
7702 static inline __ATTRS_o_ai vector unsigned short
7703 vec_max(vector bool short __a, vector unsigned short __b) {
7704  vector unsigned short __ac = (vector unsigned short)__a;
7705  return vec_sel(__b, __ac, vec_cmpgt(__ac, __b));
7706 }
7707 
7708 static inline __ATTRS_o_ai vector signed int
7709 vec_max(vector signed int __a, vector signed int __b) {
7710  return vec_sel(__b, __a, vec_cmpgt(__a, __b));
7711 }
7712 
7713 // This prototype is deprecated.
7714 static inline __ATTRS_o_ai vector signed int
7715 vec_max(vector signed int __a, vector bool int __b) {
7716  vector signed int __bc = (vector signed int)__b;
7717  return vec_sel(__bc, __a, vec_cmpgt(__a, __bc));
7718 }
7719 
7720 // This prototype is deprecated.
7721 static inline __ATTRS_o_ai vector signed int
7722 vec_max(vector bool int __a, vector signed int __b) {
7723  vector signed int __ac = (vector signed int)__a;
7724  return vec_sel(__b, __ac, vec_cmpgt(__ac, __b));
7725 }
7726 
7727 static inline __ATTRS_o_ai vector unsigned int
7728 vec_max(vector unsigned int __a, vector unsigned int __b) {
7729  return vec_sel(__b, __a, vec_cmpgt(__a, __b));
7730 }
7731 
7732 // This prototype is deprecated.
7733 static inline __ATTRS_o_ai vector unsigned int
7734 vec_max(vector unsigned int __a, vector bool int __b) {
7735  vector unsigned int __bc = (vector unsigned int)__b;
7736  return vec_sel(__bc, __a, vec_cmpgt(__a, __bc));
7737 }
7738 
7739 // This prototype is deprecated.
7740 static inline __ATTRS_o_ai vector unsigned int
7741 vec_max(vector bool int __a, vector unsigned int __b) {
7742  vector unsigned int __ac = (vector unsigned int)__a;
7743  return vec_sel(__b, __ac, vec_cmpgt(__ac, __b));
7744 }
7745 
7746 static inline __ATTRS_o_ai vector signed long long
7747 vec_max(vector signed long long __a, vector signed long long __b) {
7748  return vec_sel(__b, __a, vec_cmpgt(__a, __b));
7749 }
7750 
7751 // This prototype is deprecated.
7752 static inline __ATTRS_o_ai vector signed long long
7753 vec_max(vector signed long long __a, vector bool long long __b) {
7754  vector signed long long __bc = (vector signed long long)__b;
7755  return vec_sel(__bc, __a, vec_cmpgt(__a, __bc));
7756 }
7757 
7758 // This prototype is deprecated.
7759 static inline __ATTRS_o_ai vector signed long long
7760 vec_max(vector bool long long __a, vector signed long long __b) {
7761  vector signed long long __ac = (vector signed long long)__a;
7762  return vec_sel(__b, __ac, vec_cmpgt(__ac, __b));
7763 }
7764 
7765 static inline __ATTRS_o_ai vector unsigned long long
7766 vec_max(vector unsigned long long __a, vector unsigned long long __b) {
7767  return vec_sel(__b, __a, vec_cmpgt(__a, __b));
7768 }
7769 
7770 // This prototype is deprecated.
7771 static inline __ATTRS_o_ai vector unsigned long long
7772 vec_max(vector unsigned long long __a, vector bool long long __b) {
7773  vector unsigned long long __bc = (vector unsigned long long)__b;
7774  return vec_sel(__bc, __a, vec_cmpgt(__a, __bc));
7775 }
7776 
7777 // This prototype is deprecated.
7778 static inline __ATTRS_o_ai vector unsigned long long
7779 vec_max(vector bool long long __a, vector unsigned long long __b) {
7780  vector unsigned long long __ac = (vector unsigned long long)__a;
7781  return vec_sel(__b, __ac, vec_cmpgt(__ac, __b));
7782 }
7783 
7784 #if __ARCH__ >= 12
7785 static inline __ATTRS_o_ai vector float
7786 vec_max(vector float __a, vector float __b) {
7787  return __builtin_s390_vfmaxsb(__a, __b, 0);
7788 }
7789 #endif
7790 
7791 static inline __ATTRS_o_ai vector double
7792 vec_max(vector double __a, vector double __b) {
7793 #if __ARCH__ >= 12
7794  return __builtin_s390_vfmaxdb(__a, __b, 0);
7795 #else
7796  return vec_sel(__b, __a, vec_cmpgt(__a, __b));
7797 #endif
7798 }
7799 
7800 /*-- vec_min ----------------------------------------------------------------*/
7801 
7802 static inline __ATTRS_o_ai vector signed char
7803 vec_min(vector signed char __a, vector signed char __b) {
7804  return vec_sel(__a, __b, vec_cmpgt(__a, __b));
7805 }
7806 
7807 // This prototype is deprecated.
7808 static inline __ATTRS_o_ai vector signed char
7809 vec_min(vector signed char __a, vector bool char __b) {
7810  vector signed char __bc = (vector signed char)__b;
7811  return vec_sel(__a, __bc, vec_cmpgt(__a, __bc));
7812 }
7813 
7814 // This prototype is deprecated.
7815 static inline __ATTRS_o_ai vector signed char
7816 vec_min(vector bool char __a, vector signed char __b) {
7817  vector signed char __ac = (vector signed char)__a;
7818  return vec_sel(__ac, __b, vec_cmpgt(__ac, __b));
7819 }
7820 
7821 static inline __ATTRS_o_ai vector unsigned char
7822 vec_min(vector unsigned char __a, vector unsigned char __b) {
7823  return vec_sel(__a, __b, vec_cmpgt(__a, __b));
7824 }
7825 
7826 // This prototype is deprecated.
7827 static inline __ATTRS_o_ai vector unsigned char
7828 vec_min(vector unsigned char __a, vector bool char __b) {
7829  vector unsigned char __bc = (vector unsigned char)__b;
7830  return vec_sel(__a, __bc, vec_cmpgt(__a, __bc));
7831 }
7832 
7833 // This prototype is deprecated.
7834 static inline __ATTRS_o_ai vector unsigned char
7835 vec_min(vector bool char __a, vector unsigned char __b) {
7836  vector unsigned char __ac = (vector unsigned char)__a;
7837  return vec_sel(__ac, __b, vec_cmpgt(__ac, __b));
7838 }
7839 
7840 static inline __ATTRS_o_ai vector signed short
7841 vec_min(vector signed short __a, vector signed short __b) {
7842  return vec_sel(__a, __b, vec_cmpgt(__a, __b));
7843 }
7844 
7845 // This prototype is deprecated.
7846 static inline __ATTRS_o_ai vector signed short
7847 vec_min(vector signed short __a, vector bool short __b) {
7848  vector signed short __bc = (vector signed short)__b;
7849  return vec_sel(__a, __bc, vec_cmpgt(__a, __bc));
7850 }
7851 
7852 // This prototype is deprecated.
7853 static inline __ATTRS_o_ai vector signed short
7854 vec_min(vector bool short __a, vector signed short __b) {
7855  vector signed short __ac = (vector signed short)__a;
7856  return vec_sel(__ac, __b, vec_cmpgt(__ac, __b));
7857 }
7858 
7859 static inline __ATTRS_o_ai vector unsigned short
7860 vec_min(vector unsigned short __a, vector unsigned short __b) {
7861  return vec_sel(__a, __b, vec_cmpgt(__a, __b));
7862 }
7863 
7864 // This prototype is deprecated.
7865 static inline __ATTRS_o_ai vector unsigned short
7866 vec_min(vector unsigned short __a, vector bool short __b) {
7867  vector unsigned short __bc = (vector unsigned short)__b;
7868  return vec_sel(__a, __bc, vec_cmpgt(__a, __bc));
7869 }
7870 
7871 // This prototype is deprecated.
7872 static inline __ATTRS_o_ai vector unsigned short
7873 vec_min(vector bool short __a, vector unsigned short __b) {
7874  vector unsigned short __ac = (vector unsigned short)__a;
7875  return vec_sel(__ac, __b, vec_cmpgt(__ac, __b));
7876 }
7877 
7878 static inline __ATTRS_o_ai vector signed int
7879 vec_min(vector signed int __a, vector signed int __b) {
7880  return vec_sel(__a, __b, vec_cmpgt(__a, __b));
7881 }
7882 
7883 // This prototype is deprecated.
7884 static inline __ATTRS_o_ai vector signed int
7885 vec_min(vector signed int __a, vector bool int __b) {
7886  vector signed int __bc = (vector signed int)__b;
7887  return vec_sel(__a, __bc, vec_cmpgt(__a, __bc));
7888 }
7889 
7890 // This prototype is deprecated.
7891 static inline __ATTRS_o_ai vector signed int
7892 vec_min(vector bool int __a, vector signed int __b) {
7893  vector signed int __ac = (vector signed int)__a;
7894  return vec_sel(__ac, __b, vec_cmpgt(__ac, __b));
7895 }
7896 
7897 static inline __ATTRS_o_ai vector unsigned int
7898 vec_min(vector unsigned int __a, vector unsigned int __b) {
7899  return vec_sel(__a, __b, vec_cmpgt(__a, __b));
7900 }
7901 
7902 // This prototype is deprecated.
7903 static inline __ATTRS_o_ai vector unsigned int
7904 vec_min(vector unsigned int __a, vector bool int __b) {
7905  vector unsigned int __bc = (vector unsigned int)__b;
7906  return vec_sel(__a, __bc, vec_cmpgt(__a, __bc));
7907 }
7908 
7909 // This prototype is deprecated.
7910 static inline __ATTRS_o_ai vector unsigned int
7911 vec_min(vector bool int __a, vector unsigned int __b) {
7912  vector unsigned int __ac = (vector unsigned int)__a;
7913  return vec_sel(__ac, __b, vec_cmpgt(__ac, __b));
7914 }
7915 
7916 static inline __ATTRS_o_ai vector signed long long
7917 vec_min(vector signed long long __a, vector signed long long __b) {
7918  return vec_sel(__a, __b, vec_cmpgt(__a, __b));
7919 }
7920 
7921 // This prototype is deprecated.
7922 static inline __ATTRS_o_ai vector signed long long
7923 vec_min(vector signed long long __a, vector bool long long __b) {
7924  vector signed long long __bc = (vector signed long long)__b;
7925  return vec_sel(__a, __bc, vec_cmpgt(__a, __bc));
7926 }
7927 
7928 // This prototype is deprecated.
7929 static inline __ATTRS_o_ai vector signed long long
7930 vec_min(vector bool long long __a, vector signed long long __b) {
7931  vector signed long long __ac = (vector signed long long)__a;
7932  return vec_sel(__ac, __b, vec_cmpgt(__ac, __b));
7933 }
7934 
7935 static inline __ATTRS_o_ai vector unsigned long long
7936 vec_min(vector unsigned long long __a, vector unsigned long long __b) {
7937  return vec_sel(__a, __b, vec_cmpgt(__a, __b));
7938 }
7939 
7940 // This prototype is deprecated.
7941 static inline __ATTRS_o_ai vector unsigned long long
7942 vec_min(vector unsigned long long __a, vector bool long long __b) {
7943  vector unsigned long long __bc = (vector unsigned long long)__b;
7944  return vec_sel(__a, __bc, vec_cmpgt(__a, __bc));
7945 }
7946 
7947 // This prototype is deprecated.
7948 static inline __ATTRS_o_ai vector unsigned long long
7949 vec_min(vector bool long long __a, vector unsigned long long __b) {
7950  vector unsigned long long __ac = (vector unsigned long long)__a;
7951  return vec_sel(__ac, __b, vec_cmpgt(__ac, __b));
7952 }
7953 
7954 #if __ARCH__ >= 12
7955 static inline __ATTRS_o_ai vector float
7956 vec_min(vector float __a, vector float __b) {
7957  return __builtin_s390_vfminsb(__a, __b, 0);
7958 }
7959 #endif
7960 
7961 static inline __ATTRS_o_ai vector double
7962 vec_min(vector double __a, vector double __b) {
7963 #if __ARCH__ >= 12
7964  return __builtin_s390_vfmindb(__a, __b, 0);
7965 #else
7966  return vec_sel(__a, __b, vec_cmpgt(__a, __b));
7967 #endif
7968 }
7969 
7970 /*-- vec_add_u128 -----------------------------------------------------------*/
7971 
7972 static inline __ATTRS_ai vector unsigned char
7973 vec_add_u128(vector unsigned char __a, vector unsigned char __b) {
7974  return __builtin_s390_vaq(__a, __b);
7975 }
7976 
7977 /*-- vec_addc ---------------------------------------------------------------*/
7978 
7979 static inline __ATTRS_o_ai vector unsigned char
7980 vec_addc(vector unsigned char __a, vector unsigned char __b) {
7981  return __builtin_s390_vaccb(__a, __b);
7982 }
7983 
7984 static inline __ATTRS_o_ai vector unsigned short
7985 vec_addc(vector unsigned short __a, vector unsigned short __b) {
7986  return __builtin_s390_vacch(__a, __b);
7987 }
7988 
7989 static inline __ATTRS_o_ai vector unsigned int
7990 vec_addc(vector unsigned int __a, vector unsigned int __b) {
7991  return __builtin_s390_vaccf(__a, __b);
7992 }
7993 
7994 static inline __ATTRS_o_ai vector unsigned long long
7995 vec_addc(vector unsigned long long __a, vector unsigned long long __b) {
7996  return __builtin_s390_vaccg(__a, __b);
7997 }
7998 
7999 /*-- vec_addc_u128 ----------------------------------------------------------*/
8000 
8001 static inline __ATTRS_ai vector unsigned char
8002 vec_addc_u128(vector unsigned char __a, vector unsigned char __b) {
8003  return __builtin_s390_vaccq(__a, __b);
8004 }
8005 
8006 /*-- vec_adde_u128 ----------------------------------------------------------*/
8007 
8008 static inline __ATTRS_ai vector unsigned char
8009 vec_adde_u128(vector unsigned char __a, vector unsigned char __b,
8010  vector unsigned char __c) {
8011  return __builtin_s390_vacq(__a, __b, __c);
8012 }
8013 
8014 /*-- vec_addec_u128 ---------------------------------------------------------*/
8015 
8016 static inline __ATTRS_ai vector unsigned char
8017 vec_addec_u128(vector unsigned char __a, vector unsigned char __b,
8018  vector unsigned char __c) {
8019  return __builtin_s390_vacccq(__a, __b, __c);
8020 }
8021 
8022 /*-- vec_avg ----------------------------------------------------------------*/
8023 
8024 static inline __ATTRS_o_ai vector signed char
8025 vec_avg(vector signed char __a, vector signed char __b) {
8026  return __builtin_s390_vavgb(__a, __b);
8027 }
8028 
8029 static inline __ATTRS_o_ai vector signed short
8030 vec_avg(vector signed short __a, vector signed short __b) {
8031  return __builtin_s390_vavgh(__a, __b);
8032 }
8033 
8034 static inline __ATTRS_o_ai vector signed int
8035 vec_avg(vector signed int __a, vector signed int __b) {
8036  return __builtin_s390_vavgf(__a, __b);
8037 }
8038 
8039 static inline __ATTRS_o_ai vector signed long long
8040 vec_avg(vector signed long long __a, vector signed long long __b) {
8041  return __builtin_s390_vavgg(__a, __b);
8042 }
8043 
8044 static inline __ATTRS_o_ai vector unsigned char
8045 vec_avg(vector unsigned char __a, vector unsigned char __b) {
8046  return __builtin_s390_vavglb(__a, __b);
8047 }
8048 
8049 static inline __ATTRS_o_ai vector unsigned short
8050 vec_avg(vector unsigned short __a, vector unsigned short __b) {
8051  return __builtin_s390_vavglh(__a, __b);
8052 }
8053 
8054 static inline __ATTRS_o_ai vector unsigned int
8055 vec_avg(vector unsigned int __a, vector unsigned int __b) {
8056  return __builtin_s390_vavglf(__a, __b);
8057 }
8058 
8059 static inline __ATTRS_o_ai vector unsigned long long
8060 vec_avg(vector unsigned long long __a, vector unsigned long long __b) {
8061  return __builtin_s390_vavglg(__a, __b);
8062 }
8063 
8064 /*-- vec_checksum -----------------------------------------------------------*/
8065 
8066 static inline __ATTRS_ai vector unsigned int
8067 vec_checksum(vector unsigned int __a, vector unsigned int __b) {
8068  return __builtin_s390_vcksm(__a, __b);
8069 }
8070 
8071 /*-- vec_gfmsum -------------------------------------------------------------*/
8072 
8073 static inline __ATTRS_o_ai vector unsigned short
8074 vec_gfmsum(vector unsigned char __a, vector unsigned char __b) {
8075  return __builtin_s390_vgfmb(__a, __b);
8076 }
8077 
8078 static inline __ATTRS_o_ai vector unsigned int
8079 vec_gfmsum(vector unsigned short __a, vector unsigned short __b) {
8080  return __builtin_s390_vgfmh(__a, __b);
8081 }
8082 
8083 static inline __ATTRS_o_ai vector unsigned long long
8084 vec_gfmsum(vector unsigned int __a, vector unsigned int __b) {
8085  return __builtin_s390_vgfmf(__a, __b);
8086 }
8087 
8088 /*-- vec_gfmsum_128 ---------------------------------------------------------*/
8089 
8090 static inline __ATTRS_o_ai vector unsigned char
8091 vec_gfmsum_128(vector unsigned long long __a, vector unsigned long long __b) {
8092  return __builtin_s390_vgfmg(__a, __b);
8093 }
8094 
8095 /*-- vec_gfmsum_accum -------------------------------------------------------*/
8096 
8097 static inline __ATTRS_o_ai vector unsigned short
8098 vec_gfmsum_accum(vector unsigned char __a, vector unsigned char __b,
8099  vector unsigned short __c) {
8100  return __builtin_s390_vgfmab(__a, __b, __c);
8101 }
8102 
8103 static inline __ATTRS_o_ai vector unsigned int
8104 vec_gfmsum_accum(vector unsigned short __a, vector unsigned short __b,
8105  vector unsigned int __c) {
8106  return __builtin_s390_vgfmah(__a, __b, __c);
8107 }
8108 
8109 static inline __ATTRS_o_ai vector unsigned long long
8110 vec_gfmsum_accum(vector unsigned int __a, vector unsigned int __b,
8111  vector unsigned long long __c) {
8112  return __builtin_s390_vgfmaf(__a, __b, __c);
8113 }
8114 
8115 /*-- vec_gfmsum_accum_128 ---------------------------------------------------*/
8116 
8117 static inline __ATTRS_o_ai vector unsigned char
8118 vec_gfmsum_accum_128(vector unsigned long long __a,
8119  vector unsigned long long __b,
8120  vector unsigned char __c) {
8121  return __builtin_s390_vgfmag(__a, __b, __c);
8122 }
8123 
8124 /*-- vec_mladd --------------------------------------------------------------*/
8125 
8126 static inline __ATTRS_o_ai vector signed char
8127 vec_mladd(vector signed char __a, vector signed char __b,
8128  vector signed char __c) {
8129  return __a * __b + __c;
8130 }
8131 
8132 static inline __ATTRS_o_ai vector signed char
8133 vec_mladd(vector unsigned char __a, vector signed char __b,
8134  vector signed char __c) {
8135  return (vector signed char)__a * __b + __c;
8136 }
8137 
8138 static inline __ATTRS_o_ai vector signed char
8139 vec_mladd(vector signed char __a, vector unsigned char __b,
8140  vector unsigned char __c) {
8141  return __a * (vector signed char)__b + (vector signed char)__c;
8142 }
8143 
8144 static inline __ATTRS_o_ai vector unsigned char
8145 vec_mladd(vector unsigned char __a, vector unsigned char __b,
8146  vector unsigned char __c) {
8147  return __a * __b + __c;
8148 }
8149 
8150 static inline __ATTRS_o_ai vector signed short
8151 vec_mladd(vector signed short __a, vector signed short __b,
8152  vector signed short __c) {
8153  return __a * __b + __c;
8154 }
8155 
8156 static inline __ATTRS_o_ai vector signed short
8157 vec_mladd(vector unsigned short __a, vector signed short __b,
8158  vector signed short __c) {
8159  return (vector signed short)__a * __b + __c;
8160 }
8161 
8162 static inline __ATTRS_o_ai vector signed short
8163 vec_mladd(vector signed short __a, vector unsigned short __b,
8164  vector unsigned short __c) {
8165  return __a * (vector signed short)__b + (vector signed short)__c;
8166 }
8167 
8168 static inline __ATTRS_o_ai vector unsigned short
8169 vec_mladd(vector unsigned short __a, vector unsigned short __b,
8170  vector unsigned short __c) {
8171  return __a * __b + __c;
8172 }
8173 
8174 static inline __ATTRS_o_ai vector signed int
8175 vec_mladd(vector signed int __a, vector signed int __b,
8176  vector signed int __c) {
8177  return __a * __b + __c;
8178 }
8179 
8180 static inline __ATTRS_o_ai vector signed int
8181 vec_mladd(vector unsigned int __a, vector signed int __b,
8182  vector signed int __c) {
8183  return (vector signed int)__a * __b + __c;
8184 }
8185 
8186 static inline __ATTRS_o_ai vector signed int
8187 vec_mladd(vector signed int __a, vector unsigned int __b,
8188  vector unsigned int __c) {
8189  return __a * (vector signed int)__b + (vector signed int)__c;
8190 }
8191 
8192 static inline __ATTRS_o_ai vector unsigned int
8193 vec_mladd(vector unsigned int __a, vector unsigned int __b,
8194  vector unsigned int __c) {
8195  return __a * __b + __c;
8196 }
8197 
8198 /*-- vec_mhadd --------------------------------------------------------------*/
8199 
8200 static inline __ATTRS_o_ai vector signed char
8201 vec_mhadd(vector signed char __a, vector signed char __b,
8202  vector signed char __c) {
8203  return __builtin_s390_vmahb(__a, __b, __c);
8204 }
8205 
8206 static inline __ATTRS_o_ai vector unsigned char
8207 vec_mhadd(vector unsigned char __a, vector unsigned char __b,
8208  vector unsigned char __c) {
8209  return __builtin_s390_vmalhb(__a, __b, __c);
8210 }
8211 
8212 static inline __ATTRS_o_ai vector signed short
8213 vec_mhadd(vector signed short __a, vector signed short __b,
8214  vector signed short __c) {
8215  return __builtin_s390_vmahh(__a, __b, __c);
8216 }
8217 
8218 static inline __ATTRS_o_ai vector unsigned short
8219 vec_mhadd(vector unsigned short __a, vector unsigned short __b,
8220  vector unsigned short __c) {
8221  return __builtin_s390_vmalhh(__a, __b, __c);
8222 }
8223 
8224 static inline __ATTRS_o_ai vector signed int
8225 vec_mhadd(vector signed int __a, vector signed int __b,
8226  vector signed int __c) {
8227  return __builtin_s390_vmahf(__a, __b, __c);
8228 }
8229 
8230 static inline __ATTRS_o_ai vector unsigned int
8231 vec_mhadd(vector unsigned int __a, vector unsigned int __b,
8232  vector unsigned int __c) {
8233  return __builtin_s390_vmalhf(__a, __b, __c);
8234 }
8235 
8236 /*-- vec_meadd --------------------------------------------------------------*/
8237 
8238 static inline __ATTRS_o_ai vector signed short
8239 vec_meadd(vector signed char __a, vector signed char __b,
8240  vector signed short __c) {
8241  return __builtin_s390_vmaeb(__a, __b, __c);
8242 }
8243 
8244 static inline __ATTRS_o_ai vector unsigned short
8245 vec_meadd(vector unsigned char __a, vector unsigned char __b,
8246  vector unsigned short __c) {
8247  return __builtin_s390_vmaleb(__a, __b, __c);
8248 }
8249 
8250 static inline __ATTRS_o_ai vector signed int
8251 vec_meadd(vector signed short __a, vector signed short __b,
8252  vector signed int __c) {
8253  return __builtin_s390_vmaeh(__a, __b, __c);
8254 }
8255 
8256 static inline __ATTRS_o_ai vector unsigned int
8257 vec_meadd(vector unsigned short __a, vector unsigned short __b,
8258  vector unsigned int __c) {
8259  return __builtin_s390_vmaleh(__a, __b, __c);
8260 }
8261 
8262 static inline __ATTRS_o_ai vector signed long long
8263 vec_meadd(vector signed int __a, vector signed int __b,
8264  vector signed long long __c) {
8265  return __builtin_s390_vmaef(__a, __b, __c);
8266 }
8267 
8268 static inline __ATTRS_o_ai vector unsigned long long
8269 vec_meadd(vector unsigned int __a, vector unsigned int __b,
8270  vector unsigned long long __c) {
8271  return __builtin_s390_vmalef(__a, __b, __c);
8272 }
8273 
8274 /*-- vec_moadd --------------------------------------------------------------*/
8275 
8276 static inline __ATTRS_o_ai vector signed short
8277 vec_moadd(vector signed char __a, vector signed char __b,
8278  vector signed short __c) {
8279  return __builtin_s390_vmaob(__a, __b, __c);
8280 }
8281 
8282 static inline __ATTRS_o_ai vector unsigned short
8283 vec_moadd(vector unsigned char __a, vector unsigned char __b,
8284  vector unsigned short __c) {
8285  return __builtin_s390_vmalob(__a, __b, __c);
8286 }
8287 
8288 static inline __ATTRS_o_ai vector signed int
8289 vec_moadd(vector signed short __a, vector signed short __b,
8290  vector signed int __c) {
8291  return __builtin_s390_vmaoh(__a, __b, __c);
8292 }
8293 
8294 static inline __ATTRS_o_ai vector unsigned int
8295 vec_moadd(vector unsigned short __a, vector unsigned short __b,
8296  vector unsigned int __c) {
8297  return __builtin_s390_vmaloh(__a, __b, __c);
8298 }
8299 
8300 static inline __ATTRS_o_ai vector signed long long
8301 vec_moadd(vector signed int __a, vector signed int __b,
8302  vector signed long long __c) {
8303  return __builtin_s390_vmaof(__a, __b, __c);
8304 }
8305 
8306 static inline __ATTRS_o_ai vector unsigned long long
8307 vec_moadd(vector unsigned int __a, vector unsigned int __b,
8308  vector unsigned long long __c) {
8309  return __builtin_s390_vmalof(__a, __b, __c);
8310 }
8311 
8312 /*-- vec_mulh ---------------------------------------------------------------*/
8313 
8314 static inline __ATTRS_o_ai vector signed char
8315 vec_mulh(vector signed char __a, vector signed char __b) {
8316  return __builtin_s390_vmhb(__a, __b);
8317 }
8318 
8319 static inline __ATTRS_o_ai vector unsigned char
8320 vec_mulh(vector unsigned char __a, vector unsigned char __b) {
8321  return __builtin_s390_vmlhb(__a, __b);
8322 }
8323 
8324 static inline __ATTRS_o_ai vector signed short
8325 vec_mulh(vector signed short __a, vector signed short __b) {
8326  return __builtin_s390_vmhh(__a, __b);
8327 }
8328 
8329 static inline __ATTRS_o_ai vector unsigned short
8330 vec_mulh(vector unsigned short __a, vector unsigned short __b) {
8331  return __builtin_s390_vmlhh(__a, __b);
8332 }
8333 
8334 static inline __ATTRS_o_ai vector signed int
8335 vec_mulh(vector signed int __a, vector signed int __b) {
8336  return __builtin_s390_vmhf(__a, __b);
8337 }
8338 
8339 static inline __ATTRS_o_ai vector unsigned int
8340 vec_mulh(vector unsigned int __a, vector unsigned int __b) {
8341  return __builtin_s390_vmlhf(__a, __b);
8342 }
8343 
8344 /*-- vec_mule ---------------------------------------------------------------*/
8345 
8346 static inline __ATTRS_o_ai vector signed short
8347 vec_mule(vector signed char __a, vector signed char __b) {
8348  return __builtin_s390_vmeb(__a, __b);
8349 }
8350 
8351 static inline __ATTRS_o_ai vector unsigned short
8352 vec_mule(vector unsigned char __a, vector unsigned char __b) {
8353  return __builtin_s390_vmleb(__a, __b);
8354 }
8355 
8356 static inline __ATTRS_o_ai vector signed int
8357 vec_mule(vector signed short __a, vector signed short __b) {
8358  return __builtin_s390_vmeh(__a, __b);
8359 }
8360 
8361 static inline __ATTRS_o_ai vector unsigned int
8362 vec_mule(vector unsigned short __a, vector unsigned short __b) {
8363  return __builtin_s390_vmleh(__a, __b);
8364 }
8365 
8366 static inline __ATTRS_o_ai vector signed long long
8367 vec_mule(vector signed int __a, vector signed int __b) {
8368  return __builtin_s390_vmef(__a, __b);
8369 }
8370 
8371 static inline __ATTRS_o_ai vector unsigned long long
8372 vec_mule(vector unsigned int __a, vector unsigned int __b) {
8373  return __builtin_s390_vmlef(__a, __b);
8374 }
8375 
8376 /*-- vec_mulo ---------------------------------------------------------------*/
8377 
8378 static inline __ATTRS_o_ai vector signed short
8379 vec_mulo(vector signed char __a, vector signed char __b) {
8380  return __builtin_s390_vmob(__a, __b);
8381 }
8382 
8383 static inline __ATTRS_o_ai vector unsigned short
8384 vec_mulo(vector unsigned char __a, vector unsigned char __b) {
8385  return __builtin_s390_vmlob(__a, __b);
8386 }
8387 
8388 static inline __ATTRS_o_ai vector signed int
8389 vec_mulo(vector signed short __a, vector signed short __b) {
8390  return __builtin_s390_vmoh(__a, __b);
8391 }
8392 
8393 static inline __ATTRS_o_ai vector unsigned int
8394 vec_mulo(vector unsigned short __a, vector unsigned short __b) {
8395  return __builtin_s390_vmloh(__a, __b);
8396 }
8397 
8398 static inline __ATTRS_o_ai vector signed long long
8399 vec_mulo(vector signed int __a, vector signed int __b) {
8400  return __builtin_s390_vmof(__a, __b);
8401 }
8402 
8403 static inline __ATTRS_o_ai vector unsigned long long
8404 vec_mulo(vector unsigned int __a, vector unsigned int __b) {
8405  return __builtin_s390_vmlof(__a, __b);
8406 }
8407 
8408 /*-- vec_msum_u128 ----------------------------------------------------------*/
8409 
8410 #if __ARCH__ >= 12
8411 #define vec_msum_u128(X, Y, Z, W) \
8412  ((vector unsigned char)__builtin_s390_vmslg((X), (Y), (Z), (W)));
8413 #endif
8414 
8415 /*-- vec_sub_u128 -----------------------------------------------------------*/
8416 
8417 static inline __ATTRS_ai vector unsigned char
8418 vec_sub_u128(vector unsigned char __a, vector unsigned char __b) {
8419  return __builtin_s390_vsq(__a, __b);
8420 }
8421 
8422 /*-- vec_subc ---------------------------------------------------------------*/
8423 
8424 static inline __ATTRS_o_ai vector unsigned char
8425 vec_subc(vector unsigned char __a, vector unsigned char __b) {
8426  return __builtin_s390_vscbib(__a, __b);
8427 }
8428 
8429 static inline __ATTRS_o_ai vector unsigned short
8430 vec_subc(vector unsigned short __a, vector unsigned short __b) {
8431  return __builtin_s390_vscbih(__a, __b);
8432 }
8433 
8434 static inline __ATTRS_o_ai vector unsigned int
8435 vec_subc(vector unsigned int __a, vector unsigned int __b) {
8436  return __builtin_s390_vscbif(__a, __b);
8437 }
8438 
8439 static inline __ATTRS_o_ai vector unsigned long long
8440 vec_subc(vector unsigned long long __a, vector unsigned long long __b) {
8441  return __builtin_s390_vscbig(__a, __b);
8442 }
8443 
8444 /*-- vec_subc_u128 ----------------------------------------------------------*/
8445 
8446 static inline __ATTRS_ai vector unsigned char
8447 vec_subc_u128(vector unsigned char __a, vector unsigned char __b) {
8448  return __builtin_s390_vscbiq(__a, __b);
8449 }
8450 
8451 /*-- vec_sube_u128 ----------------------------------------------------------*/
8452 
8453 static inline __ATTRS_ai vector unsigned char
8454 vec_sube_u128(vector unsigned char __a, vector unsigned char __b,
8455  vector unsigned char __c) {
8456  return __builtin_s390_vsbiq(__a, __b, __c);
8457 }
8458 
8459 /*-- vec_subec_u128 ---------------------------------------------------------*/
8460 
8461 static inline __ATTRS_ai vector unsigned char
8462 vec_subec_u128(vector unsigned char __a, vector unsigned char __b,
8463  vector unsigned char __c) {
8464  return __builtin_s390_vsbcbiq(__a, __b, __c);
8465 }
8466 
8467 /*-- vec_sum2 ---------------------------------------------------------------*/
8468 
8469 static inline __ATTRS_o_ai vector unsigned long long
8470 vec_sum2(vector unsigned short __a, vector unsigned short __b) {
8471  return __builtin_s390_vsumgh(__a, __b);
8472 }
8473 
8474 static inline __ATTRS_o_ai vector unsigned long long
8475 vec_sum2(vector unsigned int __a, vector unsigned int __b) {
8476  return __builtin_s390_vsumgf(__a, __b);
8477 }
8478 
8479 /*-- vec_sum_u128 -----------------------------------------------------------*/
8480 
8481 static inline __ATTRS_o_ai vector unsigned char
8482 vec_sum_u128(vector unsigned int __a, vector unsigned int __b) {
8483  return __builtin_s390_vsumqf(__a, __b);
8484 }
8485 
8486 static inline __ATTRS_o_ai vector unsigned char
8487 vec_sum_u128(vector unsigned long long __a, vector unsigned long long __b) {
8488  return __builtin_s390_vsumqg(__a, __b);
8489 }
8490 
8491 /*-- vec_sum4 ---------------------------------------------------------------*/
8492 
8493 static inline __ATTRS_o_ai vector unsigned int
8494 vec_sum4(vector unsigned char __a, vector unsigned char __b) {
8495  return __builtin_s390_vsumb(__a, __b);
8496 }
8497 
8498 static inline __ATTRS_o_ai vector unsigned int
8499 vec_sum4(vector unsigned short __a, vector unsigned short __b) {
8500  return __builtin_s390_vsumh(__a, __b);
8501 }
8502 
8503 /*-- vec_test_mask ----------------------------------------------------------*/
8504 
8505 static inline __ATTRS_o_ai int
8506 vec_test_mask(vector signed char __a, vector unsigned char __b) {
8507  return __builtin_s390_vtm((vector unsigned char)__a,
8508  (vector unsigned char)__b);
8509 }
8510 
8511 static inline __ATTRS_o_ai int
8512 vec_test_mask(vector unsigned char __a, vector unsigned char __b) {
8513  return __builtin_s390_vtm(__a, __b);
8514 }
8515 
8516 static inline __ATTRS_o_ai int
8517 vec_test_mask(vector signed short __a, vector unsigned short __b) {
8518  return __builtin_s390_vtm((vector unsigned char)__a,
8519  (vector unsigned char)__b);
8520 }
8521 
8522 static inline __ATTRS_o_ai int
8523 vec_test_mask(vector unsigned short __a, vector unsigned short __b) {
8524  return __builtin_s390_vtm((vector unsigned char)__a,
8525  (vector unsigned char)__b);
8526 }
8527 
8528 static inline __ATTRS_o_ai int
8529 vec_test_mask(vector signed int __a, vector unsigned int __b) {
8530  return __builtin_s390_vtm((vector unsigned char)__a,
8531  (vector unsigned char)__b);
8532 }
8533 
8534 static inline __ATTRS_o_ai int
8535 vec_test_mask(vector unsigned int __a, vector unsigned int __b) {
8536  return __builtin_s390_vtm((vector unsigned char)__a,
8537  (vector unsigned char)__b);
8538 }
8539 
8540 static inline __ATTRS_o_ai int
8541 vec_test_mask(vector signed long long __a, vector unsigned long long __b) {
8542  return __builtin_s390_vtm((vector unsigned char)__a,
8543  (vector unsigned char)__b);
8544 }
8545 
8546 static inline __ATTRS_o_ai int
8547 vec_test_mask(vector unsigned long long __a, vector unsigned long long __b) {
8548  return __builtin_s390_vtm((vector unsigned char)__a,
8549  (vector unsigned char)__b);
8550 }
8551 
8552 #if __ARCH__ >= 12
8553 static inline __ATTRS_o_ai int
8554 vec_test_mask(vector float __a, vector unsigned int __b) {
8555  return __builtin_s390_vtm((vector unsigned char)__a,
8556  (vector unsigned char)__b);
8557 }
8558 #endif
8559 
8560 static inline __ATTRS_o_ai int
8561 vec_test_mask(vector double __a, vector unsigned long long __b) {
8562  return __builtin_s390_vtm((vector unsigned char)__a,
8563  (vector unsigned char)__b);
8564 }
8565 
8566 /*-- vec_madd ---------------------------------------------------------------*/
8567 
8568 #if __ARCH__ >= 12
8569 static inline __ATTRS_o_ai vector float
8570 vec_madd(vector float __a, vector float __b, vector float __c) {
8571  return __builtin_s390_vfmasb(__a, __b, __c);
8572 }
8573 #endif
8574 
8575 static inline __ATTRS_o_ai vector double
8576 vec_madd(vector double __a, vector double __b, vector double __c) {
8577  return __builtin_s390_vfmadb(__a, __b, __c);
8578 }
8579 
8580 /*-- vec_msub ---------------------------------------------------------------*/
8581 
8582 #if __ARCH__ >= 12
8583 static inline __ATTRS_o_ai vector float
8584 vec_msub(vector float __a, vector float __b, vector float __c) {
8585  return __builtin_s390_vfmssb(__a, __b, __c);
8586 }
8587 #endif
8588 
8589 static inline __ATTRS_o_ai vector double
8590 vec_msub(vector double __a, vector double __b, vector double __c) {
8591  return __builtin_s390_vfmsdb(__a, __b, __c);
8592 }
8593 
8594 /*-- vec_nmadd ---------------------------------------------------------------*/
8595 
8596 #if __ARCH__ >= 12
8597 static inline __ATTRS_o_ai vector float
8598 vec_nmadd(vector float __a, vector float __b, vector float __c) {
8599  return __builtin_s390_vfnmasb(__a, __b, __c);
8600 }
8601 
8602 static inline __ATTRS_o_ai vector double
8603 vec_nmadd(vector double __a, vector double __b, vector double __c) {
8604  return __builtin_s390_vfnmadb(__a, __b, __c);
8605 }
8606 #endif
8607 
8608 /*-- vec_nmsub ---------------------------------------------------------------*/
8609 
8610 #if __ARCH__ >= 12
8611 static inline __ATTRS_o_ai vector float
8612 vec_nmsub(vector float __a, vector float __b, vector float __c) {
8613  return __builtin_s390_vfnmssb(__a, __b, __c);
8614 }
8615 
8616 static inline __ATTRS_o_ai vector double
8617 vec_nmsub(vector double __a, vector double __b, vector double __c) {
8618  return __builtin_s390_vfnmsdb(__a, __b, __c);
8619 }
8620 #endif
8621 
8622 /*-- vec_sqrt ---------------------------------------------------------------*/
8623 
8624 #if __ARCH__ >= 12
8625 static inline __ATTRS_o_ai vector float
8626 vec_sqrt(vector float __a) {
8627  return __builtin_s390_vfsqsb(__a);
8628 }
8629 #endif
8630 
8631 static inline __ATTRS_o_ai vector double
8632 vec_sqrt(vector double __a) {
8633  return __builtin_s390_vfsqdb(__a);
8634 }
8635 
8636 /*-- vec_ld2f ---------------------------------------------------------------*/
8637 
8638 // This prototype is deprecated.
8639 static inline __ATTRS_ai vector double
8640 vec_ld2f(const float *__ptr) {
8641  typedef float __v2f32 __attribute__((__vector_size__(8)));
8642  return __builtin_convertvector(*(const __v2f32 *)__ptr, vector double);
8643 }
8644 
8645 /*-- vec_st2f ---------------------------------------------------------------*/
8646 
8647 // This prototype is deprecated.
8648 static inline __ATTRS_ai void
8649 vec_st2f(vector double __a, float *__ptr) {
8650  typedef float __v2f32 __attribute__((__vector_size__(8)));
8651  *(__v2f32 *)__ptr = __builtin_convertvector(__a, __v2f32);
8652 }
8653 
8654 /*-- vec_ctd ----------------------------------------------------------------*/
8655 
8656 // This prototype is deprecated.
8657 static inline __ATTRS_o_ai vector double
8658 vec_ctd(vector signed long long __a, int __b)
8659  __constant_range(__b, 0, 31) {
8660  vector double __conv = __builtin_convertvector(__a, vector double);
8661  __conv *= (vector double)(vector unsigned long long)((0x3ffULL - __b) << 52);
8662  return __conv;
8663 }
8664 
8665 // This prototype is deprecated.
8666 static inline __ATTRS_o_ai vector double
8667 vec_ctd(vector unsigned long long __a, int __b)
8668  __constant_range(__b, 0, 31) {
8669  vector double __conv = __builtin_convertvector(__a, vector double);
8670  __conv *= (vector double)(vector unsigned long long)((0x3ffULL - __b) << 52);
8671  return __conv;
8672 }
8673 
8674 /*-- vec_ctsl ---------------------------------------------------------------*/
8675 
8676 // This prototype is deprecated.
8677 static inline __ATTRS_o_ai vector signed long long
8678 vec_ctsl(vector double __a, int __b)
8679  __constant_range(__b, 0, 31) {
8680  __a *= (vector double)(vector unsigned long long)((0x3ffULL + __b) << 52);
8681  return __builtin_convertvector(__a, vector signed long long);
8682 }
8683 
8684 /*-- vec_ctul ---------------------------------------------------------------*/
8685 
8686 // This prototype is deprecated.
8687 static inline __ATTRS_o_ai vector unsigned long long
8688 vec_ctul(vector double __a, int __b)
8689  __constant_range(__b, 0, 31) {
8690  __a *= (vector double)(vector unsigned long long)((0x3ffULL + __b) << 52);
8691  return __builtin_convertvector(__a, vector unsigned long long);
8692 }
8693 
8694 /*-- vec_doublee ------------------------------------------------------------*/
8695 
8696 #if __ARCH__ >= 12
8697 static inline __ATTRS_ai vector double
8698 vec_doublee(vector float __a) {
8699  typedef float __v2f32 __attribute__((__vector_size__(8)));
8700  __v2f32 __pack = __builtin_shufflevector(__a, __a, 0, 2);
8701  return __builtin_convertvector(__pack, vector double);
8702 }
8703 #endif
8704 
8705 /*-- vec_floate -------------------------------------------------------------*/
8706 
8707 #if __ARCH__ >= 12
8708 static inline __ATTRS_ai vector float
8709 vec_floate(vector double __a) {
8710  typedef float __v2f32 __attribute__((__vector_size__(8)));
8711  __v2f32 __pack = __builtin_convertvector(__a, __v2f32);
8712  return __builtin_shufflevector(__pack, __pack, 0, -1, 1, -1);
8713 }
8714 #endif
8715 
8716 /*-- vec_double -------------------------------------------------------------*/
8717 
8718 static inline __ATTRS_o_ai vector double
8719 vec_double(vector signed long long __a) {
8720  return __builtin_convertvector(__a, vector double);
8721 }
8722 
8723 static inline __ATTRS_o_ai vector double
8724 vec_double(vector unsigned long long __a) {
8725  return __builtin_convertvector(__a, vector double);
8726 }
8727 
8728 /*-- vec_signed -------------------------------------------------------------*/
8729 
8730 static inline __ATTRS_o_ai vector signed long long
8731 vec_signed(vector double __a) {
8732  return __builtin_convertvector(__a, vector signed long long);
8733 }
8734 
8735 /*-- vec_unsigned -----------------------------------------------------------*/
8736 
8737 static inline __ATTRS_o_ai vector unsigned long long
8738 vec_unsigned(vector double __a) {
8739  return __builtin_convertvector(__a, vector unsigned long long);
8740 }
8741 
8742 /*-- vec_roundp -------------------------------------------------------------*/
8743 
8744 #if __ARCH__ >= 12
8745 static inline __ATTRS_o_ai vector float
8746 vec_roundp(vector float __a) {
8747  return __builtin_s390_vfisb(__a, 4, 6);
8748 }
8749 #endif
8750 
8751 static inline __ATTRS_o_ai vector double
8752 vec_roundp(vector double __a) {
8753  return __builtin_s390_vfidb(__a, 4, 6);
8754 }
8755 
8756 /*-- vec_ceil ---------------------------------------------------------------*/
8757 
8758 #if __ARCH__ >= 12
8759 static inline __ATTRS_o_ai vector float
8760 vec_ceil(vector float __a) {
8761  // On this platform, vec_ceil never triggers the IEEE-inexact exception.
8762  return __builtin_s390_vfisb(__a, 4, 6);
8763 }
8764 #endif
8765 
8766 static inline __ATTRS_o_ai vector double
8767 vec_ceil(vector double __a) {
8768  // On this platform, vec_ceil never triggers the IEEE-inexact exception.
8769  return __builtin_s390_vfidb(__a, 4, 6);
8770 }
8771 
8772 /*-- vec_roundm -------------------------------------------------------------*/
8773 
8774 #if __ARCH__ >= 12
8775 static inline __ATTRS_o_ai vector float
8776 vec_roundm(vector float __a) {
8777  return __builtin_s390_vfisb(__a, 4, 7);
8778 }
8779 #endif
8780 
8781 static inline __ATTRS_o_ai vector double
8782 vec_roundm(vector double __a) {
8783  return __builtin_s390_vfidb(__a, 4, 7);
8784 }
8785 
8786 /*-- vec_floor --------------------------------------------------------------*/
8787 
8788 #if __ARCH__ >= 12
8789 static inline __ATTRS_o_ai vector float
8790 vec_floor(vector float __a) {
8791  // On this platform, vec_floor never triggers the IEEE-inexact exception.
8792  return __builtin_s390_vfisb(__a, 4, 7);
8793 }
8794 #endif
8795 
8796 static inline __ATTRS_o_ai vector double
8797 vec_floor(vector double __a) {
8798  // On this platform, vec_floor never triggers the IEEE-inexact exception.
8799  return __builtin_s390_vfidb(__a, 4, 7);
8800 }
8801 
8802 /*-- vec_roundz -------------------------------------------------------------*/
8803 
8804 #if __ARCH__ >= 12
8805 static inline __ATTRS_o_ai vector float
8806 vec_roundz(vector float __a) {
8807  return __builtin_s390_vfisb(__a, 4, 5);
8808 }
8809 #endif
8810 
8811 static inline __ATTRS_o_ai vector double
8812 vec_roundz(vector double __a) {
8813  return __builtin_s390_vfidb(__a, 4, 5);
8814 }
8815 
8816 /*-- vec_trunc --------------------------------------------------------------*/
8817 
8818 #if __ARCH__ >= 12
8819 static inline __ATTRS_o_ai vector float
8820 vec_trunc(vector float __a) {
8821  // On this platform, vec_trunc never triggers the IEEE-inexact exception.
8822  return __builtin_s390_vfisb(__a, 4, 5);
8823 }
8824 #endif
8825 
8826 static inline __ATTRS_o_ai vector double
8827 vec_trunc(vector double __a) {
8828  // On this platform, vec_trunc never triggers the IEEE-inexact exception.
8829  return __builtin_s390_vfidb(__a, 4, 5);
8830 }
8831 
8832 /*-- vec_roundc -------------------------------------------------------------*/
8833 
8834 #if __ARCH__ >= 12
8835 static inline __ATTRS_o_ai vector float
8836 vec_roundc(vector float __a) {
8837  return __builtin_s390_vfisb(__a, 4, 0);
8838 }
8839 #endif
8840 
8841 static inline __ATTRS_o_ai vector double
8842 vec_roundc(vector double __a) {
8843  return __builtin_s390_vfidb(__a, 4, 0);
8844 }
8845 
8846 /*-- vec_rint ---------------------------------------------------------------*/
8847 
8848 #if __ARCH__ >= 12
8849 static inline __ATTRS_o_ai vector float
8850 vec_rint(vector float __a) {
8851  // vec_rint may trigger the IEEE-inexact exception.
8852  return __builtin_s390_vfisb(__a, 0, 0);
8853 }
8854 #endif
8855 
8856 static inline __ATTRS_o_ai vector double
8857 vec_rint(vector double __a) {
8858  // vec_rint may trigger the IEEE-inexact exception.
8859  return __builtin_s390_vfidb(__a, 0, 0);
8860 }
8861 
8862 /*-- vec_round --------------------------------------------------------------*/
8863 
8864 #if __ARCH__ >= 12
8865 static inline __ATTRS_o_ai vector float
8866 vec_round(vector float __a) {
8867  return __builtin_s390_vfisb(__a, 4, 4);
8868 }
8869 #endif
8870 
8871 static inline __ATTRS_o_ai vector double
8872 vec_round(vector double __a) {
8873  return __builtin_s390_vfidb(__a, 4, 4);
8874 }
8875 
8876 /*-- vec_fp_test_data_class -------------------------------------------------*/
8877 
8878 #if __ARCH__ >= 12
8879 extern __ATTRS_o vector bool int
8880 vec_fp_test_data_class(vector float __a, int __b, int *__c)
8881  __constant_range(__b, 0, 4095);
8882 
8883 extern __ATTRS_o vector bool long long
8884 vec_fp_test_data_class(vector double __a, int __b, int *__c)
8885  __constant_range(__b, 0, 4095);
8886 
8887 #define vec_fp_test_data_class(X, Y, Z) \
8888  ((__typeof__((vec_fp_test_data_class)((X), (Y), (Z)))) \
8889  __extension__ ({ \
8890  vector unsigned char __res; \
8891  vector unsigned char __x = (vector unsigned char)(X); \
8892  int *__z = (Z); \
8893  switch (sizeof ((X)[0])) { \
8894  case 4: __res = (vector unsigned char) \
8895  __builtin_s390_vftcisb((vector float)__x, (Y), __z); \
8896  break; \
8897  default: __res = (vector unsigned char) \
8898  __builtin_s390_vftcidb((vector double)__x, (Y), __z); \
8899  break; \
8900  } __res; }))
8901 #else
8902 #define vec_fp_test_data_class(X, Y, Z) \
8903  ((vector bool long long)__builtin_s390_vftcidb((X), (Y), (Z)))
8904 #endif
8905 
8906 #define __VEC_CLASS_FP_ZERO_P (1 << 11)
8907 #define __VEC_CLASS_FP_ZERO_N (1 << 10)
8908 #define __VEC_CLASS_FP_ZERO (__VEC_CLASS_FP_ZERO_P | __VEC_CLASS_FP_ZERO_N)
8909 #define __VEC_CLASS_FP_NORMAL_P (1 << 9)
8910 #define __VEC_CLASS_FP_NORMAL_N (1 << 8)
8911 #define __VEC_CLASS_FP_NORMAL (__VEC_CLASS_FP_NORMAL_P | \
8912  __VEC_CLASS_FP_NORMAL_N)
8913 #define __VEC_CLASS_FP_SUBNORMAL_P (1 << 7)
8914 #define __VEC_CLASS_FP_SUBNORMAL_N (1 << 6)
8915 #define __VEC_CLASS_FP_SUBNORMAL (__VEC_CLASS_FP_SUBNORMAL_P | \
8916  __VEC_CLASS_FP_SUBNORMAL_N)
8917 #define __VEC_CLASS_FP_INFINITY_P (1 << 5)
8918 #define __VEC_CLASS_FP_INFINITY_N (1 << 4)
8919 #define __VEC_CLASS_FP_INFINITY (__VEC_CLASS_FP_INFINITY_P | \
8920  __VEC_CLASS_FP_INFINITY_N)
8921 #define __VEC_CLASS_FP_QNAN_P (1 << 3)
8922 #define __VEC_CLASS_FP_QNAN_N (1 << 2)
8923 #define __VEC_CLASS_FP_QNAN (__VEC_CLASS_FP_QNAN_P | __VEC_CLASS_FP_QNAN_N)
8924 #define __VEC_CLASS_FP_SNAN_P (1 << 1)
8925 #define __VEC_CLASS_FP_SNAN_N (1 << 0)
8926 #define __VEC_CLASS_FP_SNAN (__VEC_CLASS_FP_SNAN_P | __VEC_CLASS_FP_SNAN_N)
8927 #define __VEC_CLASS_FP_NAN (__VEC_CLASS_FP_QNAN | __VEC_CLASS_FP_SNAN)
8928 #define __VEC_CLASS_FP_NOT_NORMAL (__VEC_CLASS_FP_NAN | \
8929  __VEC_CLASS_FP_SUBNORMAL | \
8930  __VEC_CLASS_FP_ZERO | \
8931  __VEC_CLASS_FP_INFINITY)
8932 
8933 /*-- vec_cp_until_zero ------------------------------------------------------*/
8934 
8935 static inline __ATTRS_o_ai vector signed char
8936 vec_cp_until_zero(vector signed char __a) {
8937  return (vector signed char)__builtin_s390_vistrb((vector unsigned char)__a);
8938 }
8939 
8940 static inline __ATTRS_o_ai vector bool char
8941 vec_cp_until_zero(vector bool char __a) {
8942  return (vector bool char)__builtin_s390_vistrb((vector unsigned char)__a);
8943 }
8944 
8945 static inline __ATTRS_o_ai vector unsigned char
8946 vec_cp_until_zero(vector unsigned char __a) {
8947  return __builtin_s390_vistrb(__a);
8948 }
8949 
8950 static inline __ATTRS_o_ai vector signed short
8951 vec_cp_until_zero(vector signed short __a) {
8952  return (vector signed short)__builtin_s390_vistrh((vector unsigned short)__a);
8953 }
8954 
8955 static inline __ATTRS_o_ai vector bool short
8956 vec_cp_until_zero(vector bool short __a) {
8957  return (vector bool short)__builtin_s390_vistrh((vector unsigned short)__a);
8958 }
8959 
8960 static inline __ATTRS_o_ai vector unsigned short
8961 vec_cp_until_zero(vector unsigned short __a) {
8962  return __builtin_s390_vistrh(__a);
8963 }
8964 
8965 static inline __ATTRS_o_ai vector signed int
8966 vec_cp_until_zero(vector signed int __a) {
8967  return (vector signed int)__builtin_s390_vistrf((vector unsigned int)__a);
8968 }
8969 
8970 static inline __ATTRS_o_ai vector bool int
8971 vec_cp_until_zero(vector bool int __a) {
8972  return (vector bool int)__builtin_s390_vistrf((vector unsigned int)__a);
8973 }
8974 
8975 static inline __ATTRS_o_ai vector unsigned int
8976 vec_cp_until_zero(vector unsigned int __a) {
8977  return __builtin_s390_vistrf(__a);
8978 }
8979 
8980 /*-- vec_cp_until_zero_cc ---------------------------------------------------*/
8981 
8982 static inline __ATTRS_o_ai vector signed char
8983 vec_cp_until_zero_cc(vector signed char __a, int *__cc) {
8984  return (vector signed char)
8985  __builtin_s390_vistrbs((vector unsigned char)__a, __cc);
8986 }
8987 
8988 static inline __ATTRS_o_ai vector bool char
8989 vec_cp_until_zero_cc(vector bool char __a, int *__cc) {
8990  return (vector bool char)
8991  __builtin_s390_vistrbs((vector unsigned char)__a, __cc);
8992 }
8993 
8994 static inline __ATTRS_o_ai vector unsigned char
8995 vec_cp_until_zero_cc(vector unsigned char __a, int *__cc) {
8996  return __builtin_s390_vistrbs(__a, __cc);
8997 }
8998 
8999 static inline __ATTRS_o_ai vector signed short
9000 vec_cp_until_zero_cc(vector signed short __a, int *__cc) {
9001  return (vector signed short)
9002  __builtin_s390_vistrhs((vector unsigned short)__a, __cc);
9003 }
9004 
9005 static inline __ATTRS_o_ai vector bool short
9006 vec_cp_until_zero_cc(vector bool short __a, int *__cc) {
9007  return (vector bool short)
9008  __builtin_s390_vistrhs((vector unsigned short)__a, __cc);
9009 }
9010 
9011 static inline __ATTRS_o_ai vector unsigned short
9012 vec_cp_until_zero_cc(vector unsigned short __a, int *__cc) {
9013  return __builtin_s390_vistrhs(__a, __cc);
9014 }
9015 
9016 static inline __ATTRS_o_ai vector signed int
9017 vec_cp_until_zero_cc(vector signed int __a, int *__cc) {
9018  return (vector signed int)
9019  __builtin_s390_vistrfs((vector unsigned int)__a, __cc);
9020 }
9021 
9022 static inline __ATTRS_o_ai vector bool int
9023 vec_cp_until_zero_cc(vector bool int __a, int *__cc) {
9024  return (vector bool int)__builtin_s390_vistrfs((vector unsigned int)__a,
9025  __cc);
9026 }
9027 
9028 static inline __ATTRS_o_ai vector unsigned int
9029 vec_cp_until_zero_cc(vector unsigned int __a, int *__cc) {
9030  return __builtin_s390_vistrfs(__a, __cc);
9031 }
9032 
9033 /*-- vec_cmpeq_idx ----------------------------------------------------------*/
9034 
9035 static inline __ATTRS_o_ai vector signed char
9036 vec_cmpeq_idx(vector signed char __a, vector signed char __b) {
9037  return (vector signed char)
9038  __builtin_s390_vfeeb((vector unsigned char)__a,
9039  (vector unsigned char)__b);
9040 }
9041 
9042 static inline __ATTRS_o_ai vector unsigned char
9043 vec_cmpeq_idx(vector bool char __a, vector bool char __b) {
9044  return __builtin_s390_vfeeb((vector unsigned char)__a,
9045  (vector unsigned char)__b);
9046 }
9047 
9048 static inline __ATTRS_o_ai vector unsigned char
9049 vec_cmpeq_idx(vector unsigned char __a, vector unsigned char __b) {
9050  return __builtin_s390_vfeeb(__a, __b);
9051 }
9052 
9053 static inline __ATTRS_o_ai vector signed short
9054 vec_cmpeq_idx(vector signed short __a, vector signed short __b) {
9055  return (vector signed short)
9056  __builtin_s390_vfeeh((vector unsigned short)__a,
9057  (vector unsigned short)__b);
9058 }
9059 
9060 static inline __ATTRS_o_ai vector unsigned short
9061 vec_cmpeq_idx(vector bool short __a, vector bool short __b) {
9062  return __builtin_s390_vfeeh((vector unsigned short)__a,
9063  (vector unsigned short)__b);
9064 }
9065 
9066 static inline __ATTRS_o_ai vector unsigned short
9067 vec_cmpeq_idx(vector unsigned short __a, vector unsigned short __b) {
9068  return __builtin_s390_vfeeh(__a, __b);
9069 }
9070 
9071 static inline __ATTRS_o_ai vector signed int
9072 vec_cmpeq_idx(vector signed int __a, vector signed int __b) {
9073  return (vector signed int)
9074  __builtin_s390_vfeef((vector unsigned int)__a,
9075  (vector unsigned int)__b);
9076 }
9077 
9078 static inline __ATTRS_o_ai vector unsigned int
9079 vec_cmpeq_idx(vector bool int __a, vector bool int __b) {
9080  return __builtin_s390_vfeef((vector unsigned int)__a,
9081  (vector unsigned int)__b);
9082 }
9083 
9084 static inline __ATTRS_o_ai vector unsigned int
9085 vec_cmpeq_idx(vector unsigned int __a, vector unsigned int __b) {
9086  return __builtin_s390_vfeef(__a, __b);
9087 }
9088 
9089 /*-- vec_cmpeq_idx_cc -------------------------------------------------------*/
9090 
9091 static inline __ATTRS_o_ai vector signed char
9092 vec_cmpeq_idx_cc(vector signed char __a, vector signed char __b, int *__cc) {
9093  return (vector signed char)
9094  __builtin_s390_vfeebs((vector unsigned char)__a,
9095  (vector unsigned char)__b, __cc);
9096 }
9097 
9098 static inline __ATTRS_o_ai vector unsigned char
9099 vec_cmpeq_idx_cc(vector bool char __a, vector bool char __b, int *__cc) {
9100  return __builtin_s390_vfeebs((vector unsigned char)__a,
9101  (vector unsigned char)__b, __cc);
9102 }
9103 
9104 static inline __ATTRS_o_ai vector unsigned char
9105 vec_cmpeq_idx_cc(vector unsigned char __a, vector unsigned char __b,
9106  int *__cc) {
9107  return __builtin_s390_vfeebs(__a, __b, __cc);
9108 }
9109 
9110 static inline __ATTRS_o_ai vector signed short
9111 vec_cmpeq_idx_cc(vector signed short __a, vector signed short __b, int *__cc) {
9112  return (vector signed short)
9113  __builtin_s390_vfeehs((vector unsigned short)__a,
9114  (vector unsigned short)__b, __cc);
9115 }
9116 
9117 static inline __ATTRS_o_ai vector unsigned short
9118 vec_cmpeq_idx_cc(vector bool short __a, vector bool short __b, int *__cc) {
9119  return __builtin_s390_vfeehs((vector unsigned short)__a,
9120  (vector unsigned short)__b, __cc);
9121 }
9122 
9123 static inline __ATTRS_o_ai vector unsigned short
9124 vec_cmpeq_idx_cc(vector unsigned short __a, vector unsigned short __b,
9125  int *__cc) {
9126  return __builtin_s390_vfeehs(__a, __b, __cc);
9127 }
9128 
9129 static inline __ATTRS_o_ai vector signed int
9130 vec_cmpeq_idx_cc(vector signed int __a, vector signed int __b, int *__cc) {
9131  return (vector signed int)
9132  __builtin_s390_vfeefs((vector unsigned int)__a,
9133  (vector unsigned int)__b, __cc);
9134 }
9135 
9136 static inline __ATTRS_o_ai vector unsigned int
9137 vec_cmpeq_idx_cc(vector bool int __a, vector bool int __b, int *__cc) {
9138  return __builtin_s390_vfeefs((vector unsigned int)__a,
9139  (vector unsigned int)__b, __cc);
9140 }
9141 
9142 static inline __ATTRS_o_ai vector unsigned int
9143 vec_cmpeq_idx_cc(vector unsigned int __a, vector unsigned int __b, int *__cc) {
9144  return __builtin_s390_vfeefs(__a, __b, __cc);
9145 }
9146 
9147 /*-- vec_cmpeq_or_0_idx -----------------------------------------------------*/
9148 
9149 static inline __ATTRS_o_ai vector signed char
9150 vec_cmpeq_or_0_idx(vector signed char __a, vector signed char __b) {
9151  return (vector signed char)
9152  __builtin_s390_vfeezb((vector unsigned char)__a,
9153  (vector unsigned char)__b);
9154 }
9155 
9156 static inline __ATTRS_o_ai vector unsigned char
9157 vec_cmpeq_or_0_idx(vector bool char __a, vector bool char __b) {
9158  return __builtin_s390_vfeezb((vector unsigned char)__a,
9159  (vector unsigned char)__b);
9160 }
9161 
9162 static inline __ATTRS_o_ai vector unsigned char
9163 vec_cmpeq_or_0_idx(vector unsigned char __a, vector unsigned char __b) {
9164  return __builtin_s390_vfeezb(__a, __b);
9165 }
9166 
9167 static inline __ATTRS_o_ai vector signed short
9168 vec_cmpeq_or_0_idx(vector signed short __a, vector signed short __b) {
9169  return (vector signed short)
9170  __builtin_s390_vfeezh((vector unsigned short)__a,
9171  (vector unsigned short)__b);
9172 }
9173 
9174 static inline __ATTRS_o_ai vector unsigned short
9175 vec_cmpeq_or_0_idx(vector bool short __a, vector bool short __b) {
9176  return __builtin_s390_vfeezh((vector unsigned short)__a,
9177  (vector unsigned short)__b);
9178 }
9179 
9180 static inline __ATTRS_o_ai vector unsigned short
9181 vec_cmpeq_or_0_idx(vector unsigned short __a, vector unsigned short __b) {
9182  return __builtin_s390_vfeezh(__a, __b);
9183 }
9184 
9185 static inline __ATTRS_o_ai vector signed int
9186 vec_cmpeq_or_0_idx(vector signed int __a, vector signed int __b) {
9187  return (vector signed int)
9188  __builtin_s390_vfeezf((vector unsigned int)__a,
9189  (vector unsigned int)__b);
9190 }
9191 
9192 static inline __ATTRS_o_ai vector unsigned int
9193 vec_cmpeq_or_0_idx(vector bool int __a, vector bool int __b) {
9194  return __builtin_s390_vfeezf((vector unsigned int)__a,
9195  (vector unsigned int)__b);
9196 }
9197 
9198 static inline __ATTRS_o_ai vector unsigned int
9199 vec_cmpeq_or_0_idx(vector unsigned int __a, vector unsigned int __b) {
9200  return __builtin_s390_vfeezf(__a, __b);
9201 }
9202 
9203 /*-- vec_cmpeq_or_0_idx_cc --------------------------------------------------*/
9204 
9205 static inline __ATTRS_o_ai vector signed char
9206 vec_cmpeq_or_0_idx_cc(vector signed char __a, vector signed char __b,
9207  int *__cc) {
9208  return (vector signed char)
9209  __builtin_s390_vfeezbs((vector unsigned char)__a,
9210  (vector unsigned char)__b, __cc);
9211 }
9212 
9213 static inline __ATTRS_o_ai vector unsigned char
9214 vec_cmpeq_or_0_idx_cc(vector bool char __a, vector bool char __b, int *__cc) {
9215  return __builtin_s390_vfeezbs((vector unsigned char)__a,
9216  (vector unsigned char)__b, __cc);
9217 }
9218 
9219 static inline __ATTRS_o_ai vector unsigned char
9220 vec_cmpeq_or_0_idx_cc(vector unsigned char __a, vector unsigned char __b,
9221  int *__cc) {
9222  return __builtin_s390_vfeezbs(__a, __b, __cc);
9223 }
9224 
9225 static inline __ATTRS_o_ai vector signed short
9226 vec_cmpeq_or_0_idx_cc(vector signed short __a, vector signed short __b,
9227  int *__cc) {
9228  return (vector signed short)
9229  __builtin_s390_vfeezhs((vector unsigned short)__a,
9230  (vector unsigned short)__b, __cc);
9231 }
9232 
9233 static inline __ATTRS_o_ai vector unsigned short
9234 vec_cmpeq_or_0_idx_cc(vector bool short __a, vector bool short __b, int *__cc) {
9235  return __builtin_s390_vfeezhs((vector unsigned short)__a,
9236  (vector unsigned short)__b, __cc);
9237 }
9238 
9239 static inline __ATTRS_o_ai vector unsigned short
9240 vec_cmpeq_or_0_idx_cc(vector unsigned short __a, vector unsigned short __b,
9241  int *__cc) {
9242  return __builtin_s390_vfeezhs(__a, __b, __cc);
9243 }
9244 
9245 static inline __ATTRS_o_ai vector signed int
9246 vec_cmpeq_or_0_idx_cc(vector signed int __a, vector signed int __b, int *__cc) {
9247  return (vector signed int)
9248  __builtin_s390_vfeezfs((vector unsigned int)__a,
9249  (vector unsigned int)__b, __cc);
9250 }
9251 
9252 static inline __ATTRS_o_ai vector unsigned int
9253 vec_cmpeq_or_0_idx_cc(vector bool int __a, vector bool int __b, int *__cc) {
9254  return __builtin_s390_vfeezfs((vector unsigned int)__a,
9255  (vector unsigned int)__b, __cc);
9256 }
9257 
9258 static inline __ATTRS_o_ai vector unsigned int
9259 vec_cmpeq_or_0_idx_cc(vector unsigned int __a, vector unsigned int __b,
9260  int *__cc) {
9261  return __builtin_s390_vfeezfs(__a, __b, __cc);
9262 }
9263 
9264 /*-- vec_cmpne_idx ----------------------------------------------------------*/
9265 
9266 static inline __ATTRS_o_ai vector signed char
9267 vec_cmpne_idx(vector signed char __a, vector signed char __b) {
9268  return (vector signed char)
9269  __builtin_s390_vfeneb((vector unsigned char)__a,
9270  (vector unsigned char)__b);
9271 }
9272 
9273 static inline __ATTRS_o_ai vector unsigned char
9274 vec_cmpne_idx(vector bool char __a, vector bool char __b) {
9275  return __builtin_s390_vfeneb((vector unsigned char)__a,
9276  (vector unsigned char)__b);
9277 }
9278 
9279 static inline __ATTRS_o_ai vector unsigned char
9280 vec_cmpne_idx(vector unsigned char __a, vector unsigned char __b) {
9281  return __builtin_s390_vfeneb(__a, __b);
9282 }
9283 
9284 static inline __ATTRS_o_ai vector signed short
9285 vec_cmpne_idx(vector signed short __a, vector signed short __b) {
9286  return (vector signed short)
9287  __builtin_s390_vfeneh((vector unsigned short)__a,
9288  (vector unsigned short)__b);
9289 }
9290 
9291 static inline __ATTRS_o_ai vector unsigned short
9292 vec_cmpne_idx(vector bool short __a, vector bool short __b) {
9293  return __builtin_s390_vfeneh((vector unsigned short)__a,
9294  (vector unsigned short)__b);
9295 }
9296 
9297 static inline __ATTRS_o_ai vector unsigned short
9298 vec_cmpne_idx(vector unsigned short __a, vector unsigned short __b) {
9299  return __builtin_s390_vfeneh(__a, __b);
9300 }
9301 
9302 static inline __ATTRS_o_ai vector signed int
9303 vec_cmpne_idx(vector signed int __a, vector signed int __b) {
9304  return (vector signed int)
9305  __builtin_s390_vfenef((vector unsigned int)__a,
9306  (vector unsigned int)__b);
9307 }
9308 
9309 static inline __ATTRS_o_ai vector unsigned int
9310 vec_cmpne_idx(vector bool int __a, vector bool int __b) {
9311  return __builtin_s390_vfenef((vector unsigned int)__a,
9312  (vector unsigned int)__b);
9313 }
9314 
9315 static inline __ATTRS_o_ai vector unsigned int
9316 vec_cmpne_idx(vector unsigned int __a, vector unsigned int __b) {
9317  return __builtin_s390_vfenef(__a, __b);
9318 }
9319 
9320 /*-- vec_cmpne_idx_cc -------------------------------------------------------*/
9321 
9322 static inline __ATTRS_o_ai vector signed char
9323 vec_cmpne_idx_cc(vector signed char __a, vector signed char __b, int *__cc) {
9324  return (vector signed char)
9325  __builtin_s390_vfenebs((vector unsigned char)__a,
9326  (vector unsigned char)__b, __cc);
9327 }
9328 
9329 static inline __ATTRS_o_ai vector unsigned char
9330 vec_cmpne_idx_cc(vector bool char __a, vector bool char __b, int *__cc) {
9331  return __builtin_s390_vfenebs((vector unsigned char)__a,
9332  (vector unsigned char)__b, __cc);
9333 }
9334 
9335 static inline __ATTRS_o_ai vector unsigned char
9336 vec_cmpne_idx_cc(vector unsigned char __a, vector unsigned char __b,
9337  int *__cc) {
9338  return __builtin_s390_vfenebs(__a, __b, __cc);
9339 }
9340 
9341 static inline __ATTRS_o_ai vector signed short
9342 vec_cmpne_idx_cc(vector signed short __a, vector signed short __b, int *__cc) {
9343  return (vector signed short)
9344  __builtin_s390_vfenehs((vector unsigned short)__a,
9345  (vector unsigned short)__b, __cc);
9346 }
9347 
9348 static inline __ATTRS_o_ai vector unsigned short
9349 vec_cmpne_idx_cc(vector bool short __a, vector bool short __b, int *__cc) {
9350  return __builtin_s390_vfenehs((vector unsigned short)__a,
9351  (vector unsigned short)__b, __cc);
9352 }
9353 
9354 static inline __ATTRS_o_ai vector unsigned short
9355 vec_cmpne_idx_cc(vector unsigned short __a, vector unsigned short __b,
9356  int *__cc) {
9357  return __builtin_s390_vfenehs(__a, __b, __cc);
9358 }
9359 
9360 static inline __ATTRS_o_ai vector signed int
9361 vec_cmpne_idx_cc(vector signed int __a, vector signed int __b, int *__cc) {
9362  return (vector signed int)
9363  __builtin_s390_vfenefs((vector unsigned int)__a,
9364  (vector unsigned int)__b, __cc);
9365 }
9366 
9367 static inline __ATTRS_o_ai vector unsigned int
9368 vec_cmpne_idx_cc(vector bool int __a, vector bool int __b, int *__cc) {
9369  return __builtin_s390_vfenefs((vector unsigned int)__a,
9370  (vector unsigned int)__b, __cc);
9371 }
9372 
9373 static inline __ATTRS_o_ai vector unsigned int
9374 vec_cmpne_idx_cc(vector unsigned int __a, vector unsigned int __b, int *__cc) {
9375  return __builtin_s390_vfenefs(__a, __b, __cc);
9376 }
9377 
9378 /*-- vec_cmpne_or_0_idx -----------------------------------------------------*/
9379 
9380 static inline __ATTRS_o_ai vector signed char
9381 vec_cmpne_or_0_idx(vector signed char __a, vector signed char __b) {
9382  return (vector signed char)
9383  __builtin_s390_vfenezb((vector unsigned char)__a,
9384  (vector unsigned char)__b);
9385 }
9386 
9387 static inline __ATTRS_o_ai vector unsigned char
9388 vec_cmpne_or_0_idx(vector bool char __a, vector bool char __b) {
9389  return __builtin_s390_vfenezb((vector unsigned char)__a,
9390  (vector unsigned char)__b);
9391 }
9392 
9393 static inline __ATTRS_o_ai vector unsigned char
9394 vec_cmpne_or_0_idx(vector unsigned char __a, vector unsigned char __b) {
9395  return __builtin_s390_vfenezb(__a, __b);
9396 }
9397 
9398 static inline __ATTRS_o_ai vector signed short
9399 vec_cmpne_or_0_idx(vector signed short __a, vector signed short __b) {
9400  return (vector signed short)
9401  __builtin_s390_vfenezh((vector unsigned short)__a,
9402  (vector unsigned short)__b);
9403 }
9404 
9405 static inline __ATTRS_o_ai vector unsigned short
9406 vec_cmpne_or_0_idx(vector bool short __a, vector bool short __b) {
9407  return __builtin_s390_vfenezh((vector unsigned short)__a,
9408  (vector unsigned short)__b);
9409 }
9410 
9411 static inline __ATTRS_o_ai vector unsigned short
9412 vec_cmpne_or_0_idx(vector unsigned short __a, vector unsigned short __b) {
9413  return __builtin_s390_vfenezh(__a, __b);
9414 }
9415 
9416 static inline __ATTRS_o_ai vector signed int
9417 vec_cmpne_or_0_idx(vector signed int __a, vector signed int __b) {
9418  return (vector signed int)
9419  __builtin_s390_vfenezf((vector unsigned int)__a,
9420  (vector unsigned int)__b);
9421 }
9422 
9423 static inline __ATTRS_o_ai vector unsigned int
9424 vec_cmpne_or_0_idx(vector bool int __a, vector bool int __b) {
9425  return __builtin_s390_vfenezf((vector unsigned int)__a,
9426  (vector unsigned int)__b);
9427 }
9428 
9429 static inline __ATTRS_o_ai vector unsigned int
9430 vec_cmpne_or_0_idx(vector unsigned int __a, vector unsigned int __b) {
9431  return __builtin_s390_vfenezf(__a, __b);
9432 }
9433 
9434 /*-- vec_cmpne_or_0_idx_cc --------------------------------------------------*/
9435 
9436 static inline __ATTRS_o_ai vector signed char
9437 vec_cmpne_or_0_idx_cc(vector signed char __a, vector signed char __b,
9438  int *__cc) {
9439  return (vector signed char)
9440  __builtin_s390_vfenezbs((vector unsigned char)__a,
9441  (vector unsigned char)__b, __cc);
9442 }
9443 
9444 static inline __ATTRS_o_ai vector unsigned char
9445 vec_cmpne_or_0_idx_cc(vector bool char __a, vector bool char __b, int *__cc) {
9446  return __builtin_s390_vfenezbs((vector unsigned char)__a,
9447  (vector unsigned char)__b, __cc);
9448 }
9449 
9450 static inline __ATTRS_o_ai vector unsigned char
9451 vec_cmpne_or_0_idx_cc(vector unsigned char __a, vector unsigned char __b,
9452  int *__cc) {
9453  return __builtin_s390_vfenezbs(__a, __b, __cc);
9454 }
9455 
9456 static inline __ATTRS_o_ai vector signed short
9457 vec_cmpne_or_0_idx_cc(vector signed short __a, vector signed short __b,
9458  int *__cc) {
9459  return (vector signed short)
9460  __builtin_s390_vfenezhs((vector unsigned short)__a,
9461  (vector unsigned short)__b, __cc);
9462 }
9463 
9464 static inline __ATTRS_o_ai vector unsigned short
9465 vec_cmpne_or_0_idx_cc(vector bool short __a, vector bool short __b, int *__cc) {
9466  return __builtin_s390_vfenezhs((vector unsigned short)__a,
9467  (vector unsigned short)__b, __cc);
9468 }
9469 
9470 static inline __ATTRS_o_ai vector unsigned short
9471 vec_cmpne_or_0_idx_cc(vector unsigned short __a, vector unsigned short __b,
9472  int *__cc) {
9473  return __builtin_s390_vfenezhs(__a, __b, __cc);
9474 }
9475 
9476 static inline __ATTRS_o_ai vector signed int
9477 vec_cmpne_or_0_idx_cc(vector signed int __a, vector signed int __b, int *__cc) {
9478  return (vector signed int)
9479  __builtin_s390_vfenezfs((vector unsigned int)__a,
9480  (vector unsigned int)__b, __cc);
9481 }
9482 
9483 static inline __ATTRS_o_ai vector unsigned int
9484 vec_cmpne_or_0_idx_cc(vector bool int __a, vector bool int __b, int *__cc) {
9485  return __builtin_s390_vfenezfs((vector unsigned int)__a,
9486  (vector unsigned int)__b, __cc);
9487 }
9488 
9489 static inline __ATTRS_o_ai vector unsigned int
9490 vec_cmpne_or_0_idx_cc(vector unsigned int __a, vector unsigned int __b,
9491  int *__cc) {
9492  return __builtin_s390_vfenezfs(__a, __b, __cc);
9493 }
9494 
9495 /*-- vec_cmprg --------------------------------------------------------------*/
9496 
9497 static inline __ATTRS_o_ai vector bool char
9498 vec_cmprg(vector unsigned char __a, vector unsigned char __b,
9499  vector unsigned char __c) {
9500  return (vector bool char)__builtin_s390_vstrcb(__a, __b, __c, 4);
9501 }
9502 
9503 static inline __ATTRS_o_ai vector bool short
9504 vec_cmprg(vector unsigned short __a, vector unsigned short __b,
9505  vector unsigned short __c) {
9506  return (vector bool short)__builtin_s390_vstrch(__a, __b, __c, 4);
9507 }
9508 
9509 static inline __ATTRS_o_ai vector bool int
9510 vec_cmprg(vector unsigned int __a, vector unsigned int __b,
9511  vector unsigned int __c) {
9512  return (vector bool int)__builtin_s390_vstrcf(__a, __b, __c, 4);
9513 }
9514 
9515 /*-- vec_cmprg_cc -----------------------------------------------------------*/
9516 
9517 static inline __ATTRS_o_ai vector bool char
9518 vec_cmprg_cc(vector unsigned char __a, vector unsigned char __b,
9519  vector unsigned char __c, int *__cc) {
9520  return (vector bool char)__builtin_s390_vstrcbs(__a, __b, __c, 4, __cc);
9521 }
9522 
9523 static inline __ATTRS_o_ai vector bool short
9524 vec_cmprg_cc(vector unsigned short __a, vector unsigned short __b,
9525  vector unsigned short __c, int *__cc) {
9526  return (vector bool short)__builtin_s390_vstrchs(__a, __b, __c, 4, __cc);
9527 }
9528 
9529 static inline __ATTRS_o_ai vector bool int
9530 vec_cmprg_cc(vector unsigned int __a, vector unsigned int __b,
9531  vector unsigned int __c, int *__cc) {
9532  return (vector bool int)__builtin_s390_vstrcfs(__a, __b, __c, 4, __cc);
9533 }
9534 
9535 /*-- vec_cmprg_idx ----------------------------------------------------------*/
9536 
9537 static inline __ATTRS_o_ai vector unsigned char
9538 vec_cmprg_idx(vector unsigned char __a, vector unsigned char __b,
9539  vector unsigned char __c) {
9540  return __builtin_s390_vstrcb(__a, __b, __c, 0);
9541 }
9542 
9543 static inline __ATTRS_o_ai vector unsigned short
9544 vec_cmprg_idx(vector unsigned short __a, vector unsigned short __b,
9545  vector unsigned short __c) {
9546  return __builtin_s390_vstrch(__a, __b, __c, 0);
9547 }
9548 
9549 static inline __ATTRS_o_ai vector unsigned int
9550 vec_cmprg_idx(vector unsigned int __a, vector unsigned int __b,
9551  vector unsigned int __c) {
9552  return __builtin_s390_vstrcf(__a, __b, __c, 0);
9553 }
9554 
9555 /*-- vec_cmprg_idx_cc -------------------------------------------------------*/
9556 
9557 static inline __ATTRS_o_ai vector unsigned char
9558 vec_cmprg_idx_cc(vector unsigned char __a, vector unsigned char __b,
9559  vector unsigned char __c, int *__cc) {
9560  return __builtin_s390_vstrcbs(__a, __b, __c, 0, __cc);
9561 }
9562 
9563 static inline __ATTRS_o_ai vector unsigned short
9564 vec_cmprg_idx_cc(vector unsigned short __a, vector unsigned short __b,
9565  vector unsigned short __c, int *__cc) {
9566  return __builtin_s390_vstrchs(__a, __b, __c, 0, __cc);
9567 }
9568 
9569 static inline __ATTRS_o_ai vector unsigned int
9570 vec_cmprg_idx_cc(vector unsigned int __a, vector unsigned int __b,
9571  vector unsigned int __c, int *__cc) {
9572  return __builtin_s390_vstrcfs(__a, __b, __c, 0, __cc);
9573 }
9574 
9575 /*-- vec_cmprg_or_0_idx -----------------------------------------------------*/
9576 
9577 static inline __ATTRS_o_ai vector unsigned char
9578 vec_cmprg_or_0_idx(vector unsigned char __a, vector unsigned char __b,
9579  vector unsigned char __c) {
9580  return __builtin_s390_vstrczb(__a, __b, __c, 0);
9581 }
9582 
9583 static inline __ATTRS_o_ai vector unsigned short
9584 vec_cmprg_or_0_idx(vector unsigned short __a, vector unsigned short __b,
9585  vector unsigned short __c) {
9586  return __builtin_s390_vstrczh(__a, __b, __c, 0);
9587 }
9588 
9589 static inline __ATTRS_o_ai vector unsigned int
9590 vec_cmprg_or_0_idx(vector unsigned int __a, vector unsigned int __b,
9591  vector unsigned int __c) {
9592  return __builtin_s390_vstrczf(__a, __b, __c, 0);
9593 }
9594 
9595 /*-- vec_cmprg_or_0_idx_cc --------------------------------------------------*/
9596 
9597 static inline __ATTRS_o_ai vector unsigned char
9598 vec_cmprg_or_0_idx_cc(vector unsigned char __a, vector unsigned char __b,
9599  vector unsigned char __c, int *__cc) {
9600  return __builtin_s390_vstrczbs(__a, __b, __c, 0, __cc);
9601 }
9602 
9603 static inline __ATTRS_o_ai vector unsigned short
9604 vec_cmprg_or_0_idx_cc(vector unsigned short __a, vector unsigned short __b,
9605  vector unsigned short __c, int *__cc) {
9606  return __builtin_s390_vstrczhs(__a, __b, __c, 0, __cc);
9607 }
9608 
9609 static inline __ATTRS_o_ai vector unsigned int
9610 vec_cmprg_or_0_idx_cc(vector unsigned int __a, vector unsigned int __b,
9611  vector unsigned int __c, int *__cc) {
9612  return __builtin_s390_vstrczfs(__a, __b, __c, 0, __cc);
9613 }
9614 
9615 /*-- vec_cmpnrg -------------------------------------------------------------*/
9616 
9617 static inline __ATTRS_o_ai vector bool char
9618 vec_cmpnrg(vector unsigned char __a, vector unsigned char __b,
9619  vector unsigned char __c) {
9620  return (vector bool char)__builtin_s390_vstrcb(__a, __b, __c, 12);
9621 }
9622 
9623 static inline __ATTRS_o_ai vector bool short
9624 vec_cmpnrg(vector unsigned short __a, vector unsigned short __b,
9625  vector unsigned short __c) {
9626  return (vector bool short)__builtin_s390_vstrch(__a, __b, __c, 12);
9627 }
9628 
9629 static inline __ATTRS_o_ai vector bool int
9630 vec_cmpnrg(vector unsigned int __a, vector unsigned int __b,
9631  vector unsigned int __c) {
9632  return (vector bool int)__builtin_s390_vstrcf(__a, __b, __c, 12);
9633 }
9634 
9635 /*-- vec_cmpnrg_cc ----------------------------------------------------------*/
9636 
9637 static inline __ATTRS_o_ai vector bool char
9638 vec_cmpnrg_cc(vector unsigned char __a, vector unsigned char __b,
9639  vector unsigned char __c, int *__cc) {
9640  return (vector bool char)__builtin_s390_vstrcbs(__a, __b, __c, 12, __cc);
9641 }
9642 
9643 static inline __ATTRS_o_ai vector bool short
9644 vec_cmpnrg_cc(vector unsigned short __a, vector unsigned short __b,
9645  vector unsigned short __c, int *__cc) {
9646  return (vector bool short)__builtin_s390_vstrchs(__a, __b, __c, 12, __cc);
9647 }
9648 
9649 static inline __ATTRS_o_ai vector bool int
9650 vec_cmpnrg_cc(vector unsigned int __a, vector unsigned int __b,
9651  vector unsigned int __c, int *__cc) {
9652  return (vector bool int)__builtin_s390_vstrcfs(__a, __b, __c, 12, __cc);
9653 }
9654 
9655 /*-- vec_cmpnrg_idx ---------------------------------------------------------*/
9656 
9657 static inline __ATTRS_o_ai vector unsigned char
9658 vec_cmpnrg_idx(vector unsigned char __a, vector unsigned char __b,
9659  vector unsigned char __c) {
9660  return __builtin_s390_vstrcb(__a, __b, __c, 8);
9661 }
9662 
9663 static inline __ATTRS_o_ai vector unsigned short
9664 vec_cmpnrg_idx(vector unsigned short __a, vector unsigned short __b,
9665  vector unsigned short __c) {
9666  return __builtin_s390_vstrch(__a, __b, __c, 8);
9667 }
9668 
9669 static inline __ATTRS_o_ai vector unsigned int
9670 vec_cmpnrg_idx(vector unsigned int __a, vector unsigned int __b,
9671  vector unsigned int __c) {
9672  return __builtin_s390_vstrcf(__a, __b, __c, 8);
9673 }
9674 
9675 /*-- vec_cmpnrg_idx_cc ------------------------------------------------------*/
9676 
9677 static inline __ATTRS_o_ai vector unsigned char
9678 vec_cmpnrg_idx_cc(vector unsigned char __a, vector unsigned char __b,
9679  vector unsigned char __c, int *__cc) {
9680  return __builtin_s390_vstrcbs(__a, __b, __c, 8, __cc);
9681 }
9682 
9683 static inline __ATTRS_o_ai vector unsigned short
9684 vec_cmpnrg_idx_cc(vector unsigned short __a, vector unsigned short __b,
9685  vector unsigned short __c, int *__cc) {
9686  return __builtin_s390_vstrchs(__a, __b, __c, 8, __cc);
9687 }
9688 
9689 static inline __ATTRS_o_ai vector unsigned int
9690 vec_cmpnrg_idx_cc(vector unsigned int __a, vector unsigned int __b,
9691  vector unsigned int __c, int *__cc) {
9692  return __builtin_s390_vstrcfs(__a, __b, __c, 8, __cc);
9693 }
9694 
9695 /*-- vec_cmpnrg_or_0_idx ----------------------------------------------------*/
9696 
9697 static inline __ATTRS_o_ai vector unsigned char
9698 vec_cmpnrg_or_0_idx(vector unsigned char __a, vector unsigned char __b,
9699  vector unsigned char __c) {
9700  return __builtin_s390_vstrczb(__a, __b, __c, 8);
9701 }
9702 
9703 static inline __ATTRS_o_ai vector unsigned short
9704 vec_cmpnrg_or_0_idx(vector unsigned short __a, vector unsigned short __b,
9705  vector unsigned short __c) {
9706  return __builtin_s390_vstrczh(__a, __b, __c, 8);
9707 }
9708 
9709 static inline __ATTRS_o_ai vector unsigned int
9710 vec_cmpnrg_or_0_idx(vector unsigned int __a, vector unsigned int __b,
9711  vector unsigned int __c) {
9712  return __builtin_s390_vstrczf(__a, __b, __c, 8);
9713 }
9714 
9715 /*-- vec_cmpnrg_or_0_idx_cc -------------------------------------------------*/
9716 
9717 static inline __ATTRS_o_ai vector unsigned char
9718 vec_cmpnrg_or_0_idx_cc(vector unsigned char __a, vector unsigned char __b,
9719  vector unsigned char __c, int *__cc) {
9720  return __builtin_s390_vstrczbs(__a, __b, __c, 8, __cc);
9721 }
9722 
9723 static inline __ATTRS_o_ai vector unsigned short
9724 vec_cmpnrg_or_0_idx_cc(vector unsigned short __a, vector unsigned short __b,
9725  vector unsigned short __c, int *__cc) {
9726  return __builtin_s390_vstrczhs(__a, __b, __c, 8, __cc);
9727 }
9728 
9729 static inline __ATTRS_o_ai vector unsigned int
9730 vec_cmpnrg_or_0_idx_cc(vector unsigned int __a, vector unsigned int __b,
9731  vector unsigned int __c, int *__cc) {
9732  return __builtin_s390_vstrczfs(__a, __b, __c, 8, __cc);
9733 }
9734 
9735 /*-- vec_find_any_eq --------------------------------------------------------*/
9736 
9737 static inline __ATTRS_o_ai vector bool char
9738 vec_find_any_eq(vector signed char __a, vector signed char __b) {
9739  return (vector bool char)
9740  __builtin_s390_vfaeb((vector unsigned char)__a,
9741  (vector unsigned char)__b, 4);
9742 }
9743 
9744 static inline __ATTRS_o_ai vector bool char
9745 vec_find_any_eq(vector bool char __a, vector bool char __b) {
9746  return (vector bool char)
9747  __builtin_s390_vfaeb((vector unsigned char)__a,
9748  (vector unsigned char)__b, 4);
9749 }
9750 
9751 static inline __ATTRS_o_ai vector bool char
9752 vec_find_any_eq(vector unsigned char __a, vector unsigned char __b) {
9753  return (vector bool char)__builtin_s390_vfaeb(__a, __b, 4);
9754 }
9755 
9756 static inline __ATTRS_o_ai vector bool short
9757 vec_find_any_eq(vector signed short __a, vector signed short __b) {
9758  return (vector bool short)
9759  __builtin_s390_vfaeh((vector unsigned short)__a,
9760  (vector unsigned short)__b, 4);
9761 }
9762 
9763 static inline __ATTRS_o_ai vector bool short
9764 vec_find_any_eq(vector bool short __a, vector bool short __b) {
9765  return (vector bool short)
9766  __builtin_s390_vfaeh((vector unsigned short)__a,
9767  (vector unsigned short)__b, 4);
9768 }
9769 
9770 static inline __ATTRS_o_ai vector bool short
9771 vec_find_any_eq(vector unsigned short __a, vector unsigned short __b) {
9772  return (vector bool short)__builtin_s390_vfaeh(__a, __b, 4);
9773 }
9774 
9775 static inline __ATTRS_o_ai vector bool int
9776 vec_find_any_eq(vector signed int __a, vector signed int __b) {
9777  return (vector bool int)
9778  __builtin_s390_vfaef((vector unsigned int)__a,
9779  (vector unsigned int)__b, 4);
9780 }
9781 
9782 static inline __ATTRS_o_ai vector bool int
9783 vec_find_any_eq(vector bool int __a, vector bool int __b) {
9784  return (vector bool int)
9785  __builtin_s390_vfaef((vector unsigned int)__a,
9786  (vector unsigned int)__b, 4);
9787 }
9788 
9789 static inline __ATTRS_o_ai vector bool int
9790 vec_find_any_eq(vector unsigned int __a, vector unsigned int __b) {
9791  return (vector bool int)__builtin_s390_vfaef(__a, __b, 4);
9792 }
9793 
9794 /*-- vec_find_any_eq_cc -----------------------------------------------------*/
9795 
9796 static inline __ATTRS_o_ai vector bool char
9797 vec_find_any_eq_cc(vector signed char __a, vector signed char __b, int *__cc) {
9798  return (vector bool char)
9799  __builtin_s390_vfaebs((vector unsigned char)__a,
9800  (vector unsigned char)__b, 4, __cc);
9801 }
9802 
9803 static inline __ATTRS_o_ai vector bool char
9804 vec_find_any_eq_cc(vector bool char __a, vector bool char __b, int *__cc) {
9805  return (vector bool char)
9806  __builtin_s390_vfaebs((vector unsigned char)__a,
9807  (vector unsigned char)__b, 4, __cc);
9808 }
9809 
9810 static inline __ATTRS_o_ai vector bool char
9811 vec_find_any_eq_cc(vector unsigned char __a, vector unsigned char __b,
9812  int *__cc) {
9813  return (vector bool char)__builtin_s390_vfaebs(__a, __b, 4, __cc);
9814 }
9815 
9816 static inline __ATTRS_o_ai vector bool short
9817 vec_find_any_eq_cc(vector signed short __a, vector signed short __b,
9818  int *__cc) {
9819  return (vector bool short)
9820  __builtin_s390_vfaehs((vector unsigned short)__a,
9821  (vector unsigned short)__b, 4, __cc);
9822 }
9823 
9824 static inline __ATTRS_o_ai vector bool short
9825 vec_find_any_eq_cc(vector bool short __a, vector bool short __b, int *__cc) {
9826  return (vector bool short)
9827  __builtin_s390_vfaehs((vector unsigned short)__a,
9828  (vector unsigned short)__b, 4, __cc);
9829 }
9830 
9831 static inline __ATTRS_o_ai vector bool short
9832 vec_find_any_eq_cc(vector unsigned short __a, vector unsigned short __b,
9833  int *__cc) {
9834  return (vector bool short)__builtin_s390_vfaehs(__a, __b, 4, __cc);
9835 }
9836 
9837 static inline __ATTRS_o_ai vector bool int
9838 vec_find_any_eq_cc(vector signed int __a, vector signed int __b, int *__cc) {
9839  return (vector bool int)
9840  __builtin_s390_vfaefs((vector unsigned int)__a,
9841  (vector unsigned int)__b, 4, __cc);
9842 }
9843 
9844 static inline __ATTRS_o_ai vector bool int
9845 vec_find_any_eq_cc(vector bool int __a, vector bool int __b, int *__cc) {
9846  return (vector bool int)
9847  __builtin_s390_vfaefs((vector unsigned int)__a,
9848  (vector unsigned int)__b, 4, __cc);
9849 }
9850 
9851 static inline __ATTRS_o_ai vector bool int
9852 vec_find_any_eq_cc(vector unsigned int __a, vector unsigned int __b,
9853  int *__cc) {
9854  return (vector bool int)__builtin_s390_vfaefs(__a, __b, 4, __cc);
9855 }
9856 
9857 /*-- vec_find_any_eq_idx ----------------------------------------------------*/
9858 
9859 static inline __ATTRS_o_ai vector signed char
9860 vec_find_any_eq_idx(vector signed char __a, vector signed char __b) {
9861  return (vector signed char)
9862  __builtin_s390_vfaeb((vector unsigned char)__a,
9863  (vector unsigned char)__b, 0);
9864 }
9865 
9866 static inline __ATTRS_o_ai vector unsigned char
9867 vec_find_any_eq_idx(vector bool char __a, vector bool char __b) {
9868  return __builtin_s390_vfaeb((vector unsigned char)__a,
9869  (vector unsigned char)__b, 0);
9870 }
9871 
9872 static inline __ATTRS_o_ai vector unsigned char
9873 vec_find_any_eq_idx(vector unsigned char __a, vector unsigned char __b) {
9874  return __builtin_s390_vfaeb(__a, __b, 0);
9875 }
9876 
9877 static inline __ATTRS_o_ai vector signed short
9878 vec_find_any_eq_idx(vector signed short __a, vector signed short __b) {
9879  return (vector signed short)
9880  __builtin_s390_vfaeh((vector unsigned short)__a,
9881  (vector unsigned short)__b, 0);
9882 }
9883 
9884 static inline __ATTRS_o_ai vector unsigned short
9885 vec_find_any_eq_idx(vector bool short __a, vector bool short __b) {
9886  return __builtin_s390_vfaeh((vector unsigned short)__a,
9887  (vector unsigned short)__b, 0);
9888 }
9889 
9890 static inline __ATTRS_o_ai vector unsigned short
9891 vec_find_any_eq_idx(vector unsigned short __a, vector unsigned short __b) {
9892  return __builtin_s390_vfaeh(__a, __b, 0);
9893 }
9894 
9895 static inline __ATTRS_o_ai vector signed int
9896 vec_find_any_eq_idx(vector signed int __a, vector signed int __b) {
9897  return (vector signed int)
9898  __builtin_s390_vfaef((vector unsigned int)__a,
9899  (vector unsigned int)__b, 0);
9900 }
9901 
9902 static inline __ATTRS_o_ai vector unsigned int
9903 vec_find_any_eq_idx(vector bool int __a, vector bool int __b) {
9904  return __builtin_s390_vfaef((vector unsigned int)__a,
9905  (vector unsigned int)__b, 0);
9906 }
9907 
9908 static inline __ATTRS_o_ai vector unsigned int
9909 vec_find_any_eq_idx(vector unsigned int __a, vector unsigned int __b) {
9910  return __builtin_s390_vfaef(__a, __b, 0);
9911 }
9912 
9913 /*-- vec_find_any_eq_idx_cc -------------------------------------------------*/
9914 
9915 static inline __ATTRS_o_ai vector signed char
9916 vec_find_any_eq_idx_cc(vector signed char __a, vector signed char __b,
9917  int *__cc) {
9918  return (vector signed char)
9919  __builtin_s390_vfaebs((vector unsigned char)__a,
9920  (vector unsigned char)__b, 0, __cc);
9921 }
9922 
9923 static inline __ATTRS_o_ai vector unsigned char
9924 vec_find_any_eq_idx_cc(vector bool char __a, vector bool char __b, int *__cc) {
9925  return __builtin_s390_vfaebs((vector unsigned char)__a,
9926  (vector unsigned char)__b, 0, __cc);
9927 }
9928 
9929 static inline __ATTRS_o_ai vector unsigned char
9930 vec_find_any_eq_idx_cc(vector unsigned char __a, vector unsigned char __b,
9931  int *__cc) {
9932  return __builtin_s390_vfaebs(__a, __b, 0, __cc);
9933 }
9934 
9935 static inline __ATTRS_o_ai vector signed short
9936 vec_find_any_eq_idx_cc(vector signed short __a, vector signed short __b,
9937  int *__cc) {
9938  return (vector signed short)
9939  __builtin_s390_vfaehs((vector unsigned short)__a,
9940  (vector unsigned short)__b, 0, __cc);
9941 }
9942 
9943 static inline __ATTRS_o_ai vector unsigned short
9944 vec_find_any_eq_idx_cc(vector bool short __a, vector bool short __b,
9945  int *__cc) {
9946  return __builtin_s390_vfaehs((vector unsigned short)__a,
9947  (vector unsigned short)__b, 0, __cc);
9948 }
9949 
9950 static inline __ATTRS_o_ai vector unsigned short
9951 vec_find_any_eq_idx_cc(vector unsigned short __a, vector unsigned short __b,
9952  int *__cc) {
9953  return __builtin_s390_vfaehs(__a, __b, 0, __cc);
9954 }
9955 
9956 static inline __ATTRS_o_ai vector signed int
9957 vec_find_any_eq_idx_cc(vector signed int __a, vector signed int __b,
9958  int *__cc) {
9959  return (vector signed int)
9960  __builtin_s390_vfaefs((vector unsigned int)__a,
9961  (vector unsigned int)__b, 0, __cc);
9962 }
9963 
9964 static inline __ATTRS_o_ai vector unsigned int
9965 vec_find_any_eq_idx_cc(vector bool int __a, vector bool int __b, int *__cc) {
9966  return __builtin_s390_vfaefs((vector unsigned int)__a,
9967  (vector unsigned int)__b, 0, __cc);
9968 }
9969 
9970 static inline __ATTRS_o_ai vector unsigned int
9971 vec_find_any_eq_idx_cc(vector unsigned int __a, vector unsigned int __b,
9972  int *__cc) {
9973  return __builtin_s390_vfaefs(__a, __b, 0, __cc);
9974 }
9975 
9976 /*-- vec_find_any_eq_or_0_idx -----------------------------------------------*/
9977 
9978 static inline __ATTRS_o_ai vector signed char
9979 vec_find_any_eq_or_0_idx(vector signed char __a, vector signed char __b) {
9980  return (vector signed char)
9981  __builtin_s390_vfaezb((vector unsigned char)__a,
9982  (vector unsigned char)__b, 0);
9983 }
9984 
9985 static inline __ATTRS_o_ai vector unsigned char
9986 vec_find_any_eq_or_0_idx(vector bool char __a, vector bool char __b) {
9987  return __builtin_s390_vfaezb((vector unsigned char)__a,
9988  (vector unsigned char)__b, 0);
9989 }
9990 
9991 static inline __ATTRS_o_ai vector unsigned char
9992 vec_find_any_eq_or_0_idx(vector unsigned char __a, vector unsigned char __b) {
9993  return __builtin_s390_vfaezb(__a, __b, 0);
9994 }
9995 
9996 static inline __ATTRS_o_ai vector signed short
9997 vec_find_any_eq_or_0_idx(vector signed short __a, vector signed short __b) {
9998  return (vector signed short)
9999  __builtin_s390_vfaezh((vector unsigned short)__a,
10000  (vector unsigned short)__b, 0);
10001 }
10002 
10003 static inline __ATTRS_o_ai vector unsigned short
10004 vec_find_any_eq_or_0_idx(vector bool short __a, vector bool short __b) {
10005  return __builtin_s390_vfaezh((vector unsigned short)__a,
10006  (vector unsigned short)__b, 0);
10007 }
10008 
10009 static inline __ATTRS_o_ai vector unsigned short
10010 vec_find_any_eq_or_0_idx(vector unsigned short __a, vector unsigned short __b) {
10011  return __builtin_s390_vfaezh(__a, __b, 0);
10012 }
10013 
10014 static inline __ATTRS_o_ai vector signed int
10015 vec_find_any_eq_or_0_idx(vector signed int __a, vector signed int __b) {
10016  return (vector signed int)
10017  __builtin_s390_vfaezf((vector unsigned int)__a,
10018  (vector unsigned int)__b, 0);
10019 }
10020 
10021 static inline __ATTRS_o_ai vector unsigned int
10022 vec_find_any_eq_or_0_idx(vector bool int __a, vector bool int __b) {
10023  return __builtin_s390_vfaezf((vector unsigned int)__a,
10024  (vector unsigned int)__b, 0);
10025 }
10026 
10027 static inline __ATTRS_o_ai vector unsigned int
10028 vec_find_any_eq_or_0_idx(vector unsigned int __a, vector unsigned int __b) {
10029  return __builtin_s390_vfaezf(__a, __b, 0);
10030 }
10031 
10032 /*-- vec_find_any_eq_or_0_idx_cc --------------------------------------------*/
10033 
10034 static inline __ATTRS_o_ai vector signed char
10035 vec_find_any_eq_or_0_idx_cc(vector signed char __a, vector signed char __b,
10036  int *__cc) {
10037  return (vector signed char)
10038  __builtin_s390_vfaezbs((vector unsigned char)__a,
10039  (vector unsigned char)__b, 0, __cc);
10040 }
10041 
10042 static inline __ATTRS_o_ai vector unsigned char
10043 vec_find_any_eq_or_0_idx_cc(vector bool char __a, vector bool char __b,
10044  int *__cc) {
10045  return __builtin_s390_vfaezbs((vector unsigned char)__a,
10046  (vector unsigned char)__b, 0, __cc);
10047 }
10048 
10049 static inline __ATTRS_o_ai vector unsigned char
10050 vec_find_any_eq_or_0_idx_cc(vector unsigned char __a, vector unsigned char __b,
10051  int *__cc) {
10052  return __builtin_s390_vfaezbs(__a, __b, 0, __cc);
10053 }
10054 
10055 static inline __ATTRS_o_ai vector signed short
10056 vec_find_any_eq_or_0_idx_cc(vector signed short __a, vector signed short __b,
10057  int *__cc) {
10058  return (vector signed short)
10059  __builtin_s390_vfaezhs((vector unsigned short)__a,
10060  (vector unsigned short)__b, 0, __cc);
10061 }
10062 
10063 static inline __ATTRS_o_ai vector unsigned short
10064 vec_find_any_eq_or_0_idx_cc(vector bool short __a, vector bool short __b,
10065  int *__cc) {
10066  return __builtin_s390_vfaezhs((vector unsigned short)__a,
10067  (vector unsigned short)__b, 0, __cc);
10068 }
10069 
10070 static inline __ATTRS_o_ai vector unsigned short
10071 vec_find_any_eq_or_0_idx_cc(vector unsigned short __a,
10072  vector unsigned short __b, int *__cc) {
10073  return __builtin_s390_vfaezhs(__a, __b, 0, __cc);
10074 }
10075 
10076 static inline __ATTRS_o_ai vector signed int
10077 vec_find_any_eq_or_0_idx_cc(vector signed int __a, vector signed int __b,
10078  int *__cc) {
10079  return (vector signed int)
10080  __builtin_s390_vfaezfs((vector unsigned int)__a,
10081  (vector unsigned int)__b, 0, __cc);
10082 }
10083 
10084 static inline __ATTRS_o_ai vector unsigned int
10085 vec_find_any_eq_or_0_idx_cc(vector bool int __a, vector bool int __b,
10086  int *__cc) {
10087  return __builtin_s390_vfaezfs((vector unsigned int)__a,
10088  (vector unsigned int)__b, 0, __cc);
10089 }
10090 
10091 static inline __ATTRS_o_ai vector unsigned int
10092 vec_find_any_eq_or_0_idx_cc(vector unsigned int __a, vector unsigned int __b,
10093  int *__cc) {
10094  return __builtin_s390_vfaezfs(__a, __b, 0, __cc);
10095 }
10096 
10097 /*-- vec_find_any_ne --------------------------------------------------------*/
10098 
10099 static inline __ATTRS_o_ai vector bool char
10100 vec_find_any_ne(vector signed char __a, vector signed char __b) {
10101  return (vector bool char)
10102  __builtin_s390_vfaeb((vector unsigned char)__a,
10103  (vector unsigned char)__b, 12);
10104 }
10105 
10106 static inline __ATTRS_o_ai vector bool char
10107 vec_find_any_ne(vector bool char __a, vector bool char __b) {
10108  return (vector bool char)
10109  __builtin_s390_vfaeb((vector unsigned char)__a,
10110  (vector unsigned char)__b, 12);
10111 }
10112 
10113 static inline __ATTRS_o_ai vector bool char
10114 vec_find_any_ne(vector unsigned char __a, vector unsigned char __b) {
10115  return (vector bool char)__builtin_s390_vfaeb(__a, __b, 12);
10116 }
10117 
10118 static inline __ATTRS_o_ai vector bool short
10119 vec_find_any_ne(vector signed short __a, vector signed short __b) {
10120  return (vector bool short)
10121  __builtin_s390_vfaeh((vector unsigned short)__a,
10122  (vector unsigned short)__b, 12);
10123 }
10124 
10125 static inline __ATTRS_o_ai vector bool short
10126 vec_find_any_ne(vector bool short __a, vector bool short __b) {
10127  return (vector bool short)
10128  __builtin_s390_vfaeh((vector unsigned short)__a,
10129  (vector unsigned short)__b, 12);
10130 }
10131 
10132 static inline __ATTRS_o_ai vector bool short
10133 vec_find_any_ne(vector unsigned short __a, vector unsigned short __b) {
10134  return (vector bool short)__builtin_s390_vfaeh(__a, __b, 12);
10135 }
10136 
10137 static inline __ATTRS_o_ai vector bool int
10138 vec_find_any_ne(vector signed int __a, vector signed int __b) {
10139  return (vector bool int)
10140  __builtin_s390_vfaef((vector unsigned int)__a,
10141  (vector unsigned int)__b, 12);
10142 }
10143 
10144 static inline __ATTRS_o_ai vector bool int
10145 vec_find_any_ne(vector bool int __a, vector bool int __b) {
10146  return (vector bool int)
10147  __builtin_s390_vfaef((vector unsigned int)__a,
10148  (vector unsigned int)__b, 12);
10149 }
10150 
10151 static inline __ATTRS_o_ai vector bool int
10152 vec_find_any_ne(vector unsigned int __a, vector unsigned int __b) {
10153  return (vector bool int)__builtin_s390_vfaef(__a, __b, 12);
10154 }
10155 
10156 /*-- vec_find_any_ne_cc -----------------------------------------------------*/
10157 
10158 static inline __ATTRS_o_ai vector bool char
10159 vec_find_any_ne_cc(vector signed char __a, vector signed char __b, int *__cc) {
10160  return (vector bool char)
10161  __builtin_s390_vfaebs((vector unsigned char)__a,
10162  (vector unsigned char)__b, 12, __cc);
10163 }
10164 
10165 static inline __ATTRS_o_ai vector bool char
10166 vec_find_any_ne_cc(vector bool char __a, vector bool char __b, int *__cc) {
10167  return (vector bool char)
10168  __builtin_s390_vfaebs((vector unsigned char)__a,
10169  (vector unsigned char)__b, 12, __cc);
10170 }
10171 
10172 static inline __ATTRS_o_ai vector bool char
10173 vec_find_any_ne_cc(vector unsigned char __a, vector unsigned char __b,
10174  int *__cc) {
10175  return (vector bool char)__builtin_s390_vfaebs(__a, __b, 12, __cc);
10176 }
10177 
10178 static inline __ATTRS_o_ai vector bool short
10179 vec_find_any_ne_cc(vector signed short __a, vector signed short __b,
10180  int *__cc) {
10181  return (vector bool short)
10182  __builtin_s390_vfaehs((vector unsigned short)__a,
10183  (vector unsigned short)__b, 12, __cc);
10184 }
10185 
10186 static inline __ATTRS_o_ai vector bool short
10187 vec_find_any_ne_cc(vector bool short __a, vector bool short __b, int *__cc) {
10188  return (vector bool short)
10189  __builtin_s390_vfaehs((vector unsigned short)__a,
10190  (vector unsigned short)__b, 12, __cc);
10191 }
10192 
10193 static inline __ATTRS_o_ai vector bool short
10194 vec_find_any_ne_cc(vector unsigned short __a, vector unsigned short __b,
10195  int *__cc) {
10196  return (vector bool short)__builtin_s390_vfaehs(__a, __b, 12, __cc);
10197 }
10198 
10199 static inline __ATTRS_o_ai vector bool int
10200 vec_find_any_ne_cc(vector signed int __a, vector signed int __b, int *__cc) {
10201  return (vector bool int)
10202  __builtin_s390_vfaefs((vector unsigned int)__a,
10203  (vector unsigned int)__b, 12, __cc);
10204 }
10205 
10206 static inline __ATTRS_o_ai vector bool int
10207 vec_find_any_ne_cc(vector bool int __a, vector bool int __b, int *__cc) {
10208  return (vector bool int)
10209  __builtin_s390_vfaefs((vector unsigned int)__a,
10210  (vector unsigned int)__b, 12, __cc);
10211 }
10212 
10213 static inline __ATTRS_o_ai vector bool int
10214 vec_find_any_ne_cc(vector unsigned int __a, vector unsigned int __b,
10215  int *__cc) {
10216  return (vector bool int)__builtin_s390_vfaefs(__a, __b, 12, __cc);
10217 }
10218 
10219 /*-- vec_find_any_ne_idx ----------------------------------------------------*/
10220 
10221 static inline __ATTRS_o_ai vector signed char
10222 vec_find_any_ne_idx(vector signed char __a, vector signed char __b) {
10223  return (vector signed char)
10224  __builtin_s390_vfaeb((vector unsigned char)__a,
10225  (vector unsigned char)__b, 8);
10226 }
10227 
10228 static inline __ATTRS_o_ai vector unsigned char
10229 vec_find_any_ne_idx(vector bool char __a, vector bool char __b) {
10230  return __builtin_s390_vfaeb((vector unsigned char)__a,
10231  (vector unsigned char)__b, 8);
10232 }
10233 
10234 static inline __ATTRS_o_ai vector unsigned char
10235 vec_find_any_ne_idx(vector unsigned char __a, vector unsigned char __b) {
10236  return __builtin_s390_vfaeb(__a, __b, 8);
10237 }
10238 
10239 static inline __ATTRS_o_ai vector signed short
10240 vec_find_any_ne_idx(vector signed short __a, vector signed short __b) {
10241  return (vector signed short)
10242  __builtin_s390_vfaeh((vector unsigned short)__a,
10243  (vector unsigned short)__b, 8);
10244 }
10245 
10246 static inline __ATTRS_o_ai vector unsigned short
10247 vec_find_any_ne_idx(vector bool short __a, vector bool short __b) {
10248  return __builtin_s390_vfaeh((vector unsigned short)__a,
10249  (vector unsigned short)__b, 8);
10250 }
10251 
10252 static inline __ATTRS_o_ai vector unsigned short
10253 vec_find_any_ne_idx(vector unsigned short __a, vector unsigned short __b) {
10254  return __builtin_s390_vfaeh(__a, __b, 8);
10255 }
10256 
10257 static inline __ATTRS_o_ai vector signed int
10258 vec_find_any_ne_idx(vector signed int __a, vector signed int __b) {
10259  return (vector signed int)
10260  __builtin_s390_vfaef((vector unsigned int)__a,
10261  (vector unsigned int)__b, 8);
10262 }
10263 
10264 static inline __ATTRS_o_ai vector unsigned int
10265 vec_find_any_ne_idx(vector bool int __a, vector bool int __b) {
10266  return __builtin_s390_vfaef((vector unsigned int)__a,
10267  (vector unsigned int)__b, 8);
10268 }
10269 
10270 static inline __ATTRS_o_ai vector unsigned int
10271 vec_find_any_ne_idx(vector unsigned int __a, vector unsigned int __b) {
10272  return __builtin_s390_vfaef(__a, __b, 8);
10273 }
10274 
10275 /*-- vec_find_any_ne_idx_cc -------------------------------------------------*/
10276 
10277 static inline __ATTRS_o_ai vector signed char
10278 vec_find_any_ne_idx_cc(vector signed char __a, vector signed char __b,
10279  int *__cc) {
10280  return (vector signed char)
10281  __builtin_s390_vfaebs((vector unsigned char)__a,
10282  (vector unsigned char)__b, 8, __cc);
10283 }
10284 
10285 static inline __ATTRS_o_ai vector unsigned char
10286 vec_find_any_ne_idx_cc(vector bool char __a, vector bool char __b, int *__cc) {
10287  return __builtin_s390_vfaebs((vector unsigned char)__a,
10288  (vector unsigned char)__b, 8, __cc);
10289 }
10290 
10291 static inline __ATTRS_o_ai vector unsigned char
10292 vec_find_any_ne_idx_cc(vector unsigned char __a, vector unsigned char __b,
10293  int *__cc) {
10294  return __builtin_s390_vfaebs(__a, __b, 8, __cc);
10295 }
10296 
10297 static inline __ATTRS_o_ai vector signed short
10298 vec_find_any_ne_idx_cc(vector signed short __a, vector signed short __b,
10299  int *__cc) {
10300  return (vector signed short)
10301  __builtin_s390_vfaehs((vector unsigned short)__a,
10302  (vector unsigned short)__b, 8, __cc);
10303 }
10304 
10305 static inline __ATTRS_o_ai vector unsigned short
10306 vec_find_any_ne_idx_cc(vector bool short __a, vector bool short __b,
10307  int *__cc) {
10308  return __builtin_s390_vfaehs((vector unsigned short)__a,
10309  (vector unsigned short)__b, 8, __cc);
10310 }
10311 
10312 static inline __ATTRS_o_ai vector unsigned short
10313 vec_find_any_ne_idx_cc(vector unsigned short __a, vector unsigned short __b,
10314  int *__cc) {
10315  return __builtin_s390_vfaehs(__a, __b, 8, __cc);
10316 }
10317 
10318 static inline __ATTRS_o_ai vector signed int
10319 vec_find_any_ne_idx_cc(vector signed int __a, vector signed int __b,
10320  int *__cc) {
10321  return (vector signed int)
10322  __builtin_s390_vfaefs((vector unsigned int)__a,
10323  (vector unsigned int)__b, 8, __cc);
10324 }
10325 
10326 static inline __ATTRS_o_ai vector unsigned int
10327 vec_find_any_ne_idx_cc(vector bool int __a, vector bool int __b, int *__cc) {
10328  return __builtin_s390_vfaefs((vector unsigned int)__a,
10329  (vector unsigned int)__b, 8, __cc);
10330 }
10331 
10332 static inline __ATTRS_o_ai vector unsigned int
10333 vec_find_any_ne_idx_cc(vector unsigned int __a, vector unsigned int __b,
10334  int *__cc) {
10335  return __builtin_s390_vfaefs(__a, __b, 8, __cc);
10336 }
10337 
10338 /*-- vec_find_any_ne_or_0_idx -----------------------------------------------*/
10339 
10340 static inline __ATTRS_o_ai vector signed char
10341 vec_find_any_ne_or_0_idx(vector signed char __a, vector signed char __b) {
10342  return (vector signed char)
10343  __builtin_s390_vfaezb((vector unsigned char)__a,
10344  (vector unsigned char)__b, 8);
10345 }
10346 
10347 static inline __ATTRS_o_ai vector unsigned char
10348 vec_find_any_ne_or_0_idx(vector bool char __a, vector bool char __b) {
10349  return __builtin_s390_vfaezb((vector unsigned char)__a,
10350  (vector unsigned char)__b, 8);
10351 }
10352 
10353 static inline __ATTRS_o_ai vector unsigned char
10354 vec_find_any_ne_or_0_idx(vector unsigned char __a, vector unsigned char __b) {
10355  return __builtin_s390_vfaezb(__a, __b, 8);
10356 }
10357 
10358 static inline __ATTRS_o_ai vector signed short
10359 vec_find_any_ne_or_0_idx(vector signed short __a, vector signed short __b) {
10360  return (vector signed short)
10361  __builtin_s390_vfaezh((vector unsigned short)__a,
10362  (vector unsigned short)__b, 8);
10363 }
10364 
10365 static inline __ATTRS_o_ai vector unsigned short
10366 vec_find_any_ne_or_0_idx(vector bool short __a, vector bool short __b) {
10367  return __builtin_s390_vfaezh((vector unsigned short)__a,
10368  (vector unsigned short)__b, 8);
10369 }
10370 
10371 static inline __ATTRS_o_ai vector unsigned short
10372 vec_find_any_ne_or_0_idx(vector unsigned short __a, vector unsigned short __b) {
10373  return __builtin_s390_vfaezh(__a, __b, 8);
10374 }
10375 
10376 static inline __ATTRS_o_ai vector signed int
10377 vec_find_any_ne_or_0_idx(vector signed int __a, vector signed int __b) {
10378  return (vector signed int)
10379  __builtin_s390_vfaezf((vector unsigned int)__a,
10380  (vector unsigned int)__b, 8);
10381 }
10382 
10383 static inline __ATTRS_o_ai vector unsigned int
10384 vec_find_any_ne_or_0_idx(vector bool int __a, vector bool int __b) {
10385  return __builtin_s390_vfaezf((vector unsigned int)__a,
10386  (vector unsigned int)__b, 8);
10387 }
10388 
10389 static inline __ATTRS_o_ai vector unsigned int
10390 vec_find_any_ne_or_0_idx(vector unsigned int __a, vector unsigned int __b) {
10391  return __builtin_s390_vfaezf(__a, __b, 8);
10392 }
10393 
10394 /*-- vec_find_any_ne_or_0_idx_cc --------------------------------------------*/
10395 
10396 static inline __ATTRS_o_ai vector signed char
10397 vec_find_any_ne_or_0_idx_cc(vector signed char __a, vector signed char __b,
10398  int *__cc) {
10399  return (vector signed char)
10400  __builtin_s390_vfaezbs((vector unsigned char)__a,
10401  (vector unsigned char)__b, 8, __cc);
10402 }
10403 
10404 static inline __ATTRS_o_ai vector unsigned char
10405 vec_find_any_ne_or_0_idx_cc(vector bool char __a, vector bool char __b,
10406  int *__cc) {
10407  return __builtin_s390_vfaezbs((vector unsigned char)__a,
10408  (vector unsigned char)__b, 8, __cc);
10409 }
10410 
10411 static inline __ATTRS_o_ai vector unsigned char
10412 vec_find_any_ne_or_0_idx_cc(vector unsigned char __a, vector unsigned char __b,
10413  int *__cc) {
10414  return __builtin_s390_vfaezbs(__a, __b, 8, __cc);
10415 }
10416 
10417 static inline __ATTRS_o_ai vector signed short
10418 vec_find_any_ne_or_0_idx_cc(vector signed short __a, vector signed short __b,
10419  int *__cc) {
10420  return (vector signed short)
10421  __builtin_s390_vfaezhs((vector unsigned short)__a,
10422  (vector unsigned short)__b, 8, __cc);
10423 }
10424 
10425 static inline __ATTRS_o_ai vector unsigned short
10426 vec_find_any_ne_or_0_idx_cc(vector bool short __a, vector bool short __b,
10427  int *__cc) {
10428  return __builtin_s390_vfaezhs((vector unsigned short)__a,
10429  (vector unsigned short)__b, 8, __cc);
10430 }
10431 
10432 static inline __ATTRS_o_ai vector unsigned short
10433 vec_find_any_ne_or_0_idx_cc(vector unsigned short __a,
10434  vector unsigned short __b, int *__cc) {
10435  return __builtin_s390_vfaezhs(__a, __b, 8, __cc);
10436 }
10437 
10438 static inline __ATTRS_o_ai vector signed int
10439 vec_find_any_ne_or_0_idx_cc(vector signed int __a, vector signed int __b,
10440  int *__cc) {
10441  return (vector signed int)
10442  __builtin_s390_vfaezfs((vector unsigned int)__a,
10443  (vector unsigned int)__b, 8, __cc);
10444 }
10445 
10446 static inline __ATTRS_o_ai vector unsigned int
10447 vec_find_any_ne_or_0_idx_cc(vector bool int __a, vector bool int __b,
10448  int *__cc) {
10449  return __builtin_s390_vfaezfs((vector unsigned int)__a,
10450  (vector unsigned int)__b, 8, __cc);
10451 }
10452 
10453 static inline __ATTRS_o_ai vector unsigned int
10454 vec_find_any_ne_or_0_idx_cc(vector unsigned int __a, vector unsigned int __b,
10455  int *__cc) {
10456  return __builtin_s390_vfaezfs(__a, __b, 8, __cc);
10457 }
10458 
10459 #undef __constant_pow2_range
10460 #undef __constant_range
10461 #undef __constant
10462 #undef __ATTRS_o
10463 #undef __ATTRS_o_ai
10464 #undef __ATTRS_ai
10465 
10466 #else
10467 
10468 #error "Use -fzvector to enable vector extensions"
10469 
10470 #endif
static __inline__ vector signed char __ATTRS_o_ai vec_srl(vector signed char __a, vector unsigned char __b)
Definition: altivec.h:9666
static __inline__ vector signed char __ATTRS_o_ai vec_rl(vector signed char __a, vector unsigned char __b)
Definition: altivec.h:7600
static __inline__ int __ATTRS_o_ai vec_any_le(vector signed char __a, vector signed char __b)
Definition: altivec.h:15414
static __inline__ vector signed char __ATTRS_o_ai vec_packs(vector short __a, vector short __b)
Definition: altivec.h:7028
static __inline__ vector float __ATTRS_o_ai vec_ceil(vector float __a)
Definition: altivec.h:1601
static __inline__ vector float __ATTRS_o_ai vec_trunc(vector float __a)
Definition: altivec.h:11594
static __inline__ vector unsigned char __ATTRS_o_ai vec_packsu(vector short __a, vector short __b)
Definition: altivec.h:7157
static __inline__ vector bool char __ATTRS_o_ai vec_cmple(vector signed char __a, vector signed char __b)
Definition: altivec.h:2098
static __inline__ int __ATTRS_o_ai vec_any_eq(vector signed char __a, vector signed char __b)
Definition: altivec.h:14868
static __inline__ vector signed char __ATTRS_o_ai vec_sel(vector signed char __a, vector signed char __b, vector unsigned char __c)
Definition: altivec.h:7789
static __inline__ vector signed char __ATTRS_o_ai vec_mergel(vector signed char __a, vector signed char __b)
Definition: altivec.h:4760
static __inline__ vector short __ATTRS_o_ai vec_mulo(vector signed char __a, vector signed char __b)
Definition: altivec.h:5754
static __inline__ vector unsigned int __ATTRS_o_ai vec_unsigned(vector float __a)
Definition: altivec.h:3012
static __inline__ vector signed char __ATTRS_o_ai vec_nor(vector signed char __a, vector signed char __b)
Definition: altivec.h:6054
static __inline__ vector signed char __ATTRS_o_ai vec_splat(vector signed char __a, unsigned const int __b)
Definition: altivec.h:9195
static __inline__ vector bool char __ATTRS_o_ai vec_cmplt(vector signed char __a, vector signed char __b)
Definition: altivec.h:2154
static __inline__ vector signed char __ATTRS_o_ai vec_sll(vector signed char __a, vector unsigned char __b)
Definition: altivec.h:8629
static __inline__ vector signed char __ATTRS_o_ai vec_sldw(vector signed char __a, vector signed char __b, unsigned const int __c)
Definition: altivec.h:8416
static __inline__ int __ATTRS_o_ai vec_all_ge(vector signed char __a, vector signed char __b)
Definition: altivec.h:13914
static __inline__ int __ATTRS_o_ai vec_any_ne(vector signed char __a, vector signed char __b)
Definition: altivec.h:15779
static __inline__ vector signed short __ATTRS_o_ai vec_mladd(vector signed short, vector signed short, vector signed short)
#define __conv
Definition: opencl-c.h:26
static __inline__ void int __a
Definition: emmintrin.h:4099
static vector float __ATTRS_o_ai vec_nabs(vector float __a)
Definition: altivec.h:16706
static __inline__ vector signed char __ATTRS_o_ai vec_insert(signed char __a, vector signed char __b, int __c)
Definition: altivec.h:12635
static __ATTRS_o_ai vector signed char vec_xl(signed long long __offset, signed char *__ptr)
Definition: altivec.h:16356
static __inline__ int __ATTRS_o_ai vec_any_lt(vector signed char __a, vector signed char __b)
Definition: altivec.h:15593
static __inline__ vector signed short __ATTRS_o_ai vec_madd(vector signed short __a, vector signed short __b, vector signed short __c)
Definition: altivec.h:4155
static __inline__ int __ATTRS_o_ai vec_all_nge(vector float __a, vector float __b)
Definition: altivec.h:14811
static __inline__ int __ATTRS_o_ai vec_all_gt(vector signed char __a, vector signed char __b)
Definition: altivec.h:14085
char __v64qi __attribute__((__vector_size__(64)))
Zeroes the upper 128 bits (bits 255:128) of all YMM registers.
Definition: avx512fintrin.h:30
static __inline__ vector float __ATTRS_o_ai vec_floor(vector float __a)
Definition: altivec.h:3436
static __inline__ vector signed char __ATTRS_o_ai vec_andc(vector signed char __a, vector signed char __b)
Definition: altivec.h:1177
static __inline__ int __ATTRS_o_ai vec_any_ge(vector signed char __a, vector signed char __b)
Definition: altivec.h:15056
static __inline__ vector signed int __ATTRS_o_ai vec_signed(vector float __a)
Definition: altivec.h:2970
static __inline__ vector bool char __ATTRS_o_ai vec_cmpeq(vector signed char __a, vector signed char __b)
Definition: altivec.h:1639
static __inline__ vector signed char __ATTRS_o_ai vec_splats(signed char __a)
Definition: altivec.h:13663
static __inline__ vector signed int __ATTRS_o_ai vec_subc(vector signed int __a, vector signed int __b)
Definition: altivec.h:11153
static __inline__ vector signed char __ATTRS_o_ai vec_max(vector signed char __a, vector signed char __b)
Definition: altivec.h:4237
static __inline__ vector signed int __ATTRS_o_ai vec_sld(vector signed int, vector signed int, unsigned const int __c)
Definition: altivec.h:8264
static __inline__ vector float vector float __b
Definition: altivec.h:534
static __inline__ vector signed char __ATTRS_o_ai vec_perm(vector signed char __a, vector signed char __b, vector unsigned char __c)
Definition: altivec.h:7275
static __inline__ vector bool char __ATTRS_o_ai vec_cmpge(vector signed char __a, vector signed char __b)
Definition: altivec.h:1982
static __inline__ vector short __ATTRS_o_ai vec_unpackh(vector signed char __a)
Definition: altivec.h:11621
static __inline__ int __ATTRS_o_ai vec_all_ne(vector signed char __a, vector signed char __b)
Definition: altivec.h:14623
static __inline__ int __ATTRS_o_ai vec_all_lt(vector signed char __a, vector signed char __b)
Definition: altivec.h:14435
static __ATTRS_o_ai void vec_xst(vector signed char __vec, signed long long __offset, signed char *__ptr)
Definition: altivec.h:16498
static __inline__ vector int __ATTRS_o_ai vec_splat_s32(signed char __a)
Definition: altivec.h:9458
static __inline__ vector signed char __ATTRS_o_ai vec_splat_s8(signed char __a)
Definition: altivec.h:9425
static __inline__ vector signed int __ATTRS_o_ai vec_addc(vector signed int __a, vector signed int __b)
Definition: altivec.h:541
static __inline__ vector bool char __ATTRS_o_ai vec_cmpgt(vector signed char __a, vector signed char __b)
Definition: altivec.h:1922
static __inline__ vector float __ATTRS_o_ai vec_nmsub(vector float __a, vector float __b, vector float __c)
Definition: altivec.h:6024
static __inline__ vector unsigned char __ATTRS_o_ai vec_splat_u8(unsigned char __a)
Definition: altivec.h:9473
static __inline__ vector unsigned short __ATTRS_o_ai vec_splat_u16(signed char __a)
Definition: altivec.h:9481
static __inline__ vector signed char __ATTRS_o_ai vec_promote(signed char __a, int __b)
Definition: altivec.h:13615
static __inline__ vector signed char __ATTRS_o_ai vec_avg(vector signed char __a, vector signed char __b)
Definition: altivec.h:1528
static __inline__ vector unsigned int __ATTRS_o_ai vec_splat_u32(signed char __a)
Definition: altivec.h:9489
static __inline__ int __ATTRS_o_ai vec_any_gt(vector signed char __a, vector signed char __b)
Definition: altivec.h:15235
static __inline__ vector signed char __ATTRS_o_ai vec_pack(vector signed short __a, vector signed short __b)
Definition: altivec.h:6702
static __inline__ vector short __ATTRS_o_ai vec_mule(vector signed char __a, vector signed char __b)
Definition: altivec.h:5652
static __inline__ void unsigned int __value
Definition: movdirintrin.h:34
static __inline__ signed char __ATTRS_o_ai vec_extract(vector signed char __a, int __b)
Definition: altivec.h:12510
static __inline__ int __ATTRS_o_ai vec_all_nan(vector float __a)
Definition: altivec.h:14607
#define __ATTRS_o_ai
Definition: altivec.h:56
static __inline__ vector signed char __ATTRS_o_ai vec_abs(vector signed char __a)
Definition: altivec.h:129
static __inline__ vector float __ATTRS_o_ai vec_round(vector float __a)
Definition: altivec.h:7709
static __inline__ vector short __ATTRS_o_ai vec_unpackl(vector signed char __a)
Definition: altivec.h:11760
static __inline__ int __ATTRS_o_ai vec_all_ngt(vector float __a, vector float __b)
Definition: altivec.h:14829
static __inline__ int __ATTRS_o_ai vec_all_le(vector signed char __a, vector signed char __b)
Definition: altivec.h:14263
static __inline__ vector signed char __ATTRS_o_ai vec_mergeh(vector signed char __a, vector signed char __b)
Definition: altivec.h:4490
static __inline__ vector short __ATTRS_o_ai vec_splat_s16(signed char __a)
Definition: altivec.h:9442
static __inline__ vector signed char __ATTRS_o_ai vec_min(vector signed char __a, vector signed char __b)
Definition: altivec.h:5141
static __inline__ vector float vector float vector float __c
Definition: altivec.h:4199
static __inline__ int __ATTRS_o_ai vec_all_eq(vector signed char __a, vector signed char __b)
Definition: altivec.h:13727