27 #error "AltiVec support not enabled"
33 #define __CR6_EQ_REV 1
35 #define __CR6_LT_REV 3
37 #define __ATTRS_o_ai __attribute__((__overloadable__, __always_inline__))
39 static vector
signed char __ATTRS_o_ai vec_perm(vector
signed char __a,
40 vector
signed char __b,
41 vector
unsigned char __c);
43 static vector
unsigned char __ATTRS_o_ai vec_perm(vector
unsigned char __a,
44 vector
unsigned char __b,
45 vector
unsigned char __c);
47 static vector
bool char __ATTRS_o_ai vec_perm(vector
bool char __a,
49 vector
unsigned char __c);
51 static vector
short __ATTRS_o_ai vec_perm(vector
signed short __a,
52 vector
signed short __b,
53 vector
unsigned char __c);
55 static vector
unsigned short __ATTRS_o_ai vec_perm(vector
unsigned short __a,
56 vector
unsigned short __b,
57 vector
unsigned char __c);
59 static vector
bool short __ATTRS_o_ai vec_perm(vector
bool short __a,
60 vector
bool short __b,
61 vector
unsigned char __c);
63 static vector pixel
__ATTRS_o_ai vec_perm(vector pixel __a, vector pixel
__b,
64 vector
unsigned char __c);
66 static vector
int __ATTRS_o_ai vec_perm(vector
signed int __a,
67 vector
signed int __b,
68 vector
unsigned char __c);
70 static vector
unsigned int __ATTRS_o_ai vec_perm(vector
unsigned int __a,
71 vector
unsigned int __b,
72 vector
unsigned char __c);
74 static vector
bool int __ATTRS_o_ai vec_perm(vector
bool int __a,
76 vector
unsigned char __c);
78 static vector
float __ATTRS_o_ai vec_perm(vector
float __a, vector
float __b,
79 vector
unsigned char __c);
82 static vector
long long __ATTRS_o_ai vec_perm(vector
signed long long __a,
83 vector
signed long long __b,
84 vector
unsigned char __c);
87 vec_perm(vector
unsigned long long __a, vector
unsigned long long __b,
88 vector
unsigned char __c);
91 vec_perm(vector
bool long long __a, vector
bool long long __b,
92 vector
unsigned char __c);
94 static vector
double __ATTRS_o_ai vec_perm(vector
double __a, vector
double __b,
95 vector
unsigned char __c);
98 static vector
unsigned char __ATTRS_o_ai vec_xor(vector
unsigned char __a,
99 vector
unsigned char __b);
103 #define __builtin_altivec_abs_v16qi vec_abs
104 #define __builtin_altivec_abs_v8hi vec_abs
105 #define __builtin_altivec_abs_v4si vec_abs
107 static vector
signed char __ATTRS_o_ai vec_abs(vector
signed char __a) {
108 return __builtin_altivec_vmaxsb(__a, -__a);
111 static vector
signed short __ATTRS_o_ai vec_abs(vector
signed short __a) {
112 return __builtin_altivec_vmaxsh(__a, -__a);
115 static vector
signed int __ATTRS_o_ai vec_abs(vector
signed int __a) {
116 return __builtin_altivec_vmaxsw(__a, -__a);
119 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
121 vec_abs(vector
signed long long __a) {
122 return __builtin_altivec_vmaxsd(__a, -__a);
126 static vector
float __ATTRS_o_ai vec_abs(vector
float __a) {
127 vector
unsigned int __res =
128 (vector
unsigned int)__a & (vector
unsigned int)(0x7FFFFFFF);
129 return (vector
float)__res;
132 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
133 static vector
double __ATTRS_o_ai vec_abs(vector
double __a) {
134 vector
unsigned long long __res = { 0x7FFFFFFFFFFFFFFF, 0x7FFFFFFFFFFFFFFF };
135 __res &= (vector
unsigned int)__a;
136 return (vector
double)__res;
141 #define __builtin_altivec_abss_v16qi vec_abss
142 #define __builtin_altivec_abss_v8hi vec_abss
143 #define __builtin_altivec_abss_v4si vec_abss
145 static vector
signed char __ATTRS_o_ai vec_abss(vector
signed char __a) {
146 return __builtin_altivec_vmaxsb(
147 __a, __builtin_altivec_vsubsbs((vector
signed char)(0), __a));
150 static vector
signed short __ATTRS_o_ai vec_abss(vector
signed short __a) {
151 return __builtin_altivec_vmaxsh(
152 __a, __builtin_altivec_vsubshs((vector
signed short)(0), __a));
155 static vector
signed int __ATTRS_o_ai vec_abss(vector
signed int __a) {
156 return __builtin_altivec_vmaxsw(
157 __a, __builtin_altivec_vsubsws((vector
signed int)(0), __a));
162 static vector
signed char __ATTRS_o_ai vec_add(vector
signed char __a,
163 vector
signed char __b) {
167 static vector
signed char __ATTRS_o_ai vec_add(vector
bool char __a,
168 vector
signed char __b) {
169 return (vector
signed char)__a +
__b;
172 static vector
signed char __ATTRS_o_ai vec_add(vector
signed char __a,
173 vector
bool char __b) {
174 return __a + (vector
signed char)__b;
177 static vector
unsigned char __ATTRS_o_ai vec_add(vector
unsigned char __a,
178 vector
unsigned char __b) {
182 static vector
unsigned char __ATTRS_o_ai vec_add(vector
bool char __a,
183 vector
unsigned char __b) {
184 return (vector
unsigned char)__a +
__b;
187 static vector
unsigned char __ATTRS_o_ai vec_add(vector
unsigned char __a,
188 vector
bool char __b) {
189 return __a + (vector
unsigned char)__b;
192 static vector
short __ATTRS_o_ai vec_add(vector
short __a, vector
short __b) {
196 static vector
short __ATTRS_o_ai vec_add(vector
bool short __a,
198 return (vector
short)__a +
__b;
201 static vector
short __ATTRS_o_ai vec_add(vector
short __a,
202 vector
bool short __b) {
203 return __a + (vector short)__b;
206 static vector
unsigned short __ATTRS_o_ai vec_add(vector
unsigned short __a,
207 vector
unsigned short __b) {
211 static vector
unsigned short __ATTRS_o_ai vec_add(vector
bool short __a,
212 vector
unsigned short __b) {
213 return (vector
unsigned short)__a +
__b;
216 static vector
unsigned short __ATTRS_o_ai vec_add(vector
unsigned short __a,
217 vector
bool short __b) {
218 return __a + (vector
unsigned short)__b;
221 static vector
int __ATTRS_o_ai vec_add(vector
int __a, vector
int __b) {
225 static vector
int __ATTRS_o_ai vec_add(vector
bool int __a, vector
int __b) {
226 return (vector
int)__a +
__b;
229 static vector
int __ATTRS_o_ai vec_add(vector
int __a, vector
bool int __b) {
230 return __a + (vector int)__b;
233 static vector
unsigned int __ATTRS_o_ai vec_add(vector
unsigned int __a,
234 vector
unsigned int __b) {
238 static vector
unsigned int __ATTRS_o_ai vec_add(vector
bool int __a,
239 vector
unsigned int __b) {
240 return (vector
unsigned int)__a +
__b;
243 static vector
unsigned int __ATTRS_o_ai vec_add(vector
unsigned int __a,
244 vector
bool int __b) {
245 return __a + (vector
unsigned int)__b;
248 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
250 vec_add(vector
signed long long __a, vector
signed long long __b) {
255 vec_add(vector
unsigned long long __a, vector
unsigned long long __b) {
259 static vector
signed __int128
__ATTRS_o_ai vec_add(vector
signed __int128 __a,
260 vector
signed __int128 __b) {
265 vec_add(vector
unsigned __int128 __a, vector
unsigned __int128 __b) {
268 #endif // defined(__POWER8_VECTOR__) && defined(__powerpc64__)
270 static vector
float __ATTRS_o_ai vec_add(vector
float __a, vector
float __b) {
276 vec_add(vector
double __a, vector
double __b) {
283 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
285 vec_adde(vector
signed __int128 __a, vector
signed __int128 __b,
286 vector
signed __int128
__c) {
287 return __builtin_altivec_vaddeuqm(__a, __b, __c);
291 vec_adde(vector
unsigned __int128 __a, vector
unsigned __int128 __b,
292 vector
unsigned __int128
__c) {
293 return __builtin_altivec_vaddeuqm(__a, __b, __c);
299 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
301 vec_addec(vector
signed __int128 __a, vector
signed __int128 __b,
302 vector
signed __int128
__c) {
303 return __builtin_altivec_vaddecuq(__a, __b, __c);
307 vec_addec(vector
unsigned __int128 __a, vector
unsigned __int128 __b,
308 vector
unsigned __int128
__c) {
309 return __builtin_altivec_vaddecuq(__a, __b, __c);
315 #define __builtin_altivec_vaddubm vec_vaddubm
317 static vector
signed char __ATTRS_o_ai vec_vaddubm(vector
signed char __a,
318 vector
signed char __b) {
322 static vector
signed char __ATTRS_o_ai vec_vaddubm(vector
bool char __a,
323 vector
signed char __b) {
324 return (vector
signed char)__a +
__b;
327 static vector
signed char __ATTRS_o_ai vec_vaddubm(vector
signed char __a,
328 vector
bool char __b) {
329 return __a + (vector
signed char)__b;
332 static vector
unsigned char __ATTRS_o_ai vec_vaddubm(vector
unsigned char __a,
333 vector
unsigned char __b) {
337 static vector
unsigned char __ATTRS_o_ai vec_vaddubm(vector
bool char __a,
338 vector
unsigned char __b) {
339 return (vector
unsigned char)__a +
__b;
342 static vector
unsigned char __ATTRS_o_ai vec_vaddubm(vector
unsigned char __a,
343 vector
bool char __b) {
344 return __a + (vector
unsigned char)__b;
349 #define __builtin_altivec_vadduhm vec_vadduhm
351 static vector
short __ATTRS_o_ai vec_vadduhm(vector
short __a,
356 static vector
short __ATTRS_o_ai vec_vadduhm(vector
bool short __a,
358 return (vector
short)__a +
__b;
361 static vector
short __ATTRS_o_ai vec_vadduhm(vector
short __a,
362 vector
bool short __b) {
363 return __a + (vector short)__b;
367 vec_vadduhm(vector
unsigned short __a, vector
unsigned short __b) {
372 vec_vadduhm(vector
bool short __a, vector
unsigned short __b) {
373 return (vector
unsigned short)__a +
__b;
376 static vector
unsigned short __ATTRS_o_ai vec_vadduhm(vector
unsigned short __a,
377 vector
bool short __b) {
378 return __a + (vector
unsigned short)__b;
383 #define __builtin_altivec_vadduwm vec_vadduwm
385 static vector
int __ATTRS_o_ai vec_vadduwm(vector
int __a, vector
int __b) {
389 static vector
int __ATTRS_o_ai vec_vadduwm(vector
bool int __a,
391 return (vector
int)__a +
__b;
394 static vector
int __ATTRS_o_ai vec_vadduwm(vector
int __a,
395 vector
bool int __b) {
396 return __a + (vector int)__b;
399 static vector
unsigned int __ATTRS_o_ai vec_vadduwm(vector
unsigned int __a,
400 vector
unsigned int __b) {
404 static vector
unsigned int __ATTRS_o_ai vec_vadduwm(vector
bool int __a,
405 vector
unsigned int __b) {
406 return (vector
unsigned int)__a +
__b;
409 static vector
unsigned int __ATTRS_o_ai vec_vadduwm(vector
unsigned int __a,
410 vector
bool int __b) {
411 return __a + (vector
unsigned int)__b;
416 #define __builtin_altivec_vaddfp vec_vaddfp
419 vec_vaddfp(vector
float __a, vector
float __b) {
425 static vector
signed int __ATTRS_o_ai vec_addc(vector
signed int __a,
426 vector
signed int __b) {
427 return (vector
signed int)__builtin_altivec_vaddcuw((vector
unsigned int)__a,
428 (vector
unsigned int)__b);
431 static vector
unsigned int __ATTRS_o_ai vec_addc(vector
unsigned int __a,
432 vector
unsigned int __b) {
433 return __builtin_altivec_vaddcuw(__a, __b);
436 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
438 vec_addc(vector
signed __int128 __a, vector
signed __int128 __b) {
439 return (vector
signed __int128)__builtin_altivec_vaddcuq(
440 (vector
unsigned __int128)__a,
441 (vector
unsigned __int128)__b);
445 vec_addc(vector
unsigned __int128 __a, vector
unsigned __int128 __b) {
446 return __builtin_altivec_vaddcuq(__a, __b);
448 #endif // defined(__POWER8_VECTOR__) && defined(__powerpc64__)
452 static vector
unsigned int __attribute__((__always_inline__))
453 vec_vaddcuw(vector
unsigned int __a, vector
unsigned int __b) {
454 return __builtin_altivec_vaddcuw(__a, __b);
459 static vector
signed char __ATTRS_o_ai vec_adds(vector
signed char __a,
460 vector
signed char __b) {
461 return __builtin_altivec_vaddsbs(__a, __b);
464 static vector
signed char __ATTRS_o_ai vec_adds(vector
bool char __a,
465 vector
signed char __b) {
466 return __builtin_altivec_vaddsbs((vector
signed char)__a, __b);
469 static vector
signed char __ATTRS_o_ai vec_adds(vector
signed char __a,
470 vector
bool char __b) {
471 return __builtin_altivec_vaddsbs(__a, (vector
signed char)__b);
474 static vector
unsigned char __ATTRS_o_ai vec_adds(vector
unsigned char __a,
475 vector
unsigned char __b) {
476 return __builtin_altivec_vaddubs(__a, __b);
479 static vector
unsigned char __ATTRS_o_ai vec_adds(vector
bool char __a,
480 vector
unsigned char __b) {
481 return __builtin_altivec_vaddubs((vector
unsigned char)__a, __b);
484 static vector
unsigned char __ATTRS_o_ai vec_adds(vector
unsigned char __a,
485 vector
bool char __b) {
486 return __builtin_altivec_vaddubs(__a, (vector
unsigned char)__b);
489 static vector
short __ATTRS_o_ai vec_adds(vector
short __a, vector
short __b) {
490 return __builtin_altivec_vaddshs(__a, __b);
493 static vector
short __ATTRS_o_ai vec_adds(vector
bool short __a,
495 return __builtin_altivec_vaddshs((vector
short)__a, __b);
498 static vector
short __ATTRS_o_ai vec_adds(vector
short __a,
499 vector
bool short __b) {
500 return __builtin_altivec_vaddshs(__a, (vector
short)__b);
503 static vector
unsigned short __ATTRS_o_ai vec_adds(vector
unsigned short __a,
504 vector
unsigned short __b) {
505 return __builtin_altivec_vadduhs(__a, __b);
508 static vector
unsigned short __ATTRS_o_ai vec_adds(vector
bool short __a,
509 vector
unsigned short __b) {
510 return __builtin_altivec_vadduhs((vector
unsigned short)__a, __b);
513 static vector
unsigned short __ATTRS_o_ai vec_adds(vector
unsigned short __a,
514 vector
bool short __b) {
515 return __builtin_altivec_vadduhs(__a, (vector
unsigned short)__b);
518 static vector
int __ATTRS_o_ai vec_adds(vector
int __a, vector
int __b) {
519 return __builtin_altivec_vaddsws(__a, __b);
522 static vector
int __ATTRS_o_ai vec_adds(vector
bool int __a, vector
int __b) {
523 return __builtin_altivec_vaddsws((vector
int)__a, __b);
526 static vector
int __ATTRS_o_ai vec_adds(vector
int __a, vector
bool int __b) {
527 return __builtin_altivec_vaddsws(__a, (vector
int)__b);
530 static vector
unsigned int __ATTRS_o_ai vec_adds(vector
unsigned int __a,
531 vector
unsigned int __b) {
532 return __builtin_altivec_vadduws(__a, __b);
535 static vector
unsigned int __ATTRS_o_ai vec_adds(vector
bool int __a,
536 vector
unsigned int __b) {
537 return __builtin_altivec_vadduws((vector
unsigned int)__a, __b);
540 static vector
unsigned int __ATTRS_o_ai vec_adds(vector
unsigned int __a,
541 vector
bool int __b) {
542 return __builtin_altivec_vadduws(__a, (vector
unsigned int)__b);
547 static vector
signed char __ATTRS_o_ai vec_vaddsbs(vector
signed char __a,
548 vector
signed char __b) {
549 return __builtin_altivec_vaddsbs(__a, __b);
552 static vector
signed char __ATTRS_o_ai vec_vaddsbs(vector
bool char __a,
553 vector
signed char __b) {
554 return __builtin_altivec_vaddsbs((vector
signed char)__a, __b);
557 static vector
signed char __ATTRS_o_ai vec_vaddsbs(vector
signed char __a,
558 vector
bool char __b) {
559 return __builtin_altivec_vaddsbs(__a, (vector
signed char)__b);
564 static vector
unsigned char __ATTRS_o_ai vec_vaddubs(vector
unsigned char __a,
565 vector
unsigned char __b) {
566 return __builtin_altivec_vaddubs(__a, __b);
569 static vector
unsigned char __ATTRS_o_ai vec_vaddubs(vector
bool char __a,
570 vector
unsigned char __b) {
571 return __builtin_altivec_vaddubs((vector
unsigned char)__a, __b);
574 static vector
unsigned char __ATTRS_o_ai vec_vaddubs(vector
unsigned char __a,
575 vector
bool char __b) {
576 return __builtin_altivec_vaddubs(__a, (vector
unsigned char)__b);
581 static vector
short __ATTRS_o_ai vec_vaddshs(vector
short __a,
583 return __builtin_altivec_vaddshs(__a, __b);
586 static vector
short __ATTRS_o_ai vec_vaddshs(vector
bool short __a,
588 return __builtin_altivec_vaddshs((vector
short)__a, __b);
591 static vector
short __ATTRS_o_ai vec_vaddshs(vector
short __a,
592 vector
bool short __b) {
593 return __builtin_altivec_vaddshs(__a, (vector
short)__b);
599 vec_vadduhs(vector
unsigned short __a, vector
unsigned short __b) {
600 return __builtin_altivec_vadduhs(__a, __b);
604 vec_vadduhs(vector
bool short __a, vector
unsigned short __b) {
605 return __builtin_altivec_vadduhs((vector
unsigned short)__a, __b);
608 static vector
unsigned short __ATTRS_o_ai vec_vadduhs(vector
unsigned short __a,
609 vector
bool short __b) {
610 return __builtin_altivec_vadduhs(__a, (vector
unsigned short)__b);
615 static vector
int __ATTRS_o_ai vec_vaddsws(vector
int __a, vector
int __b) {
616 return __builtin_altivec_vaddsws(__a, __b);
619 static vector
int __ATTRS_o_ai vec_vaddsws(vector
bool int __a,
621 return __builtin_altivec_vaddsws((vector
int)__a, __b);
624 static vector
int __ATTRS_o_ai vec_vaddsws(vector
int __a,
625 vector
bool int __b) {
626 return __builtin_altivec_vaddsws(__a, (vector
int)__b);
631 static vector
unsigned int __ATTRS_o_ai vec_vadduws(vector
unsigned int __a,
632 vector
unsigned int __b) {
633 return __builtin_altivec_vadduws(__a, __b);
636 static vector
unsigned int __ATTRS_o_ai vec_vadduws(vector
bool int __a,
637 vector
unsigned int __b) {
638 return __builtin_altivec_vadduws((vector
unsigned int)__a, __b);
641 static vector
unsigned int __ATTRS_o_ai vec_vadduws(vector
unsigned int __a,
642 vector
bool int __b) {
643 return __builtin_altivec_vadduws(__a, (vector
unsigned int)__b);
646 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
650 vec_vadduqm(vector
signed __int128 __a, vector
signed __int128 __b) {
655 vec_vadduqm(vector
unsigned __int128 __a, vector
unsigned __int128 __b) {
662 vec_vaddeuqm(vector
signed __int128 __a, vector
signed __int128 __b,
663 vector
signed __int128
__c) {
664 return __builtin_altivec_vaddeuqm(__a, __b, __c);
668 vec_vaddeuqm(vector
unsigned __int128 __a, vector
unsigned __int128 __b,
669 vector
unsigned __int128
__c) {
670 return __builtin_altivec_vaddeuqm(__a, __b, __c);
676 vec_vaddcuq(vector
signed __int128 __a, vector
signed __int128 __b) {
677 return __builtin_altivec_vaddcuq(__a, __b);
681 vec_vaddcuq(vector
unsigned __int128 __a, vector
unsigned __int128 __b) {
682 return __builtin_altivec_vaddcuq(__a, __b);
688 vec_vaddecuq(vector
signed __int128 __a, vector
signed __int128 __b,
689 vector
signed __int128
__c) {
690 return __builtin_altivec_vaddecuq(__a, __b, __c);
694 vec_vaddecuq(vector
unsigned __int128 __a, vector
unsigned __int128 __b,
695 vector
unsigned __int128
__c) {
696 return __builtin_altivec_vaddecuq(__a, __b, __c);
698 #endif // defined(__POWER8_VECTOR__) && defined(__powerpc64__)
702 #define __builtin_altivec_vand vec_and
704 static vector
signed char __ATTRS_o_ai vec_and(vector
signed char __a,
705 vector
signed char __b) {
709 static vector
signed char __ATTRS_o_ai vec_and(vector
bool char __a,
710 vector
signed char __b) {
711 return (vector
signed char)__a &
__b;
714 static vector
signed char __ATTRS_o_ai vec_and(vector
signed char __a,
715 vector
bool char __b) {
716 return __a & (vector
signed char)__b;
719 static vector
unsigned char __ATTRS_o_ai vec_and(vector
unsigned char __a,
720 vector
unsigned char __b) {
724 static vector
unsigned char __ATTRS_o_ai vec_and(vector
bool char __a,
725 vector
unsigned char __b) {
726 return (vector
unsigned char)__a &
__b;
729 static vector
unsigned char __ATTRS_o_ai vec_and(vector
unsigned char __a,
730 vector
bool char __b) {
731 return __a & (vector
unsigned char)__b;
734 static vector
bool char __ATTRS_o_ai vec_and(vector
bool char __a,
735 vector
bool char __b) {
739 static vector
short __ATTRS_o_ai vec_and(vector
short __a, vector
short __b) {
743 static vector
short __ATTRS_o_ai vec_and(vector
bool short __a,
745 return (vector
short)__a &
__b;
748 static vector
short __ATTRS_o_ai vec_and(vector
short __a,
749 vector
bool short __b) {
750 return __a & (vector short)__b;
753 static vector
unsigned short __ATTRS_o_ai vec_and(vector
unsigned short __a,
754 vector
unsigned short __b) {
758 static vector
unsigned short __ATTRS_o_ai vec_and(vector
bool short __a,
759 vector
unsigned short __b) {
760 return (vector
unsigned short)__a &
__b;
763 static vector
unsigned short __ATTRS_o_ai vec_and(vector
unsigned short __a,
764 vector
bool short __b) {
765 return __a & (vector
unsigned short)__b;
768 static vector
bool short __ATTRS_o_ai vec_and(vector
bool short __a,
769 vector
bool short __b) {
773 static vector
int __ATTRS_o_ai vec_and(vector
int __a, vector
int __b) {
777 static vector
int __ATTRS_o_ai vec_and(vector
bool int __a, vector
int __b) {
778 return (vector
int)__a &
__b;
781 static vector
int __ATTRS_o_ai vec_and(vector
int __a, vector
bool int __b) {
782 return __a & (vector int)__b;
785 static vector
unsigned int __ATTRS_o_ai vec_and(vector
unsigned int __a,
786 vector
unsigned int __b) {
790 static vector
unsigned int __ATTRS_o_ai vec_and(vector
bool int __a,
791 vector
unsigned int __b) {
792 return (vector
unsigned int)__a &
__b;
795 static vector
unsigned int __ATTRS_o_ai vec_and(vector
unsigned int __a,
796 vector
bool int __b) {
797 return __a & (vector
unsigned int)__b;
800 static vector
bool int __ATTRS_o_ai vec_and(vector
bool int __a,
801 vector
bool int __b) {
805 static vector
float __ATTRS_o_ai vec_and(vector
float __a, vector
float __b) {
806 vector
unsigned int __res =
807 (vector
unsigned int)__a & (vector
unsigned int)
__b;
808 return (vector
float)__res;
811 static vector
float __ATTRS_o_ai vec_and(vector
bool int __a,
813 vector
unsigned int __res =
814 (vector
unsigned int)__a & (vector
unsigned int)
__b;
815 return (vector
float)__res;
818 static vector
float __ATTRS_o_ai vec_and(vector
float __a,
819 vector
bool int __b) {
820 vector
unsigned int __res =
821 (vector
unsigned int)__a & (vector
unsigned int)
__b;
822 return (vector
float)__res;
826 static vector
double __ATTRS_o_ai vec_and(vector
bool long long __a, vector
double __b) {
827 vector
unsigned long long __res =
828 (vector
unsigned long long)__a & (vector
unsigned long long)
__b;
829 return (vector
double)__res;
832 static vector
double __ATTRS_o_ai vec_and(vector
double __a, vector
bool long long __b) {
833 vector
unsigned long long __res =
834 (vector
unsigned long long)__a & (vector
unsigned long long)
__b;
835 return (vector
double)__res;
838 static vector
double __ATTRS_o_ai vec_and(vector
double __a, vector
double __b) {
839 vector
unsigned long long __res =
840 (vector
unsigned long long)__a & (vector
unsigned long long)
__b;
841 return (vector
double)__res;
845 vec_and(vector
signed long long __a, vector
signed long long __b) {
850 vec_and(vector
bool long long __a, vector
signed long long __b) {
851 return (vector
signed long long)__a &
__b;
854 static vector
signed long long __ATTRS_o_ai vec_and(vector
signed long long __a,
855 vector
bool long long __b) {
856 return __a & (vector
signed long long)__b;
860 vec_and(vector
unsigned long long __a, vector
unsigned long long __b) {
865 vec_and(vector
bool long long __a, vector
unsigned long long __b) {
866 return (vector
unsigned long long)__a &
__b;
870 vec_and(vector
unsigned long long __a, vector
bool long long __b) {
871 return __a & (vector
unsigned long long)__b;
874 static vector
bool long long __ATTRS_o_ai vec_and(vector
bool long long __a,
875 vector
bool long long __b) {
882 static vector
signed char __ATTRS_o_ai vec_vand(vector
signed char __a,
883 vector
signed char __b) {
887 static vector
signed char __ATTRS_o_ai vec_vand(vector
bool char __a,
888 vector
signed char __b) {
889 return (vector
signed char)__a &
__b;
892 static vector
signed char __ATTRS_o_ai vec_vand(vector
signed char __a,
893 vector
bool char __b) {
894 return __a & (vector
signed char)__b;
897 static vector
unsigned char __ATTRS_o_ai vec_vand(vector
unsigned char __a,
898 vector
unsigned char __b) {
902 static vector
unsigned char __ATTRS_o_ai vec_vand(vector
bool char __a,
903 vector
unsigned char __b) {
904 return (vector
unsigned char)__a &
__b;
907 static vector
unsigned char __ATTRS_o_ai vec_vand(vector
unsigned char __a,
908 vector
bool char __b) {
909 return __a & (vector
unsigned char)__b;
912 static vector
bool char __ATTRS_o_ai vec_vand(vector
bool char __a,
913 vector
bool char __b) {
917 static vector
short __ATTRS_o_ai vec_vand(vector
short __a, vector
short __b) {
921 static vector
short __ATTRS_o_ai vec_vand(vector
bool short __a,
923 return (vector
short)__a &
__b;
926 static vector
short __ATTRS_o_ai vec_vand(vector
short __a,
927 vector
bool short __b) {
928 return __a & (vector short)__b;
931 static vector
unsigned short __ATTRS_o_ai vec_vand(vector
unsigned short __a,
932 vector
unsigned short __b) {
936 static vector
unsigned short __ATTRS_o_ai vec_vand(vector
bool short __a,
937 vector
unsigned short __b) {
938 return (vector
unsigned short)__a &
__b;
941 static vector
unsigned short __ATTRS_o_ai vec_vand(vector
unsigned short __a,
942 vector
bool short __b) {
943 return __a & (vector
unsigned short)__b;
946 static vector
bool short __ATTRS_o_ai vec_vand(vector
bool short __a,
947 vector
bool short __b) {
951 static vector
int __ATTRS_o_ai vec_vand(vector
int __a, vector
int __b) {
955 static vector
int __ATTRS_o_ai vec_vand(vector
bool int __a, vector
int __b) {
956 return (vector
int)__a &
__b;
959 static vector
int __ATTRS_o_ai vec_vand(vector
int __a, vector
bool int __b) {
960 return __a & (vector int)__b;
963 static vector
unsigned int __ATTRS_o_ai vec_vand(vector
unsigned int __a,
964 vector
unsigned int __b) {
968 static vector
unsigned int __ATTRS_o_ai vec_vand(vector
bool int __a,
969 vector
unsigned int __b) {
970 return (vector
unsigned int)__a &
__b;
973 static vector
unsigned int __ATTRS_o_ai vec_vand(vector
unsigned int __a,
974 vector
bool int __b) {
975 return __a & (vector
unsigned int)__b;
978 static vector
bool int __ATTRS_o_ai vec_vand(vector
bool int __a,
979 vector
bool int __b) {
983 static vector
float __ATTRS_o_ai vec_vand(vector
float __a, vector
float __b) {
984 vector
unsigned int __res =
985 (vector
unsigned int)__a & (vector
unsigned int)
__b;
986 return (vector
float)__res;
989 static vector
float __ATTRS_o_ai vec_vand(vector
bool int __a,
991 vector
unsigned int __res =
992 (vector
unsigned int)__a & (vector
unsigned int)
__b;
993 return (vector
float)__res;
996 static vector
float __ATTRS_o_ai vec_vand(vector
float __a,
997 vector
bool int __b) {
998 vector
unsigned int __res =
999 (vector
unsigned int)__a & (vector
unsigned int)
__b;
1000 return (vector
float)__res;
1005 vec_vand(vector
signed long long __a, vector
signed long long __b) {
1010 vec_vand(vector
bool long long __a, vector
signed long long __b) {
1011 return (vector
signed long long)__a &
__b;
1015 vec_vand(vector
signed long long __a, vector
bool long long __b) {
1016 return __a & (vector
signed long long)__b;
1020 vec_vand(vector
unsigned long long __a, vector
unsigned long long __b) {
1025 vec_vand(vector
bool long long __a, vector
unsigned long long __b) {
1026 return (vector
unsigned long long)__a &
__b;
1030 vec_vand(vector
unsigned long long __a, vector
bool long long __b) {
1031 return __a & (vector
unsigned long long)__b;
1034 static vector
bool long long __ATTRS_o_ai vec_vand(vector
bool long long __a,
1035 vector
bool long long __b) {
1042 #define __builtin_altivec_vandc vec_andc
1044 static vector
signed char __ATTRS_o_ai vec_andc(vector
signed char __a,
1045 vector
signed char __b) {
1049 static vector
signed char __ATTRS_o_ai vec_andc(vector
bool char __a,
1050 vector
signed char __b) {
1051 return (vector
signed char)__a & ~__b;
1054 static vector
signed char __ATTRS_o_ai vec_andc(vector
signed char __a,
1055 vector
bool char __b) {
1056 return __a & ~(vector
signed char)__b;
1059 static vector
unsigned char __ATTRS_o_ai vec_andc(vector
unsigned char __a,
1060 vector
unsigned char __b) {
1064 static vector
unsigned char __ATTRS_o_ai vec_andc(vector
bool char __a,
1065 vector
unsigned char __b) {
1066 return (vector
unsigned char)__a & ~__b;
1069 static vector
unsigned char __ATTRS_o_ai vec_andc(vector
unsigned char __a,
1070 vector
bool char __b) {
1071 return __a & ~(vector
unsigned char)__b;
1074 static vector
bool char __ATTRS_o_ai vec_andc(vector
bool char __a,
1075 vector
bool char __b) {
1079 static vector
short __ATTRS_o_ai vec_andc(vector
short __a, vector
short __b) {
1083 static vector
short __ATTRS_o_ai vec_andc(vector
bool short __a,
1085 return (vector
short)__a & ~__b;
1088 static vector
short __ATTRS_o_ai vec_andc(vector
short __a,
1089 vector
bool short __b) {
1090 return __a & ~(vector short)__b;
1093 static vector
unsigned short __ATTRS_o_ai vec_andc(vector
unsigned short __a,
1094 vector
unsigned short __b) {
1098 static vector
unsigned short __ATTRS_o_ai vec_andc(vector
bool short __a,
1099 vector
unsigned short __b) {
1100 return (vector
unsigned short)__a & ~__b;
1103 static vector
unsigned short __ATTRS_o_ai vec_andc(vector
unsigned short __a,
1104 vector
bool short __b) {
1105 return __a & ~(vector
unsigned short)__b;
1108 static vector
bool short __ATTRS_o_ai vec_andc(vector
bool short __a,
1109 vector
bool short __b) {
1113 static vector
int __ATTRS_o_ai vec_andc(vector
int __a, vector
int __b) {
1117 static vector
int __ATTRS_o_ai vec_andc(vector
bool int __a, vector
int __b) {
1118 return (vector
int)__a & ~__b;
1121 static vector
int __ATTRS_o_ai vec_andc(vector
int __a, vector
bool int __b) {
1122 return __a & ~(vector int)__b;
1125 static vector
unsigned int __ATTRS_o_ai vec_andc(vector
unsigned int __a,
1126 vector
unsigned int __b) {
1130 static vector
unsigned int __ATTRS_o_ai vec_andc(vector
bool int __a,
1131 vector
unsigned int __b) {
1132 return (vector
unsigned int)__a & ~__b;
1135 static vector
unsigned int __ATTRS_o_ai vec_andc(vector
unsigned int __a,
1136 vector
bool int __b) {
1137 return __a & ~(vector
unsigned int)__b;
1140 static vector
bool int __ATTRS_o_ai vec_andc(vector
bool int __a,
1141 vector
bool int __b) {
1145 static vector
float __ATTRS_o_ai vec_andc(vector
float __a, vector
float __b) {
1146 vector
unsigned int __res =
1147 (vector
unsigned int)__a & ~(vector
unsigned int)
__b;
1148 return (vector
float)__res;
1151 static vector
float __ATTRS_o_ai vec_andc(vector
bool int __a,
1153 vector
unsigned int __res =
1154 (vector
unsigned int)__a & ~(vector
unsigned int)
__b;
1155 return (vector
float)__res;
1158 static vector
float __ATTRS_o_ai vec_andc(vector
float __a,
1159 vector
bool int __b) {
1160 vector
unsigned int __res =
1161 (vector
unsigned int)__a & ~(vector
unsigned int)
__b;
1162 return (vector
float)__res;
1167 vec_andc(vector
bool long long __a, vector
double __b) {
1168 vector
unsigned long long __res =
1169 (vector
unsigned long long)__a & ~(vector
unsigned long long)
__b;
1170 return (vector
double)__res;
1174 vec_andc(vector
double __a, vector
bool long long __b) {
1175 vector
unsigned long long __res =
1176 (vector
unsigned long long)__a & ~(vector
unsigned long long)
__b;
1177 return (vector
double)__res;
1180 static vector
double __ATTRS_o_ai vec_andc(vector
double __a, vector
double __b) {
1181 vector
unsigned long long __res =
1182 (vector
unsigned long long)__a & ~(vector
unsigned long long)
__b;
1183 return (vector
double)__res;
1187 vec_andc(vector
signed long long __a, vector
signed long long __b) {
1192 vec_andc(vector
bool long long __a, vector
signed long long __b) {
1193 return (vector
signed long long)__a & ~__b;
1197 vec_andc(vector
signed long long __a, vector
bool long long __b) {
1198 return __a & ~(vector
signed long long)__b;
1202 vec_andc(vector
unsigned long long __a, vector
unsigned long long __b) {
1207 vec_andc(vector
bool long long __a, vector
unsigned long long __b) {
1208 return (vector
unsigned long long)__a & ~__b;
1212 vec_andc(vector
unsigned long long __a, vector
bool long long __b) {
1213 return __a & ~(vector
unsigned long long)__b;
1216 static vector
bool long long __ATTRS_o_ai vec_andc(vector
bool long long __a,
1217 vector
bool long long __b) {
1224 static vector
signed char __ATTRS_o_ai vec_vandc(vector
signed char __a,
1225 vector
signed char __b) {
1229 static vector
signed char __ATTRS_o_ai vec_vandc(vector
bool char __a,
1230 vector
signed char __b) {
1231 return (vector
signed char)__a & ~__b;
1234 static vector
signed char __ATTRS_o_ai vec_vandc(vector
signed char __a,
1235 vector
bool char __b) {
1236 return __a & ~(vector
signed char)__b;
1239 static vector
unsigned char __ATTRS_o_ai vec_vandc(vector
unsigned char __a,
1240 vector
unsigned char __b) {
1244 static vector
unsigned char __ATTRS_o_ai vec_vandc(vector
bool char __a,
1245 vector
unsigned char __b) {
1246 return (vector
unsigned char)__a & ~__b;
1249 static vector
unsigned char __ATTRS_o_ai vec_vandc(vector
unsigned char __a,
1250 vector
bool char __b) {
1251 return __a & ~(vector
unsigned char)__b;
1254 static vector
bool char __ATTRS_o_ai vec_vandc(vector
bool char __a,
1255 vector
bool char __b) {
1259 static vector
short __ATTRS_o_ai vec_vandc(vector
short __a, vector
short __b) {
1263 static vector
short __ATTRS_o_ai vec_vandc(vector
bool short __a,
1265 return (vector
short)__a & ~__b;
1268 static vector
short __ATTRS_o_ai vec_vandc(vector
short __a,
1269 vector
bool short __b) {
1270 return __a & ~(vector short)__b;
1273 static vector
unsigned short __ATTRS_o_ai vec_vandc(vector
unsigned short __a,
1274 vector
unsigned short __b) {
1278 static vector
unsigned short __ATTRS_o_ai vec_vandc(vector
bool short __a,
1279 vector
unsigned short __b) {
1280 return (vector
unsigned short)__a & ~__b;
1283 static vector
unsigned short __ATTRS_o_ai vec_vandc(vector
unsigned short __a,
1284 vector
bool short __b) {
1285 return __a & ~(vector
unsigned short)__b;
1288 static vector
bool short __ATTRS_o_ai vec_vandc(vector
bool short __a,
1289 vector
bool short __b) {
1293 static vector
int __ATTRS_o_ai vec_vandc(vector
int __a, vector
int __b) {
1297 static vector
int __ATTRS_o_ai vec_vandc(vector
bool int __a, vector
int __b) {
1298 return (vector
int)__a & ~__b;
1301 static vector
int __ATTRS_o_ai vec_vandc(vector
int __a, vector
bool int __b) {
1302 return __a & ~(vector int)__b;
1305 static vector
unsigned int __ATTRS_o_ai vec_vandc(vector
unsigned int __a,
1306 vector
unsigned int __b) {
1310 static vector
unsigned int __ATTRS_o_ai vec_vandc(vector
bool int __a,
1311 vector
unsigned int __b) {
1312 return (vector
unsigned int)__a & ~__b;
1315 static vector
unsigned int __ATTRS_o_ai vec_vandc(vector
unsigned int __a,
1316 vector
bool int __b) {
1317 return __a & ~(vector
unsigned int)__b;
1320 static vector
bool int __ATTRS_o_ai vec_vandc(vector
bool int __a,
1321 vector
bool int __b) {
1325 static vector
float __ATTRS_o_ai vec_vandc(vector
float __a, vector
float __b) {
1326 vector
unsigned int __res =
1327 (vector
unsigned int)__a & ~(vector
unsigned int)
__b;
1328 return (vector
float)__res;
1331 static vector
float __ATTRS_o_ai vec_vandc(vector
bool int __a,
1333 vector
unsigned int __res =
1334 (vector
unsigned int)__a & ~(vector
unsigned int)
__b;
1335 return (vector
float)__res;
1338 static vector
float __ATTRS_o_ai vec_vandc(vector
float __a,
1339 vector
bool int __b) {
1340 vector
unsigned int __res =
1341 (vector
unsigned int)__a & ~(vector
unsigned int)
__b;
1342 return (vector
float)__res;
1347 vec_vandc(vector
signed long long __a, vector
signed long long __b) {
1352 vec_vandc(vector
bool long long __a, vector
signed long long __b) {
1353 return (vector
signed long long)__a & ~__b;
1357 vec_vandc(vector
signed long long __a, vector
bool long long __b) {
1358 return __a & ~(vector
signed long long)__b;
1362 vec_vandc(vector
unsigned long long __a, vector
unsigned long long __b) {
1367 vec_vandc(vector
bool long long __a, vector
unsigned long long __b) {
1368 return (vector
unsigned long long)__a & ~__b;
1372 vec_vandc(vector
unsigned long long __a, vector
bool long long __b) {
1373 return __a & ~(vector
unsigned long long)__b;
1376 static vector
bool long long __ATTRS_o_ai vec_vandc(vector
bool long long __a,
1377 vector
bool long long __b) {
1384 static vector
signed char __ATTRS_o_ai vec_avg(vector
signed char __a,
1385 vector
signed char __b) {
1386 return __builtin_altivec_vavgsb(__a, __b);
1389 static vector
unsigned char __ATTRS_o_ai vec_avg(vector
unsigned char __a,
1390 vector
unsigned char __b) {
1391 return __builtin_altivec_vavgub(__a, __b);
1394 static vector
short __ATTRS_o_ai vec_avg(vector
short __a, vector
short __b) {
1395 return __builtin_altivec_vavgsh(__a, __b);
1398 static vector
unsigned short __ATTRS_o_ai vec_avg(vector
unsigned short __a,
1399 vector
unsigned short __b) {
1400 return __builtin_altivec_vavguh(__a, __b);
1403 static vector
int __ATTRS_o_ai vec_avg(vector
int __a, vector
int __b) {
1404 return __builtin_altivec_vavgsw(__a, __b);
1407 static vector
unsigned int __ATTRS_o_ai vec_avg(vector
unsigned int __a,
1408 vector
unsigned int __b) {
1409 return __builtin_altivec_vavguw(__a, __b);
1414 static vector
signed char __attribute__((__always_inline__))
1415 vec_vavgsb(vector
signed char __a, vector
signed char __b) {
1416 return __builtin_altivec_vavgsb(__a, __b);
1421 static vector
unsigned char __attribute__((__always_inline__))
1422 vec_vavgub(vector
unsigned char __a, vector
unsigned char __b) {
1423 return __builtin_altivec_vavgub(__a, __b);
1429 vec_vavgsh(vector
short __a, vector
short __b) {
1430 return __builtin_altivec_vavgsh(__a, __b);
1435 static vector
unsigned short __attribute__((__always_inline__))
1436 vec_vavguh(vector
unsigned short __a, vector
unsigned short __b) {
1437 return __builtin_altivec_vavguh(__a, __b);
1443 vec_vavgsw(vector
int __a, vector
int __b) {
1444 return __builtin_altivec_vavgsw(__a, __b);
1449 static vector
unsigned int __attribute__((__always_inline__))
1450 vec_vavguw(vector
unsigned int __a, vector
unsigned int __b) {
1451 return __builtin_altivec_vavguw(__a, __b);
1456 static vector
float __ATTRS_o_ai vec_ceil(vector
float __a) {
1458 return __builtin_vsx_xvrspip(__a);
1460 return __builtin_altivec_vrfip(__a);
1465 static vector
double __ATTRS_o_ai vec_ceil(vector
double __a) {
1466 return __builtin_vsx_xvrdpip(__a);
1473 vec_vrfip(vector
float __a) {
1474 return __builtin_altivec_vrfip(__a);
1480 vec_cmpb(vector
float __a, vector
float __b) {
1481 return __builtin_altivec_vcmpbfp(__a, __b);
1487 vec_vcmpbfp(vector
float __a, vector
float __b) {
1488 return __builtin_altivec_vcmpbfp(__a, __b);
1493 static vector
bool char __ATTRS_o_ai vec_cmpeq(vector
signed char __a,
1494 vector
signed char __b) {
1495 return (vector
bool char)__builtin_altivec_vcmpequb((vector
char)__a,
1499 static vector
bool char __ATTRS_o_ai vec_cmpeq(vector
unsigned char __a,
1500 vector
unsigned char __b) {
1501 return (vector
bool char)__builtin_altivec_vcmpequb((vector
char)__a,
1505 static vector
bool short __ATTRS_o_ai vec_cmpeq(vector
short __a,
1507 return (vector
bool short)__builtin_altivec_vcmpequh(__a, __b);
1510 static vector
bool short __ATTRS_o_ai vec_cmpeq(vector
unsigned short __a,
1511 vector
unsigned short __b) {
1512 return (vector
bool short)__builtin_altivec_vcmpequh((vector
short)__a,
1516 static vector
bool int __ATTRS_o_ai vec_cmpeq(vector
int __a, vector
int __b) {
1517 return (vector
bool int)__builtin_altivec_vcmpequw(__a, __b);
1520 static vector
bool int __ATTRS_o_ai vec_cmpeq(vector
unsigned int __a,
1521 vector
unsigned int __b) {
1522 return (vector
bool int)__builtin_altivec_vcmpequw((vector
int)__a,
1526 #ifdef __POWER8_VECTOR__
1528 vec_cmpeq(vector
signed long long __a, vector
signed long long __b) {
1529 return (vector
bool long long)__builtin_altivec_vcmpequd(__a, __b);
1533 vec_cmpeq(vector
unsigned long long __a, vector
unsigned long long __b) {
1534 return (vector
bool long long)__builtin_altivec_vcmpequd(
1535 (vector
long long)__a, (vector
long long)__b);
1539 static vector
bool int __ATTRS_o_ai vec_cmpeq(vector
float __a,
1542 return (vector
bool int)__builtin_vsx_xvcmpeqsp(__a, __b);
1544 return (vector
bool int)__builtin_altivec_vcmpeqfp(__a, __b);
1550 vec_cmpeq(vector
double __a, vector
double __b) {
1551 return (vector
bool long long)__builtin_vsx_xvcmpeqdp(__a, __b);
1558 static vector
bool char __ATTRS_o_ai vec_cmpgt(vector
signed char __a,
1559 vector
signed char __b) {
1560 return (vector
bool char)__builtin_altivec_vcmpgtsb(__a, __b);
1563 static vector
bool char __ATTRS_o_ai vec_cmpgt(vector
unsigned char __a,
1564 vector
unsigned char __b) {
1565 return (vector
bool char)__builtin_altivec_vcmpgtub(__a, __b);
1568 static vector
bool short __ATTRS_o_ai vec_cmpgt(vector
short __a,
1570 return (vector
bool short)__builtin_altivec_vcmpgtsh(__a, __b);
1573 static vector
bool short __ATTRS_o_ai vec_cmpgt(vector
unsigned short __a,
1574 vector
unsigned short __b) {
1575 return (vector
bool short)__builtin_altivec_vcmpgtuh(__a, __b);
1578 static vector
bool int __ATTRS_o_ai vec_cmpgt(vector
int __a, vector
int __b) {
1579 return (vector
bool int)__builtin_altivec_vcmpgtsw(__a, __b);
1582 static vector
bool int __ATTRS_o_ai vec_cmpgt(vector
unsigned int __a,
1583 vector
unsigned int __b) {
1584 return (vector
bool int)__builtin_altivec_vcmpgtuw(__a, __b);
1587 #ifdef __POWER8_VECTOR__
1589 vec_cmpgt(vector
signed long long __a, vector
signed long long __b) {
1590 return (vector
bool long long)__builtin_altivec_vcmpgtsd(__a, __b);
1594 vec_cmpgt(vector
unsigned long long __a, vector
unsigned long long __b) {
1595 return (vector
bool long long)__builtin_altivec_vcmpgtud(__a, __b);
1599 static vector
bool int __ATTRS_o_ai vec_cmpgt(vector
float __a,
1602 return (vector
bool int)__builtin_vsx_xvcmpgtsp(__a, __b);
1604 return (vector
bool int)__builtin_altivec_vcmpgtfp(__a, __b);
1610 vec_cmpgt(vector
double __a, vector
double __b) {
1611 return (vector
bool long long)__builtin_vsx_xvcmpgtdp(__a, __b);
1618 vec_cmpge (vector
signed char __a, vector
signed char __b) {
1619 return ~(vec_cmpgt(__b, __a));
1623 vec_cmpge (vector
unsigned char __a, vector
unsigned char __b) {
1624 return ~(vec_cmpgt(__b, __a));
1628 vec_cmpge (vector
signed short __a, vector
signed short __b) {
1629 return ~(vec_cmpgt(__b, __a));
1633 vec_cmpge (vector
unsigned short __a, vector
unsigned short __b) {
1634 return ~(vec_cmpgt(__b, __a));
1638 vec_cmpge (vector
signed int __a, vector
signed int __b) {
1639 return ~(vec_cmpgt(__b, __a));
1643 vec_cmpge (vector
unsigned int __a, vector
unsigned int __b) {
1644 return ~(vec_cmpgt(__b, __a));
1648 vec_cmpge(vector
float __a, vector
float __b) {
1650 return (vector
bool int)__builtin_vsx_xvcmpgesp(__a, __b);
1652 return (vector
bool int)__builtin_altivec_vcmpgefp(__a, __b);
1658 vec_cmpge(vector
double __a, vector
double __b) {
1659 return (vector
bool long long)__builtin_vsx_xvcmpgedp(__a, __b);
1663 #ifdef __POWER8_VECTOR__
1665 vec_cmpge(vector
signed long long __a, vector
signed long long __b) {
1666 return ~(vec_cmpgt(__b, __a));
1670 vec_cmpge(vector
unsigned long long __a, vector
unsigned long long __b) {
1671 return ~(vec_cmpgt(__b, __a));
1678 vec_vcmpgefp(vector
float __a, vector
float __b) {
1679 return (vector
bool int)__builtin_altivec_vcmpgefp(__a, __b);
1685 vec_vcmpgtsb(vector
signed char __a, vector
signed char __b) {
1686 return (vector
bool char)__builtin_altivec_vcmpgtsb(__a, __b);
1692 vec_vcmpgtub(vector
unsigned char __a, vector
unsigned char __b) {
1693 return (vector
bool char)__builtin_altivec_vcmpgtub(__a, __b);
1699 vec_vcmpgtsh(vector
short __a, vector
short __b) {
1700 return (vector
bool short)__builtin_altivec_vcmpgtsh(__a, __b);
1706 vec_vcmpgtuh(vector
unsigned short __a, vector
unsigned short __b) {
1707 return (vector
bool short)__builtin_altivec_vcmpgtuh(__a, __b);
1713 vec_vcmpgtsw(vector
int __a, vector
int __b) {
1714 return (vector
bool int)__builtin_altivec_vcmpgtsw(__a, __b);
1720 vec_vcmpgtuw(vector
unsigned int __a, vector
unsigned int __b) {
1721 return (vector
bool int)__builtin_altivec_vcmpgtuw(__a, __b);
1727 vec_vcmpgtfp(vector
float __a, vector
float __b) {
1728 return (vector
bool int)__builtin_altivec_vcmpgtfp(__a, __b);
1734 vec_cmple (vector
signed char __a, vector
signed char __b) {
1735 return vec_cmpge(__b, __a);
1739 vec_cmple (vector
unsigned char __a, vector
unsigned char __b) {
1740 return vec_cmpge(__b, __a);
1744 vec_cmple (vector
signed short __a, vector
signed short __b) {
1745 return vec_cmpge(__b, __a);
1749 vec_cmple (vector
unsigned short __a, vector
unsigned short __b) {
1750 return vec_cmpge(__b, __a);
1754 vec_cmple (vector
signed int __a, vector
signed int __b) {
1755 return vec_cmpge(__b, __a);
1759 vec_cmple (vector
unsigned int __a, vector
unsigned int __b) {
1760 return vec_cmpge(__b, __a);
1764 vec_cmple(vector
float __a, vector
float __b) {
1765 return vec_cmpge(__b, __a);
1770 vec_cmple(vector
double __a, vector
double __b) {
1771 return vec_cmpge(__b, __a);
1775 #ifdef __POWER8_VECTOR__
1777 vec_cmple(vector
signed long long __a, vector
signed long long __b) {
1778 return vec_cmpge(__b, __a);
1782 vec_cmple(vector
unsigned long long __a, vector
unsigned long long __b) {
1783 return vec_cmpge(__b, __a);
1789 static vector
bool char __ATTRS_o_ai vec_cmplt(vector
signed char __a,
1790 vector
signed char __b) {
1791 return vec_cmpgt(__b, __a);
1794 static vector
bool char __ATTRS_o_ai vec_cmplt(vector
unsigned char __a,
1795 vector
unsigned char __b) {
1796 return vec_cmpgt(__b, __a);
1799 static vector
bool short __ATTRS_o_ai vec_cmplt(vector
short __a,
1801 return vec_cmpgt(__b, __a);
1804 static vector
bool short __ATTRS_o_ai vec_cmplt(vector
unsigned short __a,
1805 vector
unsigned short __b) {
1806 return vec_cmpgt(__b, __a);
1809 static vector
bool int __ATTRS_o_ai vec_cmplt(vector
int __a, vector
int __b) {
1810 return vec_cmpgt(__b, __a);
1813 static vector
bool int __ATTRS_o_ai vec_cmplt(vector
unsigned int __a,
1814 vector
unsigned int __b) {
1815 return vec_cmpgt(__b, __a);
1818 static vector
bool int __ATTRS_o_ai vec_cmplt(vector
float __a,
1820 return vec_cmpgt(__b, __a);
1825 vec_cmplt(vector
double __a, vector
double __b) {
1826 return vec_cmpgt(__b, __a);
1830 #ifdef __POWER8_VECTOR__
1832 vec_cmplt(vector
signed long long __a, vector
signed long long __b) {
1833 return vec_cmpgt(__b, __a);
1837 vec_cmplt(vector
unsigned long long __a, vector
unsigned long long __b) {
1838 return vec_cmpgt(__b, __a);
1843 static vector
signed char __ATTRS_o_ai vec_cntlz(vector
signed char __a) {
1844 return __builtin_altivec_vclzb(__a);
1846 static vector
unsigned char __ATTRS_o_ai vec_cntlz(vector
unsigned char __a) {
1847 return __builtin_altivec_vclzb(__a);
1849 static vector
signed short __ATTRS_o_ai vec_cntlz(vector
signed short __a) {
1850 return __builtin_altivec_vclzh(__a);
1852 static vector
unsigned short __ATTRS_o_ai vec_cntlz(vector
unsigned short __a) {
1853 return __builtin_altivec_vclzh(__a);
1855 static vector
signed int __ATTRS_o_ai vec_cntlz(vector
signed int __a) {
1856 return __builtin_altivec_vclzw(__a);
1858 static vector
unsigned int __ATTRS_o_ai vec_cntlz(vector
unsigned int __a) {
1859 return __builtin_altivec_vclzw(__a);
1862 vec_cntlz(vector
signed long long __a) {
1863 return __builtin_altivec_vclzd(__a);
1866 vec_cntlz(vector
unsigned long long __a) {
1867 return __builtin_altivec_vclzd(__a);
1874 static vector
float __ATTRS_o_ai vec_cpsgn(vector
float __a, vector
float __b) {
1875 return __builtin_vsx_xvcpsgnsp(__a, __b);
1878 static vector
double __ATTRS_o_ai vec_cpsgn(vector
double __a,
1879 vector
double __b) {
1880 return __builtin_vsx_xvcpsgndp(__a, __b);
1886 static vector
float __ATTRS_o_ai vec_ctf(vector
int __a,
int __b) {
1887 return __builtin_altivec_vcfsx(__a, __b);
1890 static vector
float __ATTRS_o_ai vec_ctf(vector
unsigned int __a,
int __b) {
1891 return __builtin_altivec_vcfux((vector
int)__a, __b);
1895 static vector
double __ATTRS_o_ai vec_ctf(vector
unsigned long long __a,
1897 vector
double __ret = __builtin_convertvector(__a, vector
double);
1898 __ret *= (vector double)(vector
unsigned long long)((0x3ffULL -
__b) << 52);
1902 static vector
double __ATTRS_o_ai vec_ctf(vector
signed long long __a,
1904 vector
double __ret = __builtin_convertvector(__a, vector
double);
1905 __ret *= (vector double)(vector
unsigned long long)((0x3ffULL -
__b) << 52);
1913 vec_vcfsx(vector
int __a,
int __b) {
1914 return __builtin_altivec_vcfsx(__a, __b);
1920 vec_vcfux(vector
unsigned int __a,
int __b) {
1921 return __builtin_altivec_vcfux((vector
int)__a, __b);
1926 static vector
int __ATTRS_o_ai vec_cts(vector
float __a,
int __b) {
1927 return __builtin_altivec_vctsxs(__a, __b);
1931 static vector
signed long long __ATTRS_o_ai vec_cts(vector
double __a,
1933 __a *= (vector double)(vector
unsigned long long)((0x3ffULL +
__b) << 52);
1934 return __builtin_convertvector(__a, vector
signed long long);
1941 vec_vctsxs(vector
float __a,
int __b) {
1942 return __builtin_altivec_vctsxs(__a, __b);
1947 static vector
unsigned int __ATTRS_o_ai vec_ctu(vector
float __a,
int __b) {
1948 return __builtin_altivec_vctuxs(__a, __b);
1952 static vector
unsigned long long __ATTRS_o_ai vec_ctu(vector
double __a,
1954 __a *= (vector double)(vector
unsigned long long)((0x3ffULL +
__b) << 52);
1955 return __builtin_convertvector(__a, vector
unsigned long long);
1961 static vector
unsigned int __attribute__((__always_inline__))
1962 vec_vctuxs(vector
float __a,
int __b) {
1963 return __builtin_altivec_vctuxs(__a, __b);
1969 static vector
double __ATTRS_o_ai vec_double (vector
signed long long __a) {
1970 vector
double __ret = { __a[0], __a[1] };
1974 static vector
double __ATTRS_o_ai vec_double (vector
unsigned long long __a) {
1975 vector
double __ret = { __a[0], __a[1] };
1985 static vector
signed char __ATTRS_o_ai vec_div(vector
signed char __a,
1986 vector
signed char __b) {
1990 static vector
unsigned char __ATTRS_o_ai vec_div(vector
unsigned char __a,
1991 vector
unsigned char __b) {
1995 static vector
signed short __ATTRS_o_ai vec_div(vector
signed short __a,
1996 vector
signed short __b) {
2000 static vector
unsigned short __ATTRS_o_ai vec_div(vector
unsigned short __a,
2001 vector
unsigned short __b) {
2005 static vector
signed int __ATTRS_o_ai vec_div(vector
signed int __a,
2006 vector
signed int __b) {
2010 static vector
unsigned int __ATTRS_o_ai vec_div(vector
unsigned int __a,
2011 vector
unsigned int __b) {
2017 vec_div(vector
signed long long __a, vector
signed long long __b) {
2022 vec_div(vector
unsigned long long __a, vector
unsigned long long __b) {
2026 static vector
float __ATTRS_o_ai vec_div(vector
float __a, vector
float __b) {
2030 static vector
double __ATTRS_o_ai vec_div(vector
double __a,
2031 vector
double __b) {
2038 static void __attribute__((__always_inline__)) vec_dss(
int __a) {
2039 __builtin_altivec_dss(__a);
2044 static void __attribute__((__always_inline__)) vec_dssall(
void) {
2045 __builtin_altivec_dssall();
2051 vec_dst(const
void *__a,
int __b,
int __c) {
2052 __builtin_altivec_dst(__a, __b, __c);
2058 vec_dstst(const
void *__a,
int __b,
int __c) {
2059 __builtin_altivec_dstst(__a, __b, __c);
2065 vec_dststt(const
void *__a,
int __b,
int __c) {
2066 __builtin_altivec_dststt(__a, __b, __c);
2072 vec_dstt(const
void *__a,
int __b,
int __c) {
2073 __builtin_altivec_dstt(__a, __b, __c);
2078 #ifdef __POWER8_VECTOR__
2079 static vector
signed char __ATTRS_o_ai vec_eqv(vector
signed char __a,
2080 vector
signed char __b) {
2081 return (vector
signed char)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2082 (vector
unsigned int)__b);
2085 static vector
unsigned char __ATTRS_o_ai vec_eqv(vector
unsigned char __a,
2086 vector
unsigned char __b) {
2087 return (vector
unsigned char)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2088 (vector
unsigned int)__b);
2091 static vector
bool char __ATTRS_o_ai vec_eqv(vector
bool char __a,
2092 vector
bool char __b) {
2093 return (vector
bool char)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2094 (vector
unsigned int)__b);
2097 static vector
signed short __ATTRS_o_ai vec_eqv(vector
signed short __a,
2098 vector
signed short __b) {
2099 return (vector
signed short)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2100 (vector
unsigned int)__b);
2103 static vector
unsigned short __ATTRS_o_ai vec_eqv(vector
unsigned short __a,
2104 vector
unsigned short __b) {
2105 return (vector
unsigned short)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2106 (vector
unsigned int)__b);
2109 static vector
bool short __ATTRS_o_ai vec_eqv(vector
bool short __a,
2110 vector
bool short __b) {
2111 return (vector
bool short)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2112 (vector
unsigned int)__b);
2115 static vector
signed int __ATTRS_o_ai vec_eqv(vector
signed int __a,
2116 vector
signed int __b) {
2117 return (vector
signed int)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2118 (vector
unsigned int)__b);
2121 static vector
unsigned int __ATTRS_o_ai vec_eqv(vector
unsigned int __a,
2122 vector
unsigned int __b) {
2123 return __builtin_vsx_xxleqv(__a, __b);
2126 static vector
bool int __ATTRS_o_ai vec_eqv(vector
bool int __a,
2127 vector
bool int __b) {
2128 return (vector
bool int)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2129 (vector
unsigned int)__b);
2133 vec_eqv(vector
signed long long __a, vector
signed long long __b) {
2134 return (vector
signed long long)
2135 __builtin_vsx_xxleqv((vector
unsigned int)__a, (vector
unsigned int)__b);
2139 vec_eqv(vector
unsigned long long __a, vector
unsigned long long __b) {
2140 return (vector
unsigned long long)
2141 __builtin_vsx_xxleqv((vector
unsigned int)__a, (vector
unsigned int)__b);
2145 vec_eqv(vector
bool long long __a, vector
bool long long __b) {
2146 return (vector
bool long long)
2147 __builtin_vsx_xxleqv((vector
unsigned int)__a, (vector
unsigned int)__b);
2150 static vector
float __ATTRS_o_ai vec_eqv(vector
float __a, vector
float __b) {
2151 return (vector
float)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2152 (vector
unsigned int)__b);
2155 static vector
double __ATTRS_o_ai vec_eqv(vector
double __a,
2156 vector
double __b) {
2157 return (vector
double)__builtin_vsx_xxleqv((vector
unsigned int)__a,
2158 (vector
unsigned int)__b);
2165 vec_expte(vector
float __a) {
2166 return __builtin_altivec_vexptefp(__a);
2172 vec_vexptefp(vector
float __a) {
2173 return __builtin_altivec_vexptefp(__a);
2178 static vector
float __ATTRS_o_ai vec_floor(vector
float __a) {
2180 return __builtin_vsx_xvrspim(__a);
2182 return __builtin_altivec_vrfim(__a);
2187 static vector
double __ATTRS_o_ai vec_floor(vector
double __a) {
2188 return __builtin_vsx_xvrdpim(__a);
2195 vec_vrfim(vector
float __a) {
2196 return __builtin_altivec_vrfim(__a);
2202 const vector
signed char *__b) {
2203 return (vector
signed char)__builtin_altivec_lvx(__a, __b);
2206 static vector
signed char __ATTRS_o_ai vec_ld(
int __a,
const signed char *__b) {
2207 return (vector
signed char)__builtin_altivec_lvx(__a, __b);
2211 vec_ld(
int __a,
const vector
unsigned char *__b) {
2212 return (vector
unsigned char)__builtin_altivec_lvx(__a, __b);
2215 static vector
unsigned char __ATTRS_o_ai vec_ld(
int __a,
2216 const unsigned char *__b) {
2217 return (vector
unsigned char)__builtin_altivec_lvx(__a, __b);
2221 const vector
bool char *__b) {
2222 return (vector
bool char)__builtin_altivec_lvx(__a, __b);
2225 static vector
short __ATTRS_o_ai vec_ld(
int __a,
const vector
short *__b) {
2226 return (vector
short)__builtin_altivec_lvx(__a, __b);
2229 static vector
short __ATTRS_o_ai vec_ld(
int __a,
const short *__b) {
2230 return (vector
short)__builtin_altivec_lvx(__a, __b);
2234 vec_ld(
int __a,
const vector
unsigned short *__b) {
2235 return (vector
unsigned short)__builtin_altivec_lvx(__a, __b);
2238 static vector
unsigned short __ATTRS_o_ai vec_ld(
int __a,
2239 const unsigned short *__b) {
2240 return (vector
unsigned short)__builtin_altivec_lvx(__a, __b);
2244 const vector
bool short *__b) {
2245 return (vector
bool short)__builtin_altivec_lvx(__a, __b);
2248 static vector pixel
__ATTRS_o_ai vec_ld(
int __a,
const vector pixel *__b) {
2249 return (vector pixel)__builtin_altivec_lvx(__a, __b);
2252 static vector
int __ATTRS_o_ai vec_ld(
int __a,
const vector
int *__b) {
2253 return (vector
int)__builtin_altivec_lvx(__a, __b);
2256 static vector
int __ATTRS_o_ai vec_ld(
int __a,
const int *__b) {
2257 return (vector
int)__builtin_altivec_lvx(__a, __b);
2260 static vector
unsigned int __ATTRS_o_ai vec_ld(
int __a,
2261 const vector
unsigned int *__b) {
2262 return (vector
unsigned int)__builtin_altivec_lvx(__a, __b);
2265 static vector
unsigned int __ATTRS_o_ai vec_ld(
int __a,
2266 const unsigned int *__b) {
2267 return (vector
unsigned int)__builtin_altivec_lvx(__a, __b);
2271 const vector
bool int *__b) {
2272 return (vector
bool int)__builtin_altivec_lvx(__a, __b);
2275 static vector
float __ATTRS_o_ai vec_ld(
int __a,
const vector
float *__b) {
2276 return (vector
float)__builtin_altivec_lvx(__a, __b);
2279 static vector
float __ATTRS_o_ai vec_ld(
int __a,
const float *__b) {
2280 return (vector
float)__builtin_altivec_lvx(__a, __b);
2285 static vector
signed char __ATTRS_o_ai vec_lvx(
int __a,
2286 const vector
signed char *__b) {
2287 return (vector
signed char)__builtin_altivec_lvx(__a, __b);
2290 static vector
signed char __ATTRS_o_ai vec_lvx(
int __a,
2291 const signed char *__b) {
2292 return (vector
signed char)__builtin_altivec_lvx(__a, __b);
2296 vec_lvx(
int __a,
const vector
unsigned char *__b) {
2297 return (vector
unsigned char)__builtin_altivec_lvx(__a, __b);
2300 static vector
unsigned char __ATTRS_o_ai vec_lvx(
int __a,
2301 const unsigned char *__b) {
2302 return (vector
unsigned char)__builtin_altivec_lvx(__a, __b);
2306 const vector
bool char *__b) {
2307 return (vector
bool char)__builtin_altivec_lvx(__a, __b);
2310 static vector
short __ATTRS_o_ai vec_lvx(
int __a,
const vector
short *__b) {
2311 return (vector
short)__builtin_altivec_lvx(__a, __b);
2314 static vector
short __ATTRS_o_ai vec_lvx(
int __a,
const short *__b) {
2315 return (vector
short)__builtin_altivec_lvx(__a, __b);
2319 vec_lvx(
int __a,
const vector
unsigned short *__b) {
2320 return (vector
unsigned short)__builtin_altivec_lvx(__a, __b);
2323 static vector
unsigned short __ATTRS_o_ai vec_lvx(
int __a,
2324 const unsigned short *__b) {
2325 return (vector
unsigned short)__builtin_altivec_lvx(__a, __b);
2329 const vector
bool short *__b) {
2330 return (vector
bool short)__builtin_altivec_lvx(__a, __b);
2333 static vector pixel
__ATTRS_o_ai vec_lvx(
int __a,
const vector pixel *__b) {
2334 return (vector pixel)__builtin_altivec_lvx(__a, __b);
2337 static vector
int __ATTRS_o_ai vec_lvx(
int __a,
const vector
int *__b) {
2338 return (vector
int)__builtin_altivec_lvx(__a, __b);
2341 static vector
int __ATTRS_o_ai vec_lvx(
int __a,
const int *__b) {
2342 return (vector
int)__builtin_altivec_lvx(__a, __b);
2346 vec_lvx(
int __a,
const vector
unsigned int *__b) {
2347 return (vector
unsigned int)__builtin_altivec_lvx(__a, __b);
2350 static vector
unsigned int __ATTRS_o_ai vec_lvx(
int __a,
2351 const unsigned int *__b) {
2352 return (vector
unsigned int)__builtin_altivec_lvx(__a, __b);
2356 const vector
bool int *__b) {
2357 return (vector
bool int)__builtin_altivec_lvx(__a, __b);
2360 static vector
float __ATTRS_o_ai vec_lvx(
int __a,
const vector
float *__b) {
2361 return (vector
float)__builtin_altivec_lvx(__a, __b);
2364 static vector
float __ATTRS_o_ai vec_lvx(
int __a,
const float *__b) {
2365 return (vector
float)__builtin_altivec_lvx(__a, __b);
2370 static vector
signed char __ATTRS_o_ai vec_lde(
int __a,
2371 const signed char *__b) {
2372 return (vector
signed char)__builtin_altivec_lvebx(__a, __b);
2375 static vector
unsigned char __ATTRS_o_ai vec_lde(
int __a,
2376 const unsigned char *__b) {
2377 return (vector
unsigned char)__builtin_altivec_lvebx(__a, __b);
2380 static vector
short __ATTRS_o_ai vec_lde(
int __a,
const short *__b) {
2381 return (vector
short)__builtin_altivec_lvehx(__a, __b);
2384 static vector
unsigned short __ATTRS_o_ai vec_lde(
int __a,
2385 const unsigned short *__b) {
2386 return (vector
unsigned short)__builtin_altivec_lvehx(__a, __b);
2389 static vector
int __ATTRS_o_ai vec_lde(
int __a,
const int *__b) {
2390 return (vector
int)__builtin_altivec_lvewx(__a, __b);
2393 static vector
unsigned int __ATTRS_o_ai vec_lde(
int __a,
2394 const unsigned int *__b) {
2395 return (vector
unsigned int)__builtin_altivec_lvewx(__a, __b);
2398 static vector
float __ATTRS_o_ai vec_lde(
int __a,
const float *__b) {
2399 return (vector
float)__builtin_altivec_lvewx(__a, __b);
2404 static vector
signed char __ATTRS_o_ai vec_lvebx(
int __a,
2405 const signed char *__b) {
2406 return (vector
signed char)__builtin_altivec_lvebx(__a, __b);
2409 static vector
unsigned char __ATTRS_o_ai vec_lvebx(
int __a,
2410 const unsigned char *__b) {
2411 return (vector
unsigned char)__builtin_altivec_lvebx(__a, __b);
2416 static vector
short __ATTRS_o_ai vec_lvehx(
int __a,
const short *__b) {
2417 return (vector
short)__builtin_altivec_lvehx(__a, __b);
2420 static vector
unsigned short __ATTRS_o_ai vec_lvehx(
int __a,
2421 const unsigned short *__b) {
2422 return (vector
unsigned short)__builtin_altivec_lvehx(__a, __b);
2427 static vector
int __ATTRS_o_ai vec_lvewx(
int __a,
const int *__b) {
2428 return (vector
int)__builtin_altivec_lvewx(__a, __b);
2431 static vector
unsigned int __ATTRS_o_ai vec_lvewx(
int __a,
2432 const unsigned int *__b) {
2433 return (vector
unsigned int)__builtin_altivec_lvewx(__a, __b);
2436 static vector
float __ATTRS_o_ai vec_lvewx(
int __a,
const float *__b) {
2437 return (vector
float)__builtin_altivec_lvewx(__a, __b);
2442 static vector
signed char __ATTRS_o_ai vec_ldl(
int __a,
2443 const vector
signed char *__b) {
2444 return (vector
signed char)__builtin_altivec_lvxl(__a, __b);
2447 static vector
signed char __ATTRS_o_ai vec_ldl(
int __a,
2448 const signed char *__b) {
2449 return (vector
signed char)__builtin_altivec_lvxl(__a, __b);
2453 vec_ldl(
int __a,
const vector
unsigned char *__b) {
2454 return (vector
unsigned char)__builtin_altivec_lvxl(__a, __b);
2457 static vector
unsigned char __ATTRS_o_ai vec_ldl(
int __a,
2458 const unsigned char *__b) {
2459 return (vector
unsigned char)__builtin_altivec_lvxl(__a, __b);
2463 const vector
bool char *__b) {
2464 return (vector
bool char)__builtin_altivec_lvxl(__a, __b);
2467 static vector
short __ATTRS_o_ai vec_ldl(
int __a,
const vector
short *__b) {
2468 return (vector
short)__builtin_altivec_lvxl(__a, __b);
2471 static vector
short __ATTRS_o_ai vec_ldl(
int __a,
const short *__b) {
2472 return (vector
short)__builtin_altivec_lvxl(__a, __b);
2476 vec_ldl(
int __a,
const vector
unsigned short *__b) {
2477 return (vector
unsigned short)__builtin_altivec_lvxl(__a, __b);
2480 static vector
unsigned short __ATTRS_o_ai vec_ldl(
int __a,
2481 const unsigned short *__b) {
2482 return (vector
unsigned short)__builtin_altivec_lvxl(__a, __b);
2486 const vector
bool short *__b) {
2487 return (vector
bool short)__builtin_altivec_lvxl(__a, __b);
2490 static vector pixel
__ATTRS_o_ai vec_ldl(
int __a,
const vector pixel *__b) {
2491 return (vector pixel
short)__builtin_altivec_lvxl(__a, __b);
2494 static vector
int __ATTRS_o_ai vec_ldl(
int __a,
const vector
int *__b) {
2495 return (vector
int)__builtin_altivec_lvxl(__a, __b);
2498 static vector
int __ATTRS_o_ai vec_ldl(
int __a,
const int *__b) {
2499 return (vector
int)__builtin_altivec_lvxl(__a, __b);
2503 vec_ldl(
int __a,
const vector
unsigned int *__b) {
2504 return (vector
unsigned int)__builtin_altivec_lvxl(__a, __b);
2507 static vector
unsigned int __ATTRS_o_ai vec_ldl(
int __a,
2508 const unsigned int *__b) {
2509 return (vector
unsigned int)__builtin_altivec_lvxl(__a, __b);
2513 const vector
bool int *__b) {
2514 return (vector
bool int)__builtin_altivec_lvxl(__a, __b);
2517 static vector
float __ATTRS_o_ai vec_ldl(
int __a,
const vector
float *__b) {
2518 return (vector
float)__builtin_altivec_lvxl(__a, __b);
2521 static vector
float __ATTRS_o_ai vec_ldl(
int __a,
const float *__b) {
2522 return (vector
float)__builtin_altivec_lvxl(__a, __b);
2527 static vector
signed char __ATTRS_o_ai vec_lvxl(
int __a,
2528 const vector
signed char *__b) {
2529 return (vector
signed char)__builtin_altivec_lvxl(__a, __b);
2532 static vector
signed char __ATTRS_o_ai vec_lvxl(
int __a,
2533 const signed char *__b) {
2534 return (vector
signed char)__builtin_altivec_lvxl(__a, __b);
2538 vec_lvxl(
int __a,
const vector
unsigned char *__b) {
2539 return (vector
unsigned char)__builtin_altivec_lvxl(__a, __b);
2542 static vector
unsigned char __ATTRS_o_ai vec_lvxl(
int __a,
2543 const unsigned char *__b) {
2544 return (vector
unsigned char)__builtin_altivec_lvxl(__a, __b);
2548 const vector
bool char *__b) {
2549 return (vector
bool char)__builtin_altivec_lvxl(__a, __b);
2552 static vector
short __ATTRS_o_ai vec_lvxl(
int __a,
const vector
short *__b) {
2553 return (vector
short)__builtin_altivec_lvxl(__a, __b);
2556 static vector
short __ATTRS_o_ai vec_lvxl(
int __a,
const short *__b) {
2557 return (vector
short)__builtin_altivec_lvxl(__a, __b);
2561 vec_lvxl(
int __a,
const vector
unsigned short *__b) {
2562 return (vector
unsigned short)__builtin_altivec_lvxl(__a, __b);
2565 static vector
unsigned short __ATTRS_o_ai vec_lvxl(
int __a,
2566 const unsigned short *__b) {
2567 return (vector
unsigned short)__builtin_altivec_lvxl(__a, __b);
2570 static vector
bool short __ATTRS_o_ai vec_lvxl(
int __a,
2571 const vector
bool short *__b) {
2572 return (vector
bool short)__builtin_altivec_lvxl(__a, __b);
2575 static vector pixel
__ATTRS_o_ai vec_lvxl(
int __a,
const vector pixel *__b) {
2576 return (vector pixel)__builtin_altivec_lvxl(__a, __b);
2579 static vector
int __ATTRS_o_ai vec_lvxl(
int __a,
const vector
int *__b) {
2580 return (vector
int)__builtin_altivec_lvxl(__a, __b);
2583 static vector
int __ATTRS_o_ai vec_lvxl(
int __a,
const int *__b) {
2584 return (vector
int)__builtin_altivec_lvxl(__a, __b);
2588 vec_lvxl(
int __a,
const vector
unsigned int *__b) {
2589 return (vector
unsigned int)__builtin_altivec_lvxl(__a, __b);
2592 static vector
unsigned int __ATTRS_o_ai vec_lvxl(
int __a,
2593 const unsigned int *__b) {
2594 return (vector
unsigned int)__builtin_altivec_lvxl(__a, __b);
2598 const vector
bool int *__b) {
2599 return (vector
bool int)__builtin_altivec_lvxl(__a, __b);
2602 static vector
float __ATTRS_o_ai vec_lvxl(
int __a,
const vector
float *__b) {
2603 return (vector
float)__builtin_altivec_lvxl(__a, __b);
2606 static vector
float __ATTRS_o_ai vec_lvxl(
int __a,
const float *__b) {
2607 return (vector
float)__builtin_altivec_lvxl(__a, __b);
2613 vec_loge(vector
float __a) {
2614 return __builtin_altivec_vlogefp(__a);
2620 vec_vlogefp(vector
float __a) {
2621 return __builtin_altivec_vlogefp(__a);
2626 #ifdef __LITTLE_ENDIAN__
2628 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2629 loads/stores"))) vec_lvsl(
int __a, const
signed char *__b) {
2630 vector
unsigned char mask =
2631 (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2632 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2633 7, 6, 5, 4, 3, 2, 1, 0};
2634 return vec_perm(mask, mask, reverse);
2637 static vector
unsigned char __ATTRS_o_ai vec_lvsl(
int __a,
2638 const signed char *__b) {
2639 return (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2643 #ifdef __LITTLE_ENDIAN__
2645 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2646 loads/stores"))) vec_lvsl(
int __a, const
unsigned char *__b) {
2647 vector
unsigned char mask =
2648 (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2649 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2650 7, 6, 5, 4, 3, 2, 1, 0};
2651 return vec_perm(mask, mask, reverse);
2654 static vector
unsigned char __ATTRS_o_ai vec_lvsl(
int __a,
2655 const unsigned char *__b) {
2656 return (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2660 #ifdef __LITTLE_ENDIAN__
2662 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2663 loads/stores"))) vec_lvsl(
int __a, const
short *__b) {
2664 vector
unsigned char mask =
2665 (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2666 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2667 7, 6, 5, 4, 3, 2, 1, 0};
2668 return vec_perm(mask, mask, reverse);
2671 static vector
unsigned char __ATTRS_o_ai vec_lvsl(
int __a,
const short *__b) {
2672 return (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2676 #ifdef __LITTLE_ENDIAN__
2678 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2679 loads/stores"))) vec_lvsl(
int __a, const
unsigned short *__b) {
2680 vector
unsigned char mask =
2681 (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2682 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2683 7, 6, 5, 4, 3, 2, 1, 0};
2684 return vec_perm(mask, mask, reverse);
2687 static vector
unsigned char __ATTRS_o_ai vec_lvsl(
int __a,
2688 const unsigned short *__b) {
2689 return (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2693 #ifdef __LITTLE_ENDIAN__
2695 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2696 loads/stores"))) vec_lvsl(
int __a, const
int *__b) {
2697 vector
unsigned char mask =
2698 (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2699 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2700 7, 6, 5, 4, 3, 2, 1, 0};
2701 return vec_perm(mask, mask, reverse);
2704 static vector
unsigned char __ATTRS_o_ai vec_lvsl(
int __a,
const int *__b) {
2705 return (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2709 #ifdef __LITTLE_ENDIAN__
2711 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2712 loads/stores"))) vec_lvsl(
int __a, const
unsigned int *__b) {
2713 vector
unsigned char mask =
2714 (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2715 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2716 7, 6, 5, 4, 3, 2, 1, 0};
2717 return vec_perm(mask, mask, reverse);
2720 static vector
unsigned char __ATTRS_o_ai vec_lvsl(
int __a,
2721 const unsigned int *__b) {
2722 return (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2726 #ifdef __LITTLE_ENDIAN__
2728 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2729 loads/stores"))) vec_lvsl(
int __a, const
float *__b) {
2730 vector
unsigned char mask =
2731 (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2732 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2733 7, 6, 5, 4, 3, 2, 1, 0};
2734 return vec_perm(mask, mask, reverse);
2737 static vector
unsigned char __ATTRS_o_ai vec_lvsl(
int __a,
const float *__b) {
2738 return (vector
unsigned char)__builtin_altivec_lvsl(__a, __b);
2744 #ifdef __LITTLE_ENDIAN__
2746 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2747 loads/stores"))) vec_lvsr(
int __a, const
signed char *__b) {
2748 vector
unsigned char mask =
2749 (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2750 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2751 7, 6, 5, 4, 3, 2, 1, 0};
2752 return vec_perm(mask, mask, reverse);
2755 static vector
unsigned char __ATTRS_o_ai vec_lvsr(
int __a,
2756 const signed char *__b) {
2757 return (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2761 #ifdef __LITTLE_ENDIAN__
2763 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2764 loads/stores"))) vec_lvsr(
int __a, const
unsigned char *__b) {
2765 vector
unsigned char mask =
2766 (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2767 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2768 7, 6, 5, 4, 3, 2, 1, 0};
2769 return vec_perm(mask, mask, reverse);
2772 static vector
unsigned char __ATTRS_o_ai vec_lvsr(
int __a,
2773 const unsigned char *__b) {
2774 return (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2778 #ifdef __LITTLE_ENDIAN__
2780 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2781 loads/stores"))) vec_lvsr(
int __a, const
short *__b) {
2782 vector
unsigned char mask =
2783 (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2784 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2785 7, 6, 5, 4, 3, 2, 1, 0};
2786 return vec_perm(mask, mask, reverse);
2789 static vector
unsigned char __ATTRS_o_ai vec_lvsr(
int __a,
const short *__b) {
2790 return (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2794 #ifdef __LITTLE_ENDIAN__
2796 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2797 loads/stores"))) vec_lvsr(
int __a, const
unsigned short *__b) {
2798 vector
unsigned char mask =
2799 (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2800 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2801 7, 6, 5, 4, 3, 2, 1, 0};
2802 return vec_perm(mask, mask, reverse);
2805 static vector
unsigned char __ATTRS_o_ai vec_lvsr(
int __a,
2806 const unsigned short *__b) {
2807 return (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2811 #ifdef __LITTLE_ENDIAN__
2813 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2814 loads/stores"))) vec_lvsr(
int __a, const
int *__b) {
2815 vector
unsigned char mask =
2816 (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2817 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2818 7, 6, 5, 4, 3, 2, 1, 0};
2819 return vec_perm(mask, mask, reverse);
2822 static vector
unsigned char __ATTRS_o_ai vec_lvsr(
int __a,
const int *__b) {
2823 return (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2827 #ifdef __LITTLE_ENDIAN__
2829 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2830 loads/stores"))) vec_lvsr(
int __a, const
unsigned int *__b) {
2831 vector
unsigned char mask =
2832 (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2833 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2834 7, 6, 5, 4, 3, 2, 1, 0};
2835 return vec_perm(mask, mask, reverse);
2838 static vector
unsigned char __ATTRS_o_ai vec_lvsr(
int __a,
2839 const unsigned int *__b) {
2840 return (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2844 #ifdef __LITTLE_ENDIAN__
2846 __attribute__((__deprecated__(
"use assignment for unaligned little endian \
2847 loads/stores"))) vec_lvsr(
int __a, const
float *__b) {
2848 vector
unsigned char mask =
2849 (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2850 vector
unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
2851 7, 6, 5, 4, 3, 2, 1, 0};
2852 return vec_perm(mask, mask, reverse);
2855 static vector
unsigned char __ATTRS_o_ai vec_lvsr(
int __a,
const float *__b) {
2856 return (vector
unsigned char)__builtin_altivec_lvsr(__a, __b);
2862 vec_mladd(vector
signed short, vector
signed short, vector
signed short);
2864 vec_mladd(vector
signed short, vector
unsigned short, vector
unsigned short);
2866 vec_mladd(vector
unsigned short, vector
signed short, vector
signed short);
2868 vec_mladd(vector
unsigned short, vector
unsigned short, vector
unsigned short);
2871 vec_madd(vector
signed short __a, vector
signed short __b,
2872 vector
signed short __c) {
2873 return vec_mladd(__a, __b, __c);
2877 vec_madd(vector
signed short __a, vector
unsigned short __b,
2878 vector
unsigned short __c) {
2879 return vec_mladd(__a, __b, __c);
2883 vec_madd(vector
unsigned short __a, vector
signed short __b,
2884 vector
signed short __c) {
2885 return vec_mladd(__a, __b, __c);
2889 vec_madd(vector
unsigned short __a, vector
unsigned short __b,
2890 vector
unsigned short __c) {
2891 return vec_mladd(__a, __b, __c);
2895 vec_madd(vector
float __a, vector
float __b, vector
float __c) {
2897 return __builtin_vsx_xvmaddasp(__a, __b, __c);
2899 return __builtin_altivec_vmaddfp(__a, __b, __c);
2905 vec_madd(vector
double __a, vector
double __b, vector
double __c) {
2906 return __builtin_vsx_xvmaddadp(__a, __b, __c);
2913 vec_vmaddfp(vector
float __a, vector
float __b, vector
float __c) {
2914 return __builtin_altivec_vmaddfp(__a, __b, __c);
2919 static vector
signed short __attribute__((__always_inline__))
2920 vec_madds(vector
signed short __a, vector
signed short __b,
2921 vector
signed short __c) {
2922 return __builtin_altivec_vmhaddshs(__a, __b, __c);
2926 static vector
signed short __attribute__((__always_inline__))
2927 vec_vmhaddshs(vector
signed short __a, vector
signed short __b,
2928 vector
signed short __c) {
2929 return __builtin_altivec_vmhaddshs(__a, __b, __c);
2936 vec_msub(vector
float __a, vector
float __b, vector
float __c) {
2937 return __builtin_vsx_xvmsubasp(__a, __b, __c);
2941 vec_msub(vector
double __a, vector
double __b, vector
double __c) {
2942 return __builtin_vsx_xvmsubadp(__a, __b, __c);
2948 static vector
signed char __ATTRS_o_ai vec_max(vector
signed char __a,
2949 vector
signed char __b) {
2950 return __builtin_altivec_vmaxsb(__a, __b);
2953 static vector
signed char __ATTRS_o_ai vec_max(vector
bool char __a,
2954 vector
signed char __b) {
2955 return __builtin_altivec_vmaxsb((vector
signed char)__a, __b);
2958 static vector
signed char __ATTRS_o_ai vec_max(vector
signed char __a,
2959 vector
bool char __b) {
2960 return __builtin_altivec_vmaxsb(__a, (vector
signed char)__b);
2963 static vector
unsigned char __ATTRS_o_ai vec_max(vector
unsigned char __a,
2964 vector
unsigned char __b) {
2965 return __builtin_altivec_vmaxub(__a, __b);
2968 static vector
unsigned char __ATTRS_o_ai vec_max(vector
bool char __a,
2969 vector
unsigned char __b) {
2970 return __builtin_altivec_vmaxub((vector
unsigned char)__a, __b);
2973 static vector
unsigned char __ATTRS_o_ai vec_max(vector
unsigned char __a,
2974 vector
bool char __b) {
2975 return __builtin_altivec_vmaxub(__a, (vector
unsigned char)__b);
2978 static vector
short __ATTRS_o_ai vec_max(vector
short __a, vector
short __b) {
2979 return __builtin_altivec_vmaxsh(__a, __b);
2982 static vector
short __ATTRS_o_ai vec_max(vector
bool short __a,
2984 return __builtin_altivec_vmaxsh((vector
short)__a, __b);
2987 static vector
short __ATTRS_o_ai vec_max(vector
short __a,
2988 vector
bool short __b) {
2989 return __builtin_altivec_vmaxsh(__a, (vector
short)__b);
2992 static vector
unsigned short __ATTRS_o_ai vec_max(vector
unsigned short __a,
2993 vector
unsigned short __b) {
2994 return __builtin_altivec_vmaxuh(__a, __b);
2997 static vector
unsigned short __ATTRS_o_ai vec_max(vector
bool short __a,
2998 vector
unsigned short __b) {
2999 return __builtin_altivec_vmaxuh((vector
unsigned short)__a, __b);
3002 static vector
unsigned short __ATTRS_o_ai vec_max(vector
unsigned short __a,
3003 vector
bool short __b) {
3004 return __builtin_altivec_vmaxuh(__a, (vector
unsigned short)__b);
3007 static vector
int __ATTRS_o_ai vec_max(vector
int __a, vector
int __b) {
3008 return __builtin_altivec_vmaxsw(__a, __b);
3011 static vector
int __ATTRS_o_ai vec_max(vector
bool int __a, vector
int __b) {
3012 return __builtin_altivec_vmaxsw((vector
int)__a, __b);
3015 static vector
int __ATTRS_o_ai vec_max(vector
int __a, vector
bool int __b) {
3016 return __builtin_altivec_vmaxsw(__a, (vector
int)__b);
3019 static vector
unsigned int __ATTRS_o_ai vec_max(vector
unsigned int __a,
3020 vector
unsigned int __b) {
3021 return __builtin_altivec_vmaxuw(__a, __b);
3024 static vector
unsigned int __ATTRS_o_ai vec_max(vector
bool int __a,
3025 vector
unsigned int __b) {
3026 return __builtin_altivec_vmaxuw((vector
unsigned int)__a, __b);
3029 static vector
unsigned int __ATTRS_o_ai vec_max(vector
unsigned int __a,
3030 vector
bool int __b) {
3031 return __builtin_altivec_vmaxuw(__a, (vector
unsigned int)__b);
3034 #ifdef __POWER8_VECTOR__
3036 vec_max(vector
signed long long __a, vector
signed long long __b) {
3037 return __builtin_altivec_vmaxsd(__a, __b);
3041 vec_max(vector
bool long long __a, vector
signed long long __b) {
3042 return __builtin_altivec_vmaxsd((vector
signed long long)__a, __b);
3045 static vector
signed long long __ATTRS_o_ai vec_max(vector
signed long long __a,
3046 vector
bool long long __b) {
3047 return __builtin_altivec_vmaxsd(__a, (vector
signed long long)__b);
3051 vec_max(vector
unsigned long long __a, vector
unsigned long long __b) {
3052 return __builtin_altivec_vmaxud(__a, __b);
3056 vec_max(vector
bool long long __a, vector
unsigned long long __b) {
3057 return __builtin_altivec_vmaxud((vector
unsigned long long)__a, __b);
3061 vec_max(vector
unsigned long long __a, vector
bool long long __b) {
3062 return __builtin_altivec_vmaxud(__a, (vector
unsigned long long)__b);
3066 static vector
float __ATTRS_o_ai vec_max(vector
float __a, vector
float __b) {
3068 return __builtin_vsx_xvmaxsp(__a, __b);
3070 return __builtin_altivec_vmaxfp(__a, __b);
3075 static vector
double __ATTRS_o_ai vec_max(vector
double __a,
3076 vector
double __b) {
3077 return __builtin_vsx_xvmaxdp(__a, __b);
3083 static vector
signed char __ATTRS_o_ai vec_vmaxsb(vector
signed char __a,
3084 vector
signed char __b) {
3085 return __builtin_altivec_vmaxsb(__a, __b);
3088 static vector
signed char __ATTRS_o_ai vec_vmaxsb(vector
bool char __a,
3089 vector
signed char __b) {
3090 return __builtin_altivec_vmaxsb((vector
signed char)__a, __b);
3093 static vector
signed char __ATTRS_o_ai vec_vmaxsb(vector
signed char __a,
3094 vector
bool char __b) {
3095 return __builtin_altivec_vmaxsb(__a, (vector
signed char)__b);
3100 static vector
unsigned char __ATTRS_o_ai vec_vmaxub(vector
unsigned char __a,
3101 vector
unsigned char __b) {
3102 return __builtin_altivec_vmaxub(__a, __b);
3105 static vector
unsigned char __ATTRS_o_ai vec_vmaxub(vector
bool char __a,
3106 vector
unsigned char __b) {
3107 return __builtin_altivec_vmaxub((vector
unsigned char)__a, __b);
3110 static vector
unsigned char __ATTRS_o_ai vec_vmaxub(vector
unsigned char __a,
3111 vector
bool char __b) {
3112 return __builtin_altivec_vmaxub(__a, (vector
unsigned char)__b);
3117 static vector
short __ATTRS_o_ai vec_vmaxsh(vector
short __a,
3119 return __builtin_altivec_vmaxsh(__a, __b);
3122 static vector
short __ATTRS_o_ai vec_vmaxsh(vector
bool short __a,
3124 return __builtin_altivec_vmaxsh((vector
short)__a, __b);
3127 static vector
short __ATTRS_o_ai vec_vmaxsh(vector
short __a,
3128 vector
bool short __b) {
3129 return __builtin_altivec_vmaxsh(__a, (vector
short)__b);
3135 vec_vmaxuh(vector
unsigned short __a, vector
unsigned short __b) {
3136 return __builtin_altivec_vmaxuh(__a, __b);
3140 vec_vmaxuh(vector
bool short __a, vector
unsigned short __b) {
3141 return __builtin_altivec_vmaxuh((vector
unsigned short)__a, __b);
3144 static vector
unsigned short __ATTRS_o_ai vec_vmaxuh(vector
unsigned short __a,
3145 vector
bool short __b) {
3146 return __builtin_altivec_vmaxuh(__a, (vector
unsigned short)__b);
3151 static vector
int __ATTRS_o_ai vec_vmaxsw(vector
int __a, vector
int __b) {
3152 return __builtin_altivec_vmaxsw(__a, __b);
3155 static vector
int __ATTRS_o_ai vec_vmaxsw(vector
bool int __a, vector
int __b) {
3156 return __builtin_altivec_vmaxsw((vector
int)__a, __b);
3159 static vector
int __ATTRS_o_ai vec_vmaxsw(vector
int __a, vector
bool int __b) {
3160 return __builtin_altivec_vmaxsw(__a, (vector
int)__b);
3165 static vector
unsigned int __ATTRS_o_ai vec_vmaxuw(vector
unsigned int __a,
3166 vector
unsigned int __b) {
3167 return __builtin_altivec_vmaxuw(__a, __b);
3170 static vector
unsigned int __ATTRS_o_ai vec_vmaxuw(vector
bool int __a,
3171 vector
unsigned int __b) {
3172 return __builtin_altivec_vmaxuw((vector
unsigned int)__a, __b);
3175 static vector
unsigned int __ATTRS_o_ai vec_vmaxuw(vector
unsigned int __a,
3176 vector
bool int __b) {
3177 return __builtin_altivec_vmaxuw(__a, (vector
unsigned int)__b);
3183 vec_vmaxfp(vector
float __a, vector
float __b) {
3185 return __builtin_vsx_xvmaxsp(__a, __b);
3187 return __builtin_altivec_vmaxfp(__a, __b);
3193 static vector
signed char __ATTRS_o_ai vec_mergeh(vector
signed char __a,
3194 vector
signed char __b) {
3195 return vec_perm(__a, __b,
3196 (vector
unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
3197 0x03, 0x13, 0x04, 0x14, 0x05, 0x15,
3198 0x06, 0x16, 0x07, 0x17));
3201 static vector
unsigned char __ATTRS_o_ai vec_mergeh(vector
unsigned char __a,
3202 vector
unsigned char __b) {
3203 return vec_perm(__a, __b,
3204 (vector
unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
3205 0x03, 0x13, 0x04, 0x14, 0x05, 0x15,
3206 0x06, 0x16, 0x07, 0x17));
3209 static vector
bool char __ATTRS_o_ai vec_mergeh(vector
bool char __a,
3210 vector
bool char __b) {
3211 return vec_perm(__a, __b,
3212 (vector
unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
3213 0x03, 0x13, 0x04, 0x14, 0x05, 0x15,
3214 0x06, 0x16, 0x07, 0x17));
3217 static vector
short __ATTRS_o_ai vec_mergeh(vector
short __a,
3219 return vec_perm(__a, __b,
3220 (vector
unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
3221 0x12, 0x13, 0x04, 0x05, 0x14, 0x15,
3222 0x06, 0x07, 0x16, 0x17));
3226 vec_mergeh(vector
unsigned short __a, vector
unsigned short __b) {
3227 return vec_perm(__a, __b,
3228 (vector
unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
3229 0x12, 0x13, 0x04, 0x05, 0x14, 0x15,
3230 0x06, 0x07, 0x16, 0x17));
3233 static vector
bool short __ATTRS_o_ai vec_mergeh(vector
bool short __a,
3234 vector
bool short __b) {
3235 return vec_perm(__a, __b,
3236 (vector
unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
3237 0x12, 0x13, 0x04, 0x05, 0x14, 0x15,
3238 0x06, 0x07, 0x16, 0x17));
3241 static vector pixel
__ATTRS_o_ai vec_mergeh(vector pixel __a,
3243 return vec_perm(__a, __b,
3244 (vector
unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
3245 0x12, 0x13, 0x04, 0x05, 0x14, 0x15,
3246 0x06, 0x07, 0x16, 0x17));
3249 static vector
int __ATTRS_o_ai vec_mergeh(vector
int __a, vector
int __b) {
3250 return vec_perm(__a, __b,
3251 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
3252 0x12, 0x13, 0x04, 0x05, 0x06, 0x07,
3253 0x14, 0x15, 0x16, 0x17));
3256 static vector
unsigned int __ATTRS_o_ai vec_mergeh(vector
unsigned int __a,
3257 vector
unsigned int __b) {
3258 return vec_perm(__a, __b,
3259 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
3260 0x12, 0x13, 0x04, 0x05, 0x06, 0x07,
3261 0x14, 0x15, 0x16, 0x17));
3264 static vector
bool int __ATTRS_o_ai vec_mergeh(vector
bool int __a,
3265 vector
bool int __b) {
3266 return vec_perm(__a, __b,
3267 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
3268 0x12, 0x13, 0x04, 0x05, 0x06, 0x07,
3269 0x14, 0x15, 0x16, 0x17));
3272 static vector
float __ATTRS_o_ai vec_mergeh(vector
float __a,
3274 return vec_perm(__a, __b,
3275 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
3276 0x12, 0x13, 0x04, 0x05, 0x06, 0x07,
3277 0x14, 0x15, 0x16, 0x17));
3282 vec_mergeh(vector
signed long long __a, vector
signed long long __b) {
3283 return vec_perm(__a, __b,
3284 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3285 0x04, 0x05, 0x06, 0x07,
3286 0x10, 0x11, 0x12, 0x13,
3287 0x14, 0x15, 0x16, 0x17));
3291 vec_mergeh(vector
signed long long __a, vector
bool long long __b) {
3292 return vec_perm(__a, (vector
signed long long)__b,
3293 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3294 0x04, 0x05, 0x06, 0x07,
3295 0x10, 0x11, 0x12, 0x13,
3296 0x14, 0x15, 0x16, 0x17));
3300 vec_mergeh(vector
bool long long __a, vector
signed long long __b) {
3301 return vec_perm((vector
signed long long)__a, __b,
3302 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3303 0x04, 0x05, 0x06, 0x07,
3304 0x10, 0x11, 0x12, 0x13,
3305 0x14, 0x15, 0x16, 0x17));
3309 vec_mergeh(vector
unsigned long long __a, vector
unsigned long long __b) {
3310 return vec_perm(__a, __b,
3311 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3312 0x04, 0x05, 0x06, 0x07,
3313 0x10, 0x11, 0x12, 0x13,
3314 0x14, 0x15, 0x16, 0x17));
3318 vec_mergeh(vector
unsigned long long __a, vector
bool long long __b) {
3319 return vec_perm(__a, (vector
unsigned long long)__b,
3320 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3321 0x04, 0x05, 0x06, 0x07,
3322 0x10, 0x11, 0x12, 0x13,
3323 0x14, 0x15, 0x16, 0x17));
3327 vec_mergeh(vector
bool long long __a, vector
unsigned long long __b) {
3328 return vec_perm((vector
unsigned long long)__a, __b,
3329 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3330 0x04, 0x05, 0x06, 0x07,
3331 0x10, 0x11, 0x12, 0x13,
3332 0x14, 0x15, 0x16, 0x17));
3336 vec_mergeh(vector
bool long long __a, vector
bool long long __b) {
3337 return vec_perm(__a, __b,
3338 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3339 0x04, 0x05, 0x06, 0x07,
3340 0x10, 0x11, 0x12, 0x13,
3341 0x14, 0x15, 0x16, 0x17));
3344 static vector
double __ATTRS_o_ai vec_mergeh(vector
double __a,
3345 vector
double __b) {
3346 return vec_perm(__a, __b,
3347 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3348 0x04, 0x05, 0x06, 0x07,
3349 0x10, 0x11, 0x12, 0x13,
3350 0x14, 0x15, 0x16, 0x17));
3352 static vector
double __ATTRS_o_ai vec_mergeh(vector
double __a,
3353 vector
bool long long __b) {
3354 return vec_perm(__a, (vector
double)__b,
3355 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3356 0x04, 0x05, 0x06, 0x07,
3357 0x10, 0x11, 0x12, 0x13,
3358 0x14, 0x15, 0x16, 0x17));
3360 static vector
double __ATTRS_o_ai vec_mergeh(vector
bool long long __a,
3361 vector
double __b) {
3362 return vec_perm((vector
double)__a, __b,
3363 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03,
3364 0x04, 0x05, 0x06, 0x07,
3365 0x10, 0x11, 0x12, 0x13,
3366 0x14, 0x15, 0x16, 0x17));
3372 #define __builtin_altivec_vmrghb vec_vmrghb
3374 static vector
signed char __ATTRS_o_ai vec_vmrghb(vector
signed char __a,
3375 vector
signed char __b) {
3376 return vec_perm(__a, __b,
3377 (vector
unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
3378 0x03, 0x13, 0x04, 0x14, 0x05, 0x15,
3379 0x06, 0x16, 0x07, 0x17));
3382 static vector
unsigned char __ATTRS_o_ai vec_vmrghb(vector
unsigned char __a,
3383 vector
unsigned char __b) {
3384 return vec_perm(__a, __b,
3385 (vector
unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
3386 0x03, 0x13, 0x04, 0x14, 0x05, 0x15,
3387 0x06, 0x16, 0x07, 0x17));
3390 static vector
bool char __ATTRS_o_ai vec_vmrghb(vector
bool char __a,
3391 vector
bool char __b) {
3392 return vec_perm(__a, __b,
3393 (vector
unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
3394 0x03, 0x13, 0x04, 0x14, 0x05, 0x15,
3395 0x06, 0x16, 0x07, 0x17));
3400 #define __builtin_altivec_vmrghh vec_vmrghh
3402 static vector
short __ATTRS_o_ai vec_vmrghh(vector
short __a,
3404 return vec_perm(__a, __b,
3405 (vector
unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
3406 0x12, 0x13, 0x04, 0x05, 0x14, 0x15,
3407 0x06, 0x07, 0x16, 0x17));
3411 vec_vmrghh(vector
unsigned short __a, vector
unsigned short __b) {
3412 return vec_perm(__a, __b,
3413 (vector
unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
3414 0x12, 0x13, 0x04, 0x05, 0x14, 0x15,
3415 0x06, 0x07, 0x16, 0x17));
3418 static vector
bool short __ATTRS_o_ai vec_vmrghh(vector
bool short __a,
3419 vector
bool short __b) {
3420 return vec_perm(__a, __b,
3421 (vector
unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
3422 0x12, 0x13, 0x04, 0x05, 0x14, 0x15,
3423 0x06, 0x07, 0x16, 0x17));
3426 static vector pixel
__ATTRS_o_ai vec_vmrghh(vector pixel __a,
3428 return vec_perm(__a, __b,
3429 (vector
unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
3430 0x12, 0x13, 0x04, 0x05, 0x14, 0x15,
3431 0x06, 0x07, 0x16, 0x17));
3436 #define __builtin_altivec_vmrghw vec_vmrghw
3438 static vector
int __ATTRS_o_ai vec_vmrghw(vector
int __a, vector
int __b) {
3439 return vec_perm(__a, __b,
3440 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
3441 0x12, 0x13, 0x04, 0x05, 0x06, 0x07,
3442 0x14, 0x15, 0x16, 0x17));
3445 static vector
unsigned int __ATTRS_o_ai vec_vmrghw(vector
unsigned int __a,
3446 vector
unsigned int __b) {
3447 return vec_perm(__a, __b,
3448 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
3449 0x12, 0x13, 0x04, 0x05, 0x06, 0x07,
3450 0x14, 0x15, 0x16, 0x17));
3453 static vector
bool int __ATTRS_o_ai vec_vmrghw(vector
bool int __a,
3454 vector
bool int __b) {
3455 return vec_perm(__a, __b,
3456 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
3457 0x12, 0x13, 0x04, 0x05, 0x06, 0x07,
3458 0x14, 0x15, 0x16, 0x17));
3461 static vector
float __ATTRS_o_ai vec_vmrghw(vector
float __a,
3463 return vec_perm(__a, __b,
3464 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
3465 0x12, 0x13, 0x04, 0x05, 0x06, 0x07,
3466 0x14, 0x15, 0x16, 0x17));
3471 static vector
signed char __ATTRS_o_ai vec_mergel(vector
signed char __a,
3472 vector
signed char __b) {
3473 return vec_perm(__a, __b,
3474 (vector
unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
3475 0x0B, 0x1B, 0x0C, 0x1C, 0x0D, 0x1D,
3476 0x0E, 0x1E, 0x0F, 0x1F));
3479 static vector
unsigned char __ATTRS_o_ai vec_mergel(vector
unsigned char __a,
3480 vector
unsigned char __b) {
3481 return vec_perm(__a, __b,
3482 (vector
unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
3483 0x0B, 0x1B, 0x0C, 0x1C, 0x0D, 0x1D,
3484 0x0E, 0x1E, 0x0F, 0x1F));
3487 static vector
bool char __ATTRS_o_ai vec_mergel(vector
bool char __a,
3488 vector
bool char __b) {
3489 return vec_perm(__a, __b,
3490 (vector
unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
3491 0x0B, 0x1B, 0x0C, 0x1C, 0x0D, 0x1D,
3492 0x0E, 0x1E, 0x0F, 0x1F));
3495 static vector
short __ATTRS_o_ai vec_mergel(vector
short __a,
3497 return vec_perm(__a, __b,
3498 (vector
unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
3499 0x1A, 0x1B, 0x0C, 0x0D, 0x1C, 0x1D,
3500 0x0E, 0x0F, 0x1E, 0x1F));
3504 vec_mergel(vector
unsigned short __a, vector
unsigned short __b) {
3505 return vec_perm(__a, __b,
3506 (vector
unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
3507 0x1A, 0x1B, 0x0C, 0x0D, 0x1C, 0x1D,
3508 0x0E, 0x0F, 0x1E, 0x1F));
3511 static vector
bool short __ATTRS_o_ai vec_mergel(vector
bool short __a,
3512 vector
bool short __b) {
3513 return vec_perm(__a, __b,
3514 (vector
unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
3515 0x1A, 0x1B, 0x0C, 0x0D, 0x1C, 0x1D,
3516 0x0E, 0x0F, 0x1E, 0x1F));
3519 static vector pixel
__ATTRS_o_ai vec_mergel(vector pixel __a,
3521 return vec_perm(__a, __b,
3522 (vector
unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
3523 0x1A, 0x1B, 0x0C, 0x0D, 0x1C, 0x1D,
3524 0x0E, 0x0F, 0x1E, 0x1F));
3527 static vector
int __ATTRS_o_ai vec_mergel(vector
int __a, vector
int __b) {
3528 return vec_perm(__a, __b,
3529 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
3530 0x1A, 0x1B, 0x0C, 0x0D, 0x0E, 0x0F,
3531 0x1C, 0x1D, 0x1E, 0x1F));
3534 static vector
unsigned int __ATTRS_o_ai vec_mergel(vector
unsigned int __a,
3535 vector
unsigned int __b) {
3536 return vec_perm(__a, __b,
3537 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
3538 0x1A, 0x1B, 0x0C, 0x0D, 0x0E, 0x0F,
3539 0x1C, 0x1D, 0x1E, 0x1F));
3542 static vector
bool int __ATTRS_o_ai vec_mergel(vector
bool int __a,
3543 vector
bool int __b) {
3544 return vec_perm(__a, __b,
3545 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
3546 0x1A, 0x1B, 0x0C, 0x0D, 0x0E, 0x0F,
3547 0x1C, 0x1D, 0x1E, 0x1F));
3550 static vector
float __ATTRS_o_ai vec_mergel(vector
float __a,
3552 return vec_perm(__a, __b,
3553 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
3554 0x1A, 0x1B, 0x0C, 0x0D, 0x0E, 0x0F,
3555 0x1C, 0x1D, 0x1E, 0x1F));
3560 vec_mergel(vector
signed long long __a, vector
signed long long __b) {
3561 return vec_perm(__a, __b,
3562 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3563 0x0C, 0x0D, 0x0E, 0x0F,
3564 0x18, 0X19, 0x1A, 0x1B,
3565 0x1C, 0x1D, 0x1E, 0x1F));
3568 vec_mergel(vector
signed long long __a, vector
bool long long __b) {
3569 return vec_perm(__a, (vector
signed long long)__b,
3570 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3571 0x0C, 0x0D, 0x0E, 0x0F,
3572 0x18, 0X19, 0x1A, 0x1B,
3573 0x1C, 0x1D, 0x1E, 0x1F));
3576 vec_mergel(vector
bool long long __a, vector
signed long long __b) {
3577 return vec_perm((vector
signed long long)__a, __b,
3578 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3579 0x0C, 0x0D, 0x0E, 0x0F,
3580 0x18, 0X19, 0x1A, 0x1B,
3581 0x1C, 0x1D, 0x1E, 0x1F));
3584 vec_mergel(vector
unsigned long long __a, vector
unsigned long long __b) {
3585 return vec_perm(__a, __b,
3586 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3587 0x0C, 0x0D, 0x0E, 0x0F,
3588 0x18, 0X19, 0x1A, 0x1B,
3589 0x1C, 0x1D, 0x1E, 0x1F));
3592 vec_mergel(vector
unsigned long long __a, vector
bool long long __b) {
3593 return vec_perm(__a, (vector
unsigned long long)__b,
3594 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3595 0x0C, 0x0D, 0x0E, 0x0F,
3596 0x18, 0X19, 0x1A, 0x1B,
3597 0x1C, 0x1D, 0x1E, 0x1F));
3600 vec_mergel(vector
bool long long __a, vector
unsigned long long __b) {
3601 return vec_perm((vector
unsigned long long)__a, __b,
3602 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3603 0x0C, 0x0D, 0x0E, 0x0F,
3604 0x18, 0X19, 0x1A, 0x1B,
3605 0x1C, 0x1D, 0x1E, 0x1F));
3608 vec_mergel(vector
bool long long __a, vector
bool long long __b) {
3609 return vec_perm(__a, __b,
3610 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3611 0x0C, 0x0D, 0x0E, 0x0F,
3612 0x18, 0X19, 0x1A, 0x1B,
3613 0x1C, 0x1D, 0x1E, 0x1F));
3616 vec_mergel(vector
double __a, vector
double __b) {
3617 return vec_perm(__a, __b,
3618 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3619 0x0C, 0x0D, 0x0E, 0x0F,
3620 0x18, 0X19, 0x1A, 0x1B,
3621 0x1C, 0x1D, 0x1E, 0x1F));
3624 vec_mergel(vector
double __a, vector
bool long long __b) {
3625 return vec_perm(__a, (vector
double)__b,
3626 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3627 0x0C, 0x0D, 0x0E, 0x0F,
3628 0x18, 0X19, 0x1A, 0x1B,
3629 0x1C, 0x1D, 0x1E, 0x1F));
3632 vec_mergel(vector
bool long long __a, vector
double __b) {
3633 return vec_perm((vector
double)__a, __b,
3634 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B,
3635 0x0C, 0x0D, 0x0E, 0x0F,
3636 0x18, 0X19, 0x1A, 0x1B,
3637 0x1C, 0x1D, 0x1E, 0x1F));
3643 #define __builtin_altivec_vmrglb vec_vmrglb
3645 static vector
signed char __ATTRS_o_ai vec_vmrglb(vector
signed char __a,
3646 vector
signed char __b) {
3647 return vec_perm(__a, __b,
3648 (vector
unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
3649 0x0B, 0x1B, 0x0C, 0x1C, 0x0D, 0x1D,
3650 0x0E, 0x1E, 0x0F, 0x1F));
3653 static vector
unsigned char __ATTRS_o_ai vec_vmrglb(vector
unsigned char __a,
3654 vector
unsigned char __b) {
3655 return vec_perm(__a, __b,
3656 (vector
unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
3657 0x0B, 0x1B, 0x0C, 0x1C, 0x0D, 0x1D,
3658 0x0E, 0x1E, 0x0F, 0x1F));
3661 static vector
bool char __ATTRS_o_ai vec_vmrglb(vector
bool char __a,
3662 vector
bool char __b) {
3663 return vec_perm(__a, __b,
3664 (vector
unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
3665 0x0B, 0x1B, 0x0C, 0x1C, 0x0D, 0x1D,
3666 0x0E, 0x1E, 0x0F, 0x1F));
3671 #define __builtin_altivec_vmrglh vec_vmrglh
3673 static vector
short __ATTRS_o_ai vec_vmrglh(vector
short __a,
3675 return vec_perm(__a, __b,
3676 (vector
unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
3677 0x1A, 0x1B, 0x0C, 0x0D, 0x1C, 0x1D,
3678 0x0E, 0x0F, 0x1E, 0x1F));
3682 vec_vmrglh(vector
unsigned short __a, vector
unsigned short __b) {
3683 return vec_perm(__a, __b,
3684 (vector
unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
3685 0x1A, 0x1B, 0x0C, 0x0D, 0x1C, 0x1D,
3686 0x0E, 0x0F, 0x1E, 0x1F));
3689 static vector
bool short __ATTRS_o_ai vec_vmrglh(vector
bool short __a,
3690 vector
bool short __b) {
3691 return vec_perm(__a, __b,
3692 (vector
unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
3693 0x1A, 0x1B, 0x0C, 0x0D, 0x1C, 0x1D,
3694 0x0E, 0x0F, 0x1E, 0x1F));
3697 static vector pixel
__ATTRS_o_ai vec_vmrglh(vector pixel __a,
3699 return vec_perm(__a, __b,
3700 (vector
unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
3701 0x1A, 0x1B, 0x0C, 0x0D, 0x1C, 0x1D,
3702 0x0E, 0x0F, 0x1E, 0x1F));
3707 #define __builtin_altivec_vmrglw vec_vmrglw
3709 static vector
int __ATTRS_o_ai vec_vmrglw(vector
int __a, vector
int __b) {
3710 return vec_perm(__a, __b,
3711 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
3712 0x1A, 0x1B, 0x0C, 0x0D, 0x0E, 0x0F,
3713 0x1C, 0x1D, 0x1E, 0x1F));
3716 static vector
unsigned int __ATTRS_o_ai vec_vmrglw(vector
unsigned int __a,
3717 vector
unsigned int __b) {
3718 return vec_perm(__a, __b,
3719 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
3720 0x1A, 0x1B, 0x0C, 0x0D, 0x0E, 0x0F,
3721 0x1C, 0x1D, 0x1E, 0x1F));
3724 static vector
bool int __ATTRS_o_ai vec_vmrglw(vector
bool int __a,
3725 vector
bool int __b) {
3726 return vec_perm(__a, __b,
3727 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
3728 0x1A, 0x1B, 0x0C, 0x0D, 0x0E, 0x0F,
3729 0x1C, 0x1D, 0x1E, 0x1F));
3732 static vector
float __ATTRS_o_ai vec_vmrglw(vector
float __a,
3734 return vec_perm(__a, __b,
3735 (vector
unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
3736 0x1A, 0x1B, 0x0C, 0x0D, 0x0E, 0x0F,
3737 0x1C, 0x1D, 0x1E, 0x1F));
3741 #ifdef __POWER8_VECTOR__
3745 vec_mergee(vector
bool int __a, vector
bool int __b) {
3746 return vec_perm(__a, __b, (vector
unsigned char)
3747 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
3748 0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B));
3752 vec_mergee(vector
signed int __a, vector
signed int __b) {
3753 return vec_perm(__a, __b, (vector
unsigned char)
3754 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
3755 0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B));
3759 vec_mergee(vector
unsigned int __a, vector
unsigned int __b) {
3760 return vec_perm(__a, __b, (vector
unsigned char)
3761 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
3762 0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B));
3768 vec_mergeo(vector
bool int __a, vector
bool int __b) {
3769 return vec_perm(__a, __b, (vector
unsigned char)
3770 (0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17,
3771 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
3775 vec_mergeo(vector
signed int __a, vector
signed int __b) {
3776 return vec_perm(__a, __b, (vector
unsigned char)
3777 (0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17,
3778 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
3782 vec_mergeo(vector
unsigned int __a, vector
unsigned int __b) {
3783 return vec_perm(__a, __b, (vector
unsigned char)
3784 (0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17,
3785 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
3792 static vector
unsigned short __attribute__((__always_inline__))
3794 return __builtin_altivec_mfvscr();
3799 static vector
signed char __ATTRS_o_ai vec_min(vector
signed char __a,
3800 vector
signed char __b) {
3801 return __builtin_altivec_vminsb(__a, __b);
3804 static vector
signed char __ATTRS_o_ai vec_min(vector
bool char __a,
3805 vector
signed char __b) {
3806 return __builtin_altivec_vminsb((vector
signed char)__a, __b);
3809 static vector
signed char __ATTRS_o_ai vec_min(vector
signed char __a,
3810 vector
bool char __b) {
3811 return __builtin_altivec_vminsb(__a, (vector
signed char)__b);
3814 static vector
unsigned char __ATTRS_o_ai vec_min(vector
unsigned char __a,
3815 vector
unsigned char __b) {
3816 return __builtin_altivec_vminub(__a, __b);
3819 static vector
unsigned char __ATTRS_o_ai vec_min(vector
bool char __a,
3820 vector
unsigned char __b) {
3821 return __builtin_altivec_vminub((vector
unsigned char)__a, __b);
3824 static vector
unsigned char __ATTRS_o_ai vec_min(vector
unsigned char __a,
3825 vector
bool char __b) {
3826 return __builtin_altivec_vminub(__a, (vector
unsigned char)__b);
3829 static vector
short __ATTRS_o_ai vec_min(vector
short __a, vector
short __b) {
3830 return __builtin_altivec_vminsh(__a, __b);
3833 static vector
short __ATTRS_o_ai vec_min(vector
bool short __a,
3835 return __builtin_altivec_vminsh((vector
short)__a, __b);
3838 static vector
short __ATTRS_o_ai vec_min(vector
short __a,
3839 vector
bool short __b) {
3840 return __builtin_altivec_vminsh(__a, (vector
short)__b);
3843 static vector
unsigned short __ATTRS_o_ai vec_min(vector
unsigned short __a,
3844 vector
unsigned short __b) {
3845 return __builtin_altivec_vminuh(__a, __b);
3848 static vector
unsigned short __ATTRS_o_ai vec_min(vector
bool short __a,
3849 vector
unsigned short __b) {
3850 return __builtin_altivec_vminuh((vector
unsigned short)__a, __b);
3853 static vector
unsigned short __ATTRS_o_ai vec_min(vector
unsigned short __a,
3854 vector
bool short __b) {
3855 return __builtin_altivec_vminuh(__a, (vector
unsigned short)__b);
3858 static vector
int __ATTRS_o_ai vec_min(vector
int __a, vector
int __b) {
3859 return __builtin_altivec_vminsw(__a, __b);
3862 static vector
int __ATTRS_o_ai vec_min(vector
bool int __a, vector
int __b) {
3863 return __builtin_altivec_vminsw((vector
int)__a, __b);
3866 static vector
int __ATTRS_o_ai vec_min(vector
int __a, vector
bool int __b) {
3867 return __builtin_altivec_vminsw(__a, (vector
int)__b);
3870 static vector
unsigned int __ATTRS_o_ai vec_min(vector
unsigned int __a,
3871 vector
unsigned int __b) {
3872 return __builtin_altivec_vminuw(__a, __b);
3875 static vector
unsigned int __ATTRS_o_ai vec_min(vector
bool int __a,
3876 vector
unsigned int __b) {
3877 return __builtin_altivec_vminuw((vector
unsigned int)__a, __b);
3880 static vector
unsigned int __ATTRS_o_ai vec_min(vector
unsigned int __a,
3881 vector
bool int __b) {
3882 return __builtin_altivec_vminuw(__a, (vector
unsigned int)__b);
3885 #ifdef __POWER8_VECTOR__
3887 vec_min(vector
signed long long __a, vector
signed long long __b) {
3888 return __builtin_altivec_vminsd(__a, __b);
3892 vec_min(vector
bool long long __a, vector
signed long long __b) {
3893 return __builtin_altivec_vminsd((vector
signed long long)__a, __b);
3896 static vector
signed long long __ATTRS_o_ai vec_min(vector
signed long long __a,
3897 vector
bool long long __b) {
3898 return __builtin_altivec_vminsd(__a, (vector
signed long long)__b);
3902 vec_min(vector
unsigned long long __a, vector
unsigned long long __b) {
3903 return __builtin_altivec_vminud(__a, __b);
3907 vec_min(vector
bool long long __a, vector
unsigned long long __b) {
3908 return __builtin_altivec_vminud((vector
unsigned long long)__a, __b);
3912 vec_min(vector
unsigned long long __a, vector
bool long long __b) {
3913 return __builtin_altivec_vminud(__a, (vector
unsigned long long)__b);
3917 static vector
float __ATTRS_o_ai vec_min(vector
float __a, vector
float __b) {
3919 return __builtin_vsx_xvminsp(__a, __b);
3921 return __builtin_altivec_vminfp(__a, __b);
3926 static vector
double __ATTRS_o_ai vec_min(vector
double __a,
3927 vector
double __b) {
3928 return __builtin_vsx_xvmindp(__a, __b);
3934 static vector
signed char __ATTRS_o_ai vec_vminsb(vector
signed char __a,
3935 vector
signed char __b) {
3936 return __builtin_altivec_vminsb(__a, __b);
3939 static vector
signed char __ATTRS_o_ai vec_vminsb(vector
bool char __a,
3940 vector
signed char __b) {
3941 return __builtin_altivec_vminsb((vector
signed char)__a, __b);
3944 static vector
signed char __ATTRS_o_ai vec_vminsb(vector
signed char __a,
3945 vector
bool char __b) {
3946 return __builtin_altivec_vminsb(__a, (vector
signed char)__b);
3951 static vector
unsigned char __ATTRS_o_ai vec_vminub(vector
unsigned char __a,
3952 vector
unsigned char __b) {
3953 return __builtin_altivec_vminub(__a, __b);
3956 static vector
unsigned char __ATTRS_o_ai vec_vminub(vector
bool char __a,
3957 vector
unsigned char __b) {
3958 return __builtin_altivec_vminub((vector
unsigned char)__a, __b);
3961 static vector
unsigned char __ATTRS_o_ai vec_vminub(vector
unsigned char __a,
3962 vector
bool char __b) {
3963 return __builtin_altivec_vminub(__a, (vector
unsigned char)__b);
3968 static vector
short __ATTRS_o_ai vec_vminsh(vector
short __a,
3970 return __builtin_altivec_vminsh(__a, __b);
3973 static vector
short __ATTRS_o_ai vec_vminsh(vector
bool short __a,
3975 return __builtin_altivec_vminsh((vector
short)__a, __b);
3978 static vector
short __ATTRS_o_ai vec_vminsh(vector
short __a,
3979 vector
bool short __b) {
3980 return __builtin_altivec_vminsh(__a, (vector
short)__b);
3986 vec_vminuh(vector
unsigned short __a, vector
unsigned short __b) {
3987 return __builtin_altivec_vminuh(__a, __b);
3991 vec_vminuh(vector
bool short __a, vector
unsigned short __b) {
3992 return __builtin_altivec_vminuh((vector
unsigned short)__a, __b);
3995 static vector
unsigned short __ATTRS_o_ai vec_vminuh(vector
unsigned short __a,
3996 vector
bool short __b) {
3997 return __builtin_altivec_vminuh(__a, (vector
unsigned short)__b);
4002 static vector
int __ATTRS_o_ai vec_vminsw(vector
int __a, vector
int __b) {
4003 return __builtin_altivec_vminsw(__a, __b);
4006 static vector
int __ATTRS_o_ai vec_vminsw(vector
bool int __a, vector
int __b) {
4007 return __builtin_altivec_vminsw((vector
int)__a, __b);
4010 static vector
int __ATTRS_o_ai vec_vminsw(vector
int __a, vector
bool int __b) {
4011 return __builtin_altivec_vminsw(__a, (vector
int)__b);
4016 static vector
unsigned int __ATTRS_o_ai vec_vminuw(vector
unsigned int __a,
4017 vector
unsigned int __b) {
4018 return __builtin_altivec_vminuw(__a, __b);
4021 static vector
unsigned int __ATTRS_o_ai vec_vminuw(vector
bool int __a,
4022 vector
unsigned int __b) {
4023 return __builtin_altivec_vminuw((vector
unsigned int)__a, __b);
4026 static vector
unsigned int __ATTRS_o_ai vec_vminuw(vector
unsigned int __a,
4027 vector
bool int __b) {
4028 return __builtin_altivec_vminuw(__a, (vector
unsigned int)__b);
4034 vec_vminfp(vector
float __a, vector
float __b) {
4036 return __builtin_vsx_xvminsp(__a, __b);
4038 return __builtin_altivec_vminfp(__a, __b);
4044 #define __builtin_altivec_vmladduhm vec_mladd
4046 static vector
short __ATTRS_o_ai vec_mladd(vector
short __a, vector
short __b,
4048 return __a * __b +
__c;
4051 static vector
short __ATTRS_o_ai vec_mladd(vector
short __a,
4052 vector
unsigned short __b,
4053 vector
unsigned short __c) {
4054 return __a * (vector short)__b + (vector
short)
__c;
4057 static vector
short __ATTRS_o_ai vec_mladd(vector
unsigned short __a,
4058 vector
short __b, vector
short __c) {
4059 return (vector
short)__a * __b +
__c;
4062 static vector
unsigned short __ATTRS_o_ai vec_mladd(vector
unsigned short __a,
4063 vector
unsigned short __b,
4064 vector
unsigned short __c) {
4065 return __a * __b +
__c;
4070 static vector
short __ATTRS_o_ai vec_vmladduhm(vector
short __a,
4073 return __a * __b +
__c;
4076 static vector
short __ATTRS_o_ai vec_vmladduhm(vector
short __a,
4077 vector
unsigned short __b,
4078 vector
unsigned short __c) {
4079 return __a * (vector short)__b + (vector
short)
__c;
4082 static vector
short __ATTRS_o_ai vec_vmladduhm(vector
unsigned short __a,
4085 return (vector
short)__a * __b +
__c;
4089 vec_vmladduhm(vector
unsigned short __a, vector
unsigned short __b,
4090 vector
unsigned short __c) {
4091 return __a * __b +
__c;
4097 vec_mradds(vector
short __a, vector
short __b, vector
short __c) {
4098 return __builtin_altivec_vmhraddshs(__a, __b, __c);
4104 vec_vmhraddshs(vector
short __a, vector
short __b, vector
short __c) {
4105 return __builtin_altivec_vmhraddshs(__a, __b, __c);
4110 static vector
int __ATTRS_o_ai vec_msum(vector
signed char __a,
4111 vector
unsigned char __b,
4113 return __builtin_altivec_vmsummbm(__a, __b, __c);
4116 static vector
unsigned int __ATTRS_o_ai vec_msum(vector
unsigned char __a,
4117 vector
unsigned char __b,
4118 vector
unsigned int __c) {
4119 return __builtin_altivec_vmsumubm(__a, __b, __c);
4122 static vector
int __ATTRS_o_ai vec_msum(vector
short __a, vector
short __b,
4124 return __builtin_altivec_vmsumshm(__a, __b, __c);
4127 static vector
unsigned int __ATTRS_o_ai vec_msum(vector
unsigned short __a,
4128 vector
unsigned short __b,
4129 vector
unsigned int __c) {
4130 return __builtin_altivec_vmsumuhm(__a, __b, __c);
4136 vec_vmsummbm(vector
signed char __a, vector
unsigned char __b, vector
int __c) {
4137 return __builtin_altivec_vmsummbm(__a, __b, __c);
4142 static vector
unsigned int __attribute__((__always_inline__))
4143 vec_vmsumubm(vector
unsigned char __a, vector
unsigned char __b,
4144 vector
unsigned int __c) {
4145 return __builtin_altivec_vmsumubm(__a, __b, __c);
4151 vec_vmsumshm(vector
short __a, vector
short __b, vector
int __c) {
4152 return __builtin_altivec_vmsumshm(__a, __b, __c);
4157 static vector
unsigned int __attribute__((__always_inline__))
4158 vec_vmsumuhm(vector
unsigned short __a, vector
unsigned short __b,
4159 vector
unsigned int __c) {
4160 return __builtin_altivec_vmsumuhm(__a, __b, __c);
4165 static vector
int __ATTRS_o_ai vec_msums(vector
short __a, vector
short __b,
4167 return __builtin_altivec_vmsumshs(__a, __b, __c);
4170 static vector
unsigned int __ATTRS_o_ai vec_msums(vector
unsigned short __a,
4171 vector
unsigned short __b,
4172 vector
unsigned int __c) {
4173 return __builtin_altivec_vmsumuhs(__a, __b, __c);
4179 vec_vmsumshs(vector
short __a, vector
short __b, vector
int __c) {
4180 return __builtin_altivec_vmsumshs(__a, __b, __c);
4185 static vector
unsigned int __attribute__((__always_inline__))
4186 vec_vmsumuhs(vector
unsigned short __a, vector
unsigned short __b,
4187 vector
unsigned int __c) {
4188 return __builtin_altivec_vmsumuhs(__a, __b, __c);
4193 static void __ATTRS_o_ai vec_mtvscr(vector
signed char __a) {
4194 __builtin_altivec_mtvscr((vector
int)__a);
4197 static void __ATTRS_o_ai vec_mtvscr(vector
unsigned char __a) {
4198 __builtin_altivec_mtvscr((vector
int)__a);
4201 static void __ATTRS_o_ai vec_mtvscr(vector
bool char __a) {
4202 __builtin_altivec_mtvscr((vector
int)__a);
4205 static void __ATTRS_o_ai vec_mtvscr(vector
short __a) {
4206 __builtin_altivec_mtvscr((vector
int)__a);
4209 static void __ATTRS_o_ai vec_mtvscr(vector
unsigned short __a) {
4210 __builtin_altivec_mtvscr((vector
int)__a);
4213 static void __ATTRS_o_ai vec_mtvscr(vector
bool short __a) {
4214 __builtin_altivec_mtvscr((vector
int)__a);
4217 static void __ATTRS_o_ai vec_mtvscr(vector pixel __a) {
4218 __builtin_altivec_mtvscr((vector
int)__a);
4222 __builtin_altivec_mtvscr((vector
int)__a);
4225 static void __ATTRS_o_ai vec_mtvscr(vector
unsigned int __a) {
4226 __builtin_altivec_mtvscr((vector
int)__a);
4229 static void __ATTRS_o_ai vec_mtvscr(vector
bool int __a) {
4230 __builtin_altivec_mtvscr((vector
int)__a);
4233 static void __ATTRS_o_ai vec_mtvscr(vector
float __a) {
4234 __builtin_altivec_mtvscr((vector
int)__a);
4243 static vector
signed char __ATTRS_o_ai vec_mul(vector
signed char __a,
4244 vector
signed char __b) {
4248 static vector
unsigned char __ATTRS_o_ai vec_mul(vector
unsigned char __a,
4249 vector
unsigned char __b) {
4253 static vector
signed short __ATTRS_o_ai vec_mul(vector
signed short __a,
4254 vector
signed short __b) {
4258 static vector
unsigned short __ATTRS_o_ai vec_mul(vector
unsigned short __a,
4259 vector
unsigned short __b) {
4263 static vector
signed int __ATTRS_o_ai vec_mul(vector
signed int __a,
4264 vector
signed int __b) {
4268 static vector
unsigned int __ATTRS_o_ai vec_mul(vector
unsigned int __a,
4269 vector
unsigned int __b) {
4275 vec_mul(vector
signed long long __a, vector
signed long long __b) {
4280 vec_mul(vector
unsigned long long __a, vector
unsigned long long __b) {
4285 static vector
float __ATTRS_o_ai vec_mul(vector
float __a, vector
float __b) {
4291 vec_mul(vector
double __a, vector
double __b) {
4301 static vector
short __ATTRS_o_ai vec_mule(vector
signed char __a,
4302 vector
signed char __b) {
4303 #ifdef __LITTLE_ENDIAN__
4304 return __builtin_altivec_vmulosb(__a, __b);
4306 return __builtin_altivec_vmulesb(__a, __b);
4310 static vector
unsigned short __ATTRS_o_ai vec_mule(vector
unsigned char __a,
4311 vector
unsigned char __b) {
4312 #ifdef __LITTLE_ENDIAN__
4313 return __builtin_altivec_vmuloub(__a, __b);
4315 return __builtin_altivec_vmuleub(__a, __b);
4319 static vector
int __ATTRS_o_ai vec_mule(vector
short __a, vector
short __b) {
4320 #ifdef __LITTLE_ENDIAN__
4321 return __builtin_altivec_vmulosh(__a, __b);
4323 return __builtin_altivec_vmulesh(__a, __b);
4327 static vector
unsigned int __ATTRS_o_ai vec_mule(vector
unsigned short __a,
4328 vector
unsigned short __b) {
4329 #ifdef __LITTLE_ENDIAN__
4330 return __builtin_altivec_vmulouh(__a, __b);
4332 return __builtin_altivec_vmuleuh(__a, __b);
4336 #ifdef __POWER8_VECTOR__
4337 static vector
signed long long __ATTRS_o_ai vec_mule(vector
signed int __a,
4338 vector
signed int __b) {
4339 #ifdef __LITTLE_ENDIAN__
4340 return __builtin_altivec_vmulosw(__a, __b);
4342 return __builtin_altivec_vmulesw(__a, __b);
4347 vec_mule(vector
unsigned int __a, vector
unsigned int __b) {
4348 #ifdef __LITTLE_ENDIAN__
4349 return __builtin_altivec_vmulouw(__a, __b);
4351 return __builtin_altivec_vmuleuw(__a, __b);
4359 vec_vmulesb(vector
signed char __a, vector
signed char __b) {
4360 #ifdef __LITTLE_ENDIAN__
4361 return __builtin_altivec_vmulosb(__a, __b);
4363 return __builtin_altivec_vmulesb(__a, __b);
4369 static vector
unsigned short __attribute__((__always_inline__))
4370 vec_vmuleub(vector
unsigned char __a, vector
unsigned char __b) {
4371 #ifdef __LITTLE_ENDIAN__
4372 return __builtin_altivec_vmuloub(__a, __b);
4374 return __builtin_altivec_vmuleub(__a, __b);
4381 vec_vmulesh(vector
short __a, vector
short __b) {
4382 #ifdef __LITTLE_ENDIAN__
4383 return __builtin_altivec_vmulosh(__a, __b);
4385 return __builtin_altivec_vmulesh(__a, __b);
4391 static vector
unsigned int __attribute__((__always_inline__))
4392 vec_vmuleuh(vector
unsigned short __a, vector
unsigned short __b) {
4393 #ifdef __LITTLE_ENDIAN__
4394 return __builtin_altivec_vmulouh(__a, __b);
4396 return __builtin_altivec_vmuleuh(__a, __b);
4402 static vector
short __ATTRS_o_ai vec_mulo(vector
signed char __a,
4403 vector
signed char __b) {
4404 #ifdef __LITTLE_ENDIAN__
4405 return __builtin_altivec_vmulesb(__a, __b);
4407 return __builtin_altivec_vmulosb(__a, __b);
4411 static vector
unsigned short __ATTRS_o_ai vec_mulo(vector
unsigned char __a,
4412 vector
unsigned char __b) {
4413 #ifdef __LITTLE_ENDIAN__
4414 return __builtin_altivec_vmuleub(__a, __b);
4416 return __builtin_altivec_vmuloub(__a, __b);
4420 static vector
int __ATTRS_o_ai vec_mulo(vector
short __a, vector
short __b) {
4421 #ifdef __LITTLE_ENDIAN__
4422 return __builtin_altivec_vmulesh(__a, __b);
4424 return __builtin_altivec_vmulosh(__a, __b);
4428 static vector
unsigned int __ATTRS_o_ai vec_mulo(vector
unsigned short __a,
4429 vector
unsigned short __b) {
4430 #ifdef __LITTLE_ENDIAN__
4431 return __builtin_altivec_vmuleuh(__a, __b);
4433 return __builtin_altivec_vmulouh(__a, __b);
4437 #ifdef __POWER8_VECTOR__
4438 static vector
signed long long __ATTRS_o_ai vec_mulo(vector
signed int __a,
4439 vector
signed int __b) {
4440 #ifdef __LITTLE_ENDIAN__
4441 return __builtin_altivec_vmulesw(__a, __b);
4443 return __builtin_altivec_vmulosw(__a, __b);
4448 vec_mulo(vector
unsigned int __a, vector
unsigned int __b) {
4449 #ifdef __LITTLE_ENDIAN__
4450 return __builtin_altivec_vmuleuw(__a, __b);
4452 return __builtin_altivec_vmulouw(__a, __b);
4460 vec_vmulosb(vector
signed char __a, vector
signed char __b) {
4461 #ifdef __LITTLE_ENDIAN__
4462 return __builtin_altivec_vmulesb(__a, __b);
4464 return __builtin_altivec_vmulosb(__a, __b);
4470 static vector
unsigned short __attribute__((__always_inline__))
4471 vec_vmuloub(vector
unsigned char __a, vector
unsigned char __b) {
4472 #ifdef __LITTLE_ENDIAN__
4473 return __builtin_altivec_vmuleub(__a, __b);
4475 return __builtin_altivec_vmuloub(__a, __b);
4482 vec_vmulosh(vector
short __a, vector
short __b) {
4483 #ifdef __LITTLE_ENDIAN__
4484 return __builtin_altivec_vmulesh(__a, __b);
4486 return __builtin_altivec_vmulosh(__a, __b);
4492 static vector
unsigned int __attribute__((__always_inline__))
4493 vec_vmulouh(vector
unsigned short __a, vector
unsigned short __b) {
4494 #ifdef __LITTLE_ENDIAN__
4495 return __builtin_altivec_vmuleuh(__a, __b);
4497 return __builtin_altivec_vmulouh(__a, __b);
4503 #ifdef __POWER8_VECTOR__
4504 static vector
signed char __ATTRS_o_ai vec_nand(vector
signed char __a,
4505 vector
signed char __b) {
4506 return ~(__a &
__b);
4509 static vector
signed char __ATTRS_o_ai vec_nand(vector
signed char __a,
4510 vector
bool char __b) {
4511 return ~(__a &
__b);
4514 static vector
signed char __ATTRS_o_ai vec_nand(vector
bool char __a,
4515 vector
signed char __b) {
4516 return ~(__a &
__b);
4519 static vector
unsigned char __ATTRS_o_ai vec_nand(vector
unsigned char __a,
4520 vector
unsigned char __b) {
4521 return ~(__a &
__b);
4524 static vector
unsigned char __ATTRS_o_ai vec_nand(vector
unsigned char __a,
4525 vector
bool char __b) {
4526 return ~(__a &
__b);
4530 static vector
unsigned char __ATTRS_o_ai vec_nand(vector
bool char __a,
4531 vector
unsigned char __b) {
4532 return ~(__a &
__b);
4535 static vector
bool char __ATTRS_o_ai vec_nand(vector
bool char __a,
4536 vector
bool char __b) {
4537 return ~(__a &
__b);
4540 static vector
signed short __ATTRS_o_ai vec_nand(vector
signed short __a,
4541 vector
signed short __b) {
4542 return ~(__a &
__b);
4545 static vector
signed short __ATTRS_o_ai vec_nand(vector
signed short __a,
4546 vector
bool short __b) {
4547 return ~(__a &
__b);
4550 static vector
signed short __ATTRS_o_ai vec_nand(vector
bool short __a,
4551 vector
signed short __b) {
4552 return ~(__a &
__b);
4555 static vector
unsigned short __ATTRS_o_ai vec_nand(vector
unsigned short __a,
4556 vector
unsigned short __b) {
4557 return ~(__a &
__b);
4560 static vector
unsigned short __ATTRS_o_ai vec_nand(vector
unsigned short __a,
4561 vector
bool short __b) {
4562 return ~(__a &
__b);
4566 static vector
bool short __ATTRS_o_ai vec_nand(vector
bool short __a,
4567 vector
bool short __b) {
4568 return ~(__a &
__b);
4572 static vector
signed int __ATTRS_o_ai vec_nand(vector
signed int __a,
4573 vector
signed int __b) {
4574 return ~(__a &
__b);
4577 static vector
signed int __ATTRS_o_ai vec_nand(vector
signed int __a,
4578 vector
bool int __b) {
4579 return ~(__a &
__b);
4582 static vector
signed int __ATTRS_o_ai vec_nand(vector
bool int __a,
4583 vector
signed int __b) {
4584 return ~(__a &
__b);
4587 static vector
unsigned int __ATTRS_o_ai vec_nand(vector
unsigned int __a,
4588 vector
unsigned int __b) {
4589 return ~(__a &
__b);
4592 static vector
unsigned int __ATTRS_o_ai vec_nand(vector
unsigned int __a,
4593 vector
bool int __b) {
4594 return ~(__a &
__b);
4597 static vector
unsigned int __ATTRS_o_ai vec_nand(vector
bool int __a,
4598 vector
unsigned int __b) {
4599 return ~(__a &
__b);
4602 static vector
bool int __ATTRS_o_ai vec_nand(vector
bool int __a,
4603 vector
bool int __b) {
4604 return ~(__a &
__b);
4608 vec_nand(vector
signed long long __a, vector
signed long long __b) {
4609 return ~(__a &
__b);
4613 vec_nand(vector
signed long long __a, vector
bool long long __b) {
4614 return ~(__a &
__b);
4618 vec_nand(vector
bool long long __a, vector
signed long long __b) {
4619 return ~(__a &
__b);
4623 vec_nand(vector
unsigned long long __a, vector
unsigned long long __b) {
4624 return ~(__a &
__b);
4628 vec_nand(vector
unsigned long long __a, vector
bool long long __b) {
4629 return ~(__a &
__b);
4633 vec_nand(vector
bool long long __a, vector
unsigned long long __b) {
4634 return ~(__a &
__b);
4638 vec_nand(vector
bool long long __a, vector
bool long long __b) {
4639 return ~(__a &
__b);
4648 vec_nmadd(vector
float __a, vector
float __b, vector
float __c) {
4649 return __builtin_vsx_xvnmaddasp(__a, __b, __c);
4653 vec_nmadd(vector
double __a, vector
double __b, vector
double __c) {
4654 return __builtin_vsx_xvnmaddadp(__a, __b, __c);
4661 vec_nmsub(vector
float __a, vector
float __b, vector
float __c) {
4663 return __builtin_vsx_xvnmsubasp(__a, __b, __c);
4665 return __builtin_altivec_vnmsubfp(__a, __b, __c);
4671 vec_nmsub(vector
double __a, vector
double __b, vector
double __c) {
4672 return __builtin_vsx_xvnmsubadp(__a, __b, __c);
4679 vec_vnmsubfp(vector
float __a, vector
float __b, vector
float __c) {
4680 return __builtin_altivec_vnmsubfp(__a, __b, __c);
4685 #define __builtin_altivec_vnor vec_nor
4687 static vector
signed char __ATTRS_o_ai vec_nor(vector
signed char __a,
4688 vector
signed char __b) {
4689 return ~(__a |
__b);
4692 static vector
unsigned char __ATTRS_o_ai vec_nor(vector
unsigned char __a,
4693 vector
unsigned char __b) {
4694 return ~(__a |
__b);
4697 static vector
bool char __ATTRS_o_ai vec_nor(vector
bool char __a,
4698 vector
bool char __b) {
4699 return ~(__a |
__b);
4702 static vector
short __ATTRS_o_ai vec_nor(vector
short __a, vector
short __b) {
4703 return ~(__a |
__b);
4706 static vector
unsigned short __ATTRS_o_ai vec_nor(vector
unsigned short __a,
4707 vector
unsigned short __b) {
4708 return ~(__a |
__b);
4711 static vector
bool short __ATTRS_o_ai vec_nor(vector
bool short __a,
4712 vector
bool short __b) {
4713 return ~(__a |
__b);
4716 static vector
int __ATTRS_o_ai vec_nor(vector
int __a, vector
int __b) {
4717 return ~(__a |
__b);
4720 static vector
unsigned int __ATTRS_o_ai vec_nor(vector
unsigned int __a,
4721 vector
unsigned int __b) {
4722 return ~(__a |
__b);
4725 static vector
bool int __ATTRS_o_ai vec_nor(vector
bool int __a,
4726 vector
bool int __b) {
4727 return ~(__a |
__b);
4730 static vector
float __ATTRS_o_ai vec_nor(vector
float __a, vector
float __b) {
4731 vector
unsigned int __res =
4732 ~((vector
unsigned int)__a | (vector
unsigned int)
__b);
4733 return (vector
float)__res;
4738 vec_nor(vector
double __a, vector
double __b) {
4739 vector
unsigned long long __res =
4740 ~((vector
unsigned long long)__a | (vector
unsigned long long)
__b);
4741 return (vector
double)__res;
4747 static vector
signed char __ATTRS_o_ai vec_vnor(vector
signed char __a,
4748 vector
signed char __b) {
4749 return ~(__a |
__b);
4752 static vector
unsigned char __ATTRS_o_ai vec_vnor(vector
unsigned char __a,
4753 vector
unsigned char __b) {
4754 return ~(__a |
__b);
4757 static vector
bool char __ATTRS_o_ai vec_vnor(vector
bool char __a,
4758 vector
bool char __b) {
4759 return ~(__a |
__b);
4762 static vector
short __ATTRS_o_ai vec_vnor(vector
short __a, vector
short __b) {
4763 return ~(__a |
__b);
4766 static vector
unsigned short __ATTRS_o_ai vec_vnor(vector
unsigned short __a,
4767 vector
unsigned short __b) {
4768 return ~(__a |
__b);
4771 static vector
bool short __ATTRS_o_ai vec_vnor(vector
bool short __a,
4772 vector
bool short __b) {
4773 return ~(__a |
__b);
4776 static vector
int __ATTRS_o_ai vec_vnor(vector
int __a, vector
int __b) {
4777 return ~(__a |
__b);
4780 static vector
unsigned int __ATTRS_o_ai vec_vnor(vector
unsigned int __a,
4781 vector
unsigned int __b) {
4782 return ~(__a |
__b);
4785 static vector
bool int __ATTRS_o_ai vec_vnor(vector
bool int __a,
4786 vector
bool int __b) {
4787 return ~(__a |
__b);
4790 static vector
float __ATTRS_o_ai vec_vnor(vector
float __a, vector
float __b) {
4791 vector
unsigned int __res =
4792 ~((vector
unsigned int)__a | (vector
unsigned int)
__b);
4793 return (vector
float)__res;
4798 vec_nor(vector
signed long long __a, vector
signed long long __b) {
4799 return ~(__a |
__b);
4803 vec_nor(vector
unsigned long long __a, vector
unsigned long long __b) {
4804 return ~(__a |
__b);
4807 static vector
bool long long __ATTRS_o_ai vec_nor(vector
bool long long __a,
4808 vector
bool long long __b) {
4809 return ~(__a |
__b);
4815 #define __builtin_altivec_vor vec_or
4817 static vector
signed char __ATTRS_o_ai vec_or(vector
signed char __a,
4818 vector
signed char __b) {
4822 static vector
signed char __ATTRS_o_ai vec_or(vector
bool char __a,
4823 vector
signed char __b) {
4824 return (vector
signed char)__a |
__b;
4827 static vector
signed char __ATTRS_o_ai vec_or(vector
signed char __a,
4828 vector
bool char __b) {
4829 return __a | (vector
signed char)__b;
4832 static vector
unsigned char __ATTRS_o_ai vec_or(vector
unsigned char __a,
4833 vector
unsigned char __b) {
4837 static vector
unsigned char __ATTRS_o_ai vec_or(vector
bool char __a,
4838 vector
unsigned char __b) {
4839 return (vector
unsigned char)__a |
__b;
4842 static vector
unsigned char __ATTRS_o_ai vec_or(vector
unsigned char __a,
4843 vector
bool char __b) {
4844 return __a | (vector
unsigned char)__b;
4847 static vector
bool char __ATTRS_o_ai vec_or(vector
bool char __a,
4848 vector
bool char __b) {
4852 static vector
short __ATTRS_o_ai vec_or(vector
short __a, vector
short __b) {
4856 static vector
short __ATTRS_o_ai vec_or(vector
bool short __a,
4858 return (vector
short)__a |
__b;
4861 static vector
short __ATTRS_o_ai vec_or(vector
short __a,
4862 vector
bool short __b) {
4863 return __a | (vector short)__b;
4866 static vector
unsigned short __ATTRS_o_ai vec_or(vector
unsigned short __a,
4867 vector
unsigned short __b) {
4871 static vector
unsigned short __ATTRS_o_ai vec_or(vector
bool short __a,
4872 vector
unsigned short __b) {
4873 return (vector
unsigned short)__a |
__b;
4876 static vector
unsigned short __ATTRS_o_ai vec_or(vector
unsigned short __a,
4877 vector
bool short __b) {
4878 return __a | (vector
unsigned short)__b;
4881 static vector
bool short __ATTRS_o_ai vec_or(vector
bool short __a,
4882 vector
bool short __b) {
4886 static vector
int __ATTRS_o_ai vec_or(vector
int __a, vector
int __b) {
4890 static vector
int __ATTRS_o_ai vec_or(vector
bool int __a, vector
int __b) {
4891 return (vector
int)__a |
__b;
4894 static vector
int __ATTRS_o_ai vec_or(vector
int __a, vector
bool int __b) {
4895 return __a | (vector int)__b;
4898 static vector
unsigned int __ATTRS_o_ai vec_or(vector
unsigned int __a,
4899 vector
unsigned int __b) {
4903 static vector
unsigned int __ATTRS_o_ai vec_or(vector
bool int __a,
4904 vector
unsigned int __b) {
4905 return (vector
unsigned int)__a |
__b;
4908 static vector
unsigned int __ATTRS_o_ai vec_or(vector
unsigned int __a,
4909 vector
bool int __b) {
4910 return __a | (vector
unsigned int)__b;
4913 static vector
bool int __ATTRS_o_ai vec_or(vector
bool int __a,
4914 vector
bool int __b) {
4918 static vector
float __ATTRS_o_ai vec_or(vector
float __a, vector
float __b) {
4919 vector
unsigned int __res =
4920 (vector
unsigned int)__a | (vector
unsigned int)
__b;
4921 return (vector
float)__res;
4924 static vector
float __ATTRS_o_ai vec_or(vector
bool int __a, vector
float __b) {
4925 vector
unsigned int __res =
4926 (vector
unsigned int)__a | (vector
unsigned int)
__b;
4927 return (vector
float)__res;
4930 static vector
float __ATTRS_o_ai vec_or(vector
float __a, vector
bool int __b) {
4931 vector
unsigned int __res =
4932 (vector
unsigned int)__a | (vector
unsigned int)
__b;
4933 return (vector
float)__res;
4937 static vector
double __ATTRS_o_ai vec_or(vector
bool long long __a,
4938 vector
double __b) {
4939 return (vector
unsigned long long)__a | (vector
unsigned long long)__b;
4942 static vector
double __ATTRS_o_ai vec_or(vector
double __a,
4943 vector
bool long long __b) {
4944 return (vector
unsigned long long)__a | (vector
unsigned long long)__b;
4947 static vector
double __ATTRS_o_ai vec_or(vector
double __a, vector
double __b) {
4948 vector
unsigned long long __res =
4949 (vector
unsigned long long)__a | (vector
unsigned long long)
__b;
4950 return (vector
double)__res;
4954 vec_or(vector
signed long long __a, vector
signed long long __b) {
4959 vec_or(vector
bool long long __a, vector
signed long long __b) {
4960 return (vector
signed long long)__a |
__b;
4963 static vector
signed long long __ATTRS_o_ai vec_or(vector
signed long long __a,
4964 vector
bool long long __b) {
4965 return __a | (vector
signed long long)__b;
4969 vec_or(vector
unsigned long long __a, vector
unsigned long long __b) {
4974 vec_or(vector
bool long long __a, vector
unsigned long long __b) {
4975 return (vector
unsigned long long)__a |
__b;
4979 vec_or(vector
unsigned long long __a, vector
bool long long __b) {
4980 return __a | (vector
unsigned long long)__b;
4983 static vector
bool long long __ATTRS_o_ai vec_or(vector
bool long long __a,
4984 vector
bool long long __b) {
4989 #ifdef __POWER8_VECTOR__
4990 static vector
signed char __ATTRS_o_ai vec_orc(vector
signed char __a,
4991 vector
signed char __b) {
4995 static vector
signed char __ATTRS_o_ai vec_orc(vector
signed char __a,
4996 vector
bool char __b) {
5000 static vector
signed char __ATTRS_o_ai vec_orc(vector
bool char __a,
5001 vector
signed char __b) {
5005 static vector
unsigned char __ATTRS_o_ai vec_orc(vector
unsigned char __a,
5006 vector
unsigned char __b) {
5010 static vector
unsigned char __ATTRS_o_ai vec_orc(vector
unsigned char __a,
5011 vector
bool char __b) {
5015 static vector
unsigned char __ATTRS_o_ai vec_orc(vector
bool char __a,
5016 vector
unsigned char __b) {
5020 static vector
bool char __ATTRS_o_ai vec_orc(vector
bool char __a,
5021 vector
bool char __b) {
5025 static vector
signed short __ATTRS_o_ai vec_orc(vector
signed short __a,
5026 vector
signed short __b) {
5030 static vector
signed short __ATTRS_o_ai vec_orc(vector
signed short __a,
5031 vector
bool short __b) {
5035 static vector
signed short __ATTRS_o_ai vec_orc(vector
bool short __a,
5036 vector
signed short __b) {
5040 static vector
unsigned short __ATTRS_o_ai vec_orc(vector
unsigned short __a,
5041 vector
unsigned short __b) {
5045 static vector
unsigned short __ATTRS_o_ai vec_orc(vector
unsigned short __a,
5046 vector
bool short __b) {
5051 vec_orc(vector
bool short __a, vector
unsigned short __b) {
5055 static vector
bool short __ATTRS_o_ai vec_orc(vector
bool short __a,
5056 vector
bool short __b) {
5060 static vector
signed int __ATTRS_o_ai vec_orc(vector
signed int __a,
5061 vector
signed int __b) {
5065 static vector
signed int __ATTRS_o_ai vec_orc(vector
signed int __a,
5066 vector
bool int __b) {
5070 static vector
signed int __ATTRS_o_ai vec_orc(vector
bool int __a,
5071 vector
signed int __b) {
5075 static vector
unsigned int __ATTRS_o_ai vec_orc(vector
unsigned int __a,
5076 vector
unsigned int __b) {
5080 static vector
unsigned int __ATTRS_o_ai vec_orc(vector
unsigned int __a,
5081 vector
bool int __b) {
5085 static vector
unsigned int __ATTRS_o_ai vec_orc(vector
bool int __a,
5086 vector
unsigned int __b) {
5090 static vector
bool int __ATTRS_o_ai vec_orc(vector
bool int __a,
5091 vector
bool int __b) {
5096 vec_orc(vector
signed long long __a, vector
signed long long __b) {
5100 static vector
signed long long __ATTRS_o_ai vec_orc(vector
signed long long __a,
5101 vector
bool long long __b) {
5106 vec_orc(vector
bool long long __a, vector
signed long long __b) {
5111 vec_orc(vector
unsigned long long __a, vector
unsigned long long __b) {
5116 vec_orc(vector
unsigned long long __a, vector
bool long long __b) {
5121 vec_orc(vector
bool long long __a, vector
unsigned long long __b) {
5126 vec_orc(vector
bool long long __a, vector
bool long long __b) {
5133 static vector
signed char __ATTRS_o_ai vec_vor(vector
signed char __a,
5134 vector
signed char __b) {
5138 static vector
signed char __ATTRS_o_ai vec_vor(vector
bool char __a,
5139 vector
signed char __b) {
5140 return (vector
signed char)__a |
__b;
5143 static vector
signed char __ATTRS_o_ai vec_vor(vector
signed char __a,
5144 vector
bool char __b) {
5145 return __a | (vector
signed char)__b;
5148 static vector
unsigned char __ATTRS_o_ai vec_vor(vector
unsigned char __a,
5149 vector
unsigned char __b) {
5153 static vector
unsigned char __ATTRS_o_ai vec_vor(vector
bool char __a,
5154 vector
unsigned char __b) {
5155 return (vector
unsigned char)__a |
__b;
5158 static vector
unsigned char __ATTRS_o_ai vec_vor(vector
unsigned char __a,
5159 vector
bool char __b) {
5160 return __a | (vector
unsigned char)__b;
5163 static vector
bool char __ATTRS_o_ai vec_vor(vector
bool char __a,
5164 vector
bool char __b) {
5168 static vector
short __ATTRS_o_ai vec_vor(vector
short __a, vector
short __b) {
5172 static vector
short __ATTRS_o_ai vec_vor(vector
bool short __a,
5174 return (vector
short)__a |
__b;
5177 static vector
short __ATTRS_o_ai vec_vor(vector
short __a,
5178 vector
bool short __b) {
5179 return __a | (vector short)__b;
5182 static vector
unsigned short __ATTRS_o_ai vec_vor(vector
unsigned short __a,
5183 vector
unsigned short __b) {
5187 static vector
unsigned short __ATTRS_o_ai vec_vor(vector
bool short __a,
5188 vector
unsigned short __b) {
5189 return (vector
unsigned short)__a |
__b;
5192 static vector
unsigned short __ATTRS_o_ai vec_vor(vector
unsigned short __a,
5193 vector
bool short __b) {
5194 return __a | (vector
unsigned short)__b;
5197 static vector
bool short __ATTRS_o_ai vec_vor(vector
bool short __a,
5198 vector
bool short __b) {
5202 static vector
int __ATTRS_o_ai vec_vor(vector
int __a, vector
int __b) {
5206 static vector
int __ATTRS_o_ai vec_vor(vector
bool int __a, vector
int __b) {
5207 return (vector
int)__a |
__b;
5210 static vector
int __ATTRS_o_ai vec_vor(vector
int __a, vector
bool int __b) {
5211 return __a | (vector int)__b;
5214 static vector
unsigned int __ATTRS_o_ai vec_vor(vector
unsigned int __a,
5215 vector
unsigned int __b) {
5219 static vector
unsigned int __ATTRS_o_ai vec_vor(vector
bool int __a,
5220 vector
unsigned int __b) {
5221 return (vector
unsigned int)__a |
__b;
5224 static vector
unsigned int __ATTRS_o_ai vec_vor(vector
unsigned int __a,
5225 vector
bool int __b) {
5226 return __a | (vector
unsigned int)__b;
5229 static vector
bool int __ATTRS_o_ai vec_vor(vector
bool int __a,
5230 vector
bool int __b) {
5234 static vector
float __ATTRS_o_ai vec_vor(vector
float __a, vector
float __b) {
5235 vector
unsigned int __res =
5236 (vector
unsigned int)__a | (vector
unsigned int)
__b;
5237 return (vector
float)__res;
5240 static vector
float __ATTRS_o_ai vec_vor(vector
bool int __a,
5242 vector
unsigned int __res =
5243 (vector
unsigned int)__a | (vector
unsigned int)
__b;
5244 return (vector
float)__res;
5247 static vector
float __ATTRS_o_ai vec_vor(vector
float __a,
5248 vector
bool int __b) {
5249 vector
unsigned int __res =
5250 (vector
unsigned int)__a | (vector
unsigned int)
__b;
5251 return (vector
float)__res;
5256 vec_vor(vector
signed long long __a, vector
signed long long __b) {
5261 vec_vor(vector
bool long long __a, vector
signed long long __b) {
5262 return (vector
signed long long)__a |
__b;
5265 static vector
signed long long __ATTRS_o_ai vec_vor(vector
signed long long __a,
5266 vector
bool long long __b) {
5267 return __a | (vector
signed long long)__b;
5271 vec_vor(vector
unsigned long long __a, vector
unsigned long long __b) {
5276 vec_vor(vector
bool long long __a, vector
unsigned long long __b) {
5277 return (vector
unsigned long long)__a |
__b;
5281 vec_vor(vector
unsigned long long __a, vector
bool long long __b) {
5282 return __a | (vector
unsigned long long)__b;
5285 static vector
bool long long __ATTRS_o_ai vec_vor(vector
bool long long __a,
5286 vector
bool long long __b) {
5296 static vector
signed char __ATTRS_o_ai vec_pack(vector
signed short __a,
5297 vector
signed short __b) {
5298 #ifdef __LITTLE_ENDIAN__
5299 return (vector
signed char)vec_perm(
5301 (vector
unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
5302 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E));
5304 return (vector
signed char)vec_perm(
5306 (vector
unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
5307 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
5311 static vector
unsigned char __ATTRS_o_ai vec_pack(vector
unsigned short __a,
5312 vector
unsigned short __b) {
5313 #ifdef __LITTLE_ENDIAN__
5314 return (vector
unsigned char)vec_perm(
5316 (vector
unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
5317 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E));
5319 return (vector
unsigned char)vec_perm(
5321 (vector
unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
5322 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
5326 static vector
bool char __ATTRS_o_ai vec_pack(vector
bool short __a,
5327 vector
bool short __b) {
5328 #ifdef __LITTLE_ENDIAN__
5329 return (vector
bool char)vec_perm(
5331 (vector
unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
5332 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E));
5334 return (vector
bool char)vec_perm(
5336 (vector
unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
5337 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
5341 static vector
short __ATTRS_o_ai vec_pack(vector
int __a, vector
int __b) {
5342 #ifdef __LITTLE_ENDIAN__
5343 return (vector
short)vec_perm(
5345 (vector
unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
5346 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D));
5348 return (vector
short)vec_perm(
5350 (vector
unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
5351 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
5355 static vector
unsigned short __ATTRS_o_ai vec_pack(vector
unsigned int __a,
5356 vector
unsigned int __b) {
5357 #ifdef __LITTLE_ENDIAN__
5358 return (vector
unsigned short)vec_perm(
5360 (vector
unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
5361 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D));
5363 return (vector
unsigned short)vec_perm(
5365 (vector
unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
5366 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
5370 static vector
bool short __ATTRS_o_ai vec_pack(vector
bool int __a,
5371 vector
bool int __b) {
5372 #ifdef __LITTLE_ENDIAN__
5373 return (vector
bool short)vec_perm(
5375 (vector
unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
5376 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D));
5378 return (vector
bool short)vec_perm(
5380 (vector
unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
5381 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
5386 static vector
signed int __ATTRS_o_ai vec_pack(vector
signed long long __a,
5387 vector
signed long long __b) {
5388 #ifdef __LITTLE_ENDIAN__
5389 return (vector
signed int)vec_perm(
5391 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
5392 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1A, 0x1B));
5394 return (vector
signed int)vec_perm(
5396 (vector
unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
5397 0x14, 0x15, 0x16, 0x17, 0x1C, 0x1D, 0x1E, 0x1F));
5401 vec_pack(vector
unsigned long long __a, vector
unsigned long long __b) {
5402 #ifdef __LITTLE_ENDIAN__
5403 return (vector
unsigned int)vec_perm(
5405 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
5406 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1A, 0x1B));
5408 return (vector
unsigned int)vec_perm(
5410 (vector
unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
5411 0x14, 0x15, 0x16, 0x17, 0x1C, 0x1D, 0x1E, 0x1F));
5415 static vector
bool int __ATTRS_o_ai vec_pack(vector
bool long long __a,
5416 vector
bool long long __b) {
5417 #ifdef __LITTLE_ENDIAN__
5418 return (vector
bool int)vec_perm(
5420 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
5421 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1A, 0x1B));
5423 return (vector
bool int)vec_perm(
5425 (vector
unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
5426 0x14, 0x15, 0x16, 0x17, 0x1C, 0x1D, 0x1E, 0x1F));
5434 #define __builtin_altivec_vpkuhum vec_vpkuhum
5436 static vector
signed char __ATTRS_o_ai vec_vpkuhum(vector
signed short __a,
5437 vector
signed short __b) {
5438 #ifdef __LITTLE_ENDIAN__
5439 return (vector
signed char)vec_perm(
5441 (vector
unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
5442 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E));
5444 return (vector
signed char)vec_perm(
5446 (vector
unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
5447 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
5452 vec_vpkuhum(vector
unsigned short __a, vector
unsigned short __b) {
5453 #ifdef __LITTLE_ENDIAN__
5454 return (vector
unsigned char)vec_perm(
5456 (vector
unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
5457 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E));
5459 return (vector
unsigned char)vec_perm(
5461 (vector
unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
5462 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
5466 static vector
bool char __ATTRS_o_ai vec_vpkuhum(vector
bool short __a,
5467 vector
bool short __b) {
5468 #ifdef __LITTLE_ENDIAN__
5469 return (vector
bool char)vec_perm(
5471 (vector
unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
5472 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E));
5474 return (vector
bool char)vec_perm(
5476 (vector
unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
5477 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
5483 #define __builtin_altivec_vpkuwum vec_vpkuwum
5485 static vector
short __ATTRS_o_ai vec_vpkuwum(vector
int __a, vector
int __b) {
5486 #ifdef __LITTLE_ENDIAN__
5487 return (vector
short)vec_perm(
5489 (vector
unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
5490 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D));
5492 return (vector
short)vec_perm(
5494 (vector
unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
5495 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
5499 static vector
unsigned short __ATTRS_o_ai vec_vpkuwum(vector
unsigned int __a,
5500 vector
unsigned int __b) {
5501 #ifdef __LITTLE_ENDIAN__
5502 return (vector
unsigned short)vec_perm(
5504 (vector
unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
5505 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D));
5507 return (vector
unsigned short)vec_perm(
5509 (vector
unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
5510 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
5514 static vector
bool short __ATTRS_o_ai vec_vpkuwum(vector
bool int __a,
5515 vector
bool int __b) {
5516 #ifdef __LITTLE_ENDIAN__
5517 return (vector
bool short)vec_perm(
5519 (vector
unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
5520 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D));
5522 return (vector
bool short)vec_perm(
5524 (vector
unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
5525 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
5531 #ifdef __POWER8_VECTOR__
5532 #define __builtin_altivec_vpkudum vec_vpkudum
5534 static vector
int __ATTRS_o_ai vec_vpkudum(vector
long long __a,
5535 vector
long long __b) {
5536 #ifdef __LITTLE_ENDIAN__
5537 return (vector
int)vec_perm(
5539 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
5540 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1A, 0x1B));
5542 return (vector
int)vec_perm(
5544 (vector
unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
5545 0x14, 0x15, 0x16, 0x17, 0x1C, 0x1D, 0x1E, 0x1F));
5550 vec_vpkudum(vector
unsigned long long __a, vector
unsigned long long __b) {
5551 #ifdef __LITTLE_ENDIAN__
5552 return (vector
unsigned int)vec_perm(
5554 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
5555 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1A, 0x1B));
5557 return (vector
unsigned int)vec_perm(
5559 (vector
unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
5560 0x14, 0x15, 0x16, 0x17, 0x1C, 0x1D, 0x1E, 0x1F));
5564 static vector
bool int __ATTRS_o_ai vec_vpkudum(vector
bool long long __a,
5565 vector
bool long long __b) {
5566 #ifdef __LITTLE_ENDIAN__
5567 return (vector
bool int)vec_perm(
5568 (vector
long long)__a, (vector
long long)__b,
5569 (vector
unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
5570 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1A, 0x1B));
5572 return (vector
bool int)vec_perm(
5573 (vector
long long)__a, (vector
long long)__b,
5574 (vector
unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
5575 0x14, 0x15, 0x16, 0x17, 0x1C, 0x1D, 0x1E, 0x1F));
5583 vec_packpx(vector
unsigned int __a, vector
unsigned int __b) {
5584 #ifdef __LITTLE_ENDIAN__
5585 return (vector pixel)__builtin_altivec_vpkpx(__b, __a);
5587 return (vector pixel)__builtin_altivec_vpkpx(__a, __b);
5594 vec_vpkpx(vector
unsigned int __a, vector
unsigned int __b) {
5595 #ifdef __LITTLE_ENDIAN__
5596 return (vector pixel)__builtin_altivec_vpkpx(__b, __a);
5598 return (vector pixel)__builtin_altivec_vpkpx(__a, __b);
5604 static vector
signed char __ATTRS_o_ai vec_packs(vector
short __a,
5606 #ifdef __LITTLE_ENDIAN__
5607 return __builtin_altivec_vpkshss(__b, __a);
5609 return __builtin_altivec_vpkshss(__a, __b);
5613 static vector
unsigned char __ATTRS_o_ai vec_packs(vector
unsigned short __a,
5614 vector
unsigned short __b) {
5615 #ifdef __LITTLE_ENDIAN__
5616 return __builtin_altivec_vpkuhus(__b, __a);
5618 return __builtin_altivec_vpkuhus(__a, __b);
5622 static vector
signed short __ATTRS_o_ai vec_packs(vector
int __a,
5624 #ifdef __LITTLE_ENDIAN__
5625 return __builtin_altivec_vpkswss(__b, __a);
5627 return __builtin_altivec_vpkswss(__a, __b);
5631 static vector
unsigned short __ATTRS_o_ai vec_packs(vector
unsigned int __a,
5632 vector
unsigned int __b) {
5633 #ifdef __LITTLE_ENDIAN__
5634 return __builtin_altivec_vpkuwus(__b, __a);
5636 return __builtin_altivec_vpkuwus(__a, __b);
5640 #ifdef __POWER8_VECTOR__
5641 static vector
int __ATTRS_o_ai vec_packs(vector
long long __a,
5642 vector
long long __b) {
5643 #ifdef __LITTLE_ENDIAN__
5644 return __builtin_altivec_vpksdss(__b, __a);
5646 return __builtin_altivec_vpksdss(__a, __b);
5651 vec_packs(vector
unsigned long long __a, vector
unsigned long long __b) {
5652 #ifdef __LITTLE_ENDIAN__
5653 return __builtin_altivec_vpkudus(__b, __a);
5655 return __builtin_altivec_vpkudus(__a, __b);
5662 static vector
signed char __attribute__((__always_inline__))
5663 vec_vpkshss(vector
short __a, vector
short __b) {
5664 #ifdef __LITTLE_ENDIAN__
5665 return __builtin_altivec_vpkshss(__b, __a);
5667 return __builtin_altivec_vpkshss(__a, __b);
5673 #ifdef __POWER8_VECTOR__
5674 static vector
int __ATTRS_o_ai vec_vpksdss(vector
long long __a,
5675 vector
long long __b) {
5676 #ifdef __LITTLE_ENDIAN__
5677 return __builtin_altivec_vpksdss(__b, __a);
5679 return __builtin_altivec_vpksdss(__a, __b);
5686 static vector
unsigned char __attribute__((__always_inline__))
5687 vec_vpkuhus(vector
unsigned short __a, vector
unsigned short __b) {
5688 #ifdef __LITTLE_ENDIAN__
5689 return __builtin_altivec_vpkuhus(__b, __a);
5691 return __builtin_altivec_vpkuhus(__a, __b);
5697 #ifdef __POWER8_VECTOR__
5698 static vector
unsigned int __attribute__((__always_inline__))
5699 vec_vpkudus(vector
unsigned long long __a, vector
unsigned long long __b) {
5700 #ifdef __LITTLE_ENDIAN__
5701 return __builtin_altivec_vpkudus(__b, __a);
5703 return __builtin_altivec_vpkudus(__a, __b);
5710 static vector
signed short __attribute__((__always_inline__))
5711 vec_vpkswss(vector
int __a, vector
int __b) {
5712 #ifdef __LITTLE_ENDIAN__
5713 return __builtin_altivec_vpkswss(__b, __a);
5715 return __builtin_altivec_vpkswss(__a, __b);
5721 static vector
unsigned short __attribute__((__always_inline__))
5722 vec_vpkuwus(vector
unsigned int __a, vector
unsigned int __b) {
5723 #ifdef __LITTLE_ENDIAN__
5724 return __builtin_altivec_vpkuwus(__b, __a);
5726 return __builtin_altivec_vpkuwus(__a, __b);
5732 static vector
unsigned char __ATTRS_o_ai vec_packsu(vector
short __a,
5734 #ifdef __LITTLE_ENDIAN__
5735 return __builtin_altivec_vpkshus(__b, __a);
5737 return __builtin_altivec_vpkshus(__a, __b);
5741 static vector
unsigned char __ATTRS_o_ai vec_packsu(vector
unsigned short __a,
5742 vector
unsigned short __b) {
5743 #ifdef __LITTLE_ENDIAN__
5744 return __builtin_altivec_vpkuhus(__b, __a);
5746 return __builtin_altivec_vpkuhus(__a, __b);
5750 static vector
unsigned short __ATTRS_o_ai vec_packsu(vector
int __a,
5752 #ifdef __LITTLE_ENDIAN__
5753 return __builtin_altivec_vpkswus(__b, __a);
5755 return __builtin_altivec_vpkswus(__a, __b);
5759 static vector
unsigned short __ATTRS_o_ai vec_packsu(vector
unsigned int __a,
5760 vector
unsigned int __b) {
5761 #ifdef __LITTLE_ENDIAN__
5762 return __builtin_altivec_vpkuwus(__b, __a);
5764 return __builtin_altivec_vpkuwus(__a, __b);
5768 #ifdef __POWER8_VECTOR__
5769 static vector
unsigned int __ATTRS_o_ai vec_packsu(vector
long long __a,
5770 vector
long long __b) {
5771 #ifdef __LITTLE_ENDIAN__
5772 return __builtin_altivec_vpksdus(__b, __a);
5774 return __builtin_altivec_vpksdus(__a, __b);
5779 vec_packsu(vector
unsigned long long __a, vector
unsigned long long __b) {
5780 #ifdef __LITTLE_ENDIAN__
5781 return __builtin_altivec_vpkudus(__b, __a);
5783 return __builtin_altivec_vpkudus(__a, __b);
5790 static vector
unsigned char __ATTRS_o_ai vec_vpkshus(vector
short __a,
5792 #ifdef __LITTLE_ENDIAN__
5793 return __builtin_altivec_vpkshus(__b, __a);
5795 return __builtin_altivec_vpkshus(__a, __b);
5800 vec_vpkshus(vector
unsigned short __a, vector
unsigned short __b) {
5801 #ifdef __LITTLE_ENDIAN__
5802 return __builtin_altivec_vpkuhus(__b, __a);
5804 return __builtin_altivec_vpkuhus(__a, __b);
5810 static vector
unsigned short __ATTRS_o_ai vec_vpkswus(vector
int __a,
5812 #ifdef __LITTLE_ENDIAN__
5813 return __builtin_altivec_vpkswus(__b, __a);
5815 return __builtin_altivec_vpkswus(__a, __b);
5819 static vector
unsigned short __ATTRS_o_ai vec_vpkswus(vector
unsigned int __a,
5820 vector
unsigned int __b) {
5821 #ifdef __LITTLE_ENDIAN__
5822 return __builtin_altivec_vpkuwus(__b, __a);
5824 return __builtin_altivec_vpkuwus(__a, __b);
5830 #ifdef __POWER8_VECTOR__
5831 static vector
unsigned int __ATTRS_o_ai vec_vpksdus(vector
long long __a,
5832 vector
long long __b) {
5833 #ifdef __LITTLE_ENDIAN__
5834 return __builtin_altivec_vpksdus(__b, __a);
5836 return __builtin_altivec_vpksdus(__a, __b);
5851 static vector
signed char __ATTRS_o_ai vec_perm(vector
signed char __a,
5852 vector
signed char __b,
5853 vector
unsigned char __c) {
5854 #ifdef __LITTLE_ENDIAN__
5855 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5856 255, 255, 255, 255, 255, 255, 255, 255};
5857 __d = vec_xor(__c, __d);
5858 return (vector
signed char)__builtin_altivec_vperm_4si((vector
int)__b,
5859 (vector
int)__a, __d);
5861 return (vector
signed char)__builtin_altivec_vperm_4si((vector
int)__a,
5862 (vector
int)__b, __c);
5866 static vector
unsigned char __ATTRS_o_ai vec_perm(vector
unsigned char __a,
5867 vector
unsigned char __b,
5868 vector
unsigned char __c) {
5869 #ifdef __LITTLE_ENDIAN__
5870 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5871 255, 255, 255, 255, 255, 255, 255, 255};
5872 __d = vec_xor(__c, __d);
5873 return (vector
unsigned char)__builtin_altivec_vperm_4si(
5874 (vector
int)__b, (vector
int)__a, __d);
5876 return (vector
unsigned char)__builtin_altivec_vperm_4si(
5877 (vector
int)__a, (vector
int)__b, __c);
5881 static vector
bool char __ATTRS_o_ai vec_perm(vector
bool char __a,
5882 vector
bool char __b,
5883 vector
unsigned char __c) {
5884 #ifdef __LITTLE_ENDIAN__
5885 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5886 255, 255, 255, 255, 255, 255, 255, 255};
5887 __d = vec_xor(__c, __d);
5888 return (vector
bool char)__builtin_altivec_vperm_4si((vector
int)__b,
5889 (vector
int)__a, __d);
5891 return (vector
bool char)__builtin_altivec_vperm_4si((vector
int)__a,
5892 (vector
int)__b, __c);
5896 static vector
short __ATTRS_o_ai vec_perm(vector
signed short __a,
5897 vector
signed short __b,
5898 vector
unsigned char __c) {
5899 #ifdef __LITTLE_ENDIAN__
5900 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5901 255, 255, 255, 255, 255, 255, 255, 255};
5902 __d = vec_xor(__c, __d);
5903 return (vector
signed short)__builtin_altivec_vperm_4si((vector
int)__b,
5904 (vector
int)__a, __d);
5906 return (vector
signed short)__builtin_altivec_vperm_4si((vector
int)__a,
5907 (vector
int)__b, __c);
5911 static vector
unsigned short __ATTRS_o_ai vec_perm(vector
unsigned short __a,
5912 vector
unsigned short __b,
5913 vector
unsigned char __c) {
5914 #ifdef __LITTLE_ENDIAN__
5915 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5916 255, 255, 255, 255, 255, 255, 255, 255};
5917 __d = vec_xor(__c, __d);
5918 return (vector
unsigned short)__builtin_altivec_vperm_4si(
5919 (vector
int)__b, (vector
int)__a, __d);
5921 return (vector
unsigned short)__builtin_altivec_vperm_4si(
5922 (vector
int)__a, (vector
int)__b, __c);
5926 static vector
bool short __ATTRS_o_ai vec_perm(vector
bool short __a,
5927 vector
bool short __b,
5928 vector
unsigned char __c) {
5929 #ifdef __LITTLE_ENDIAN__
5930 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5931 255, 255, 255, 255, 255, 255, 255, 255};
5932 __d = vec_xor(__c, __d);
5933 return (vector
bool short)__builtin_altivec_vperm_4si((vector
int)__b,
5934 (vector
int)__a, __d);
5936 return (vector
bool short)__builtin_altivec_vperm_4si((vector
int)__a,
5937 (vector
int)__b, __c);
5941 static vector pixel
__ATTRS_o_ai vec_perm(vector pixel __a, vector pixel __b,
5942 vector
unsigned char __c) {
5943 #ifdef __LITTLE_ENDIAN__
5944 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5945 255, 255, 255, 255, 255, 255, 255, 255};
5946 __d = vec_xor(__c, __d);
5947 return (vector pixel)__builtin_altivec_vperm_4si((vector
int)__b,
5948 (vector
int)__a, __d);
5950 return (vector pixel)__builtin_altivec_vperm_4si((vector
int)__a,
5951 (vector
int)__b, __c);
5955 static vector
int __ATTRS_o_ai vec_perm(vector
signed int __a,
5956 vector
signed int __b,
5957 vector
unsigned char __c) {
5958 #ifdef __LITTLE_ENDIAN__
5959 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5960 255, 255, 255, 255, 255, 255, 255, 255};
5961 __d = vec_xor(__c, __d);
5962 return (vector
signed int)__builtin_altivec_vperm_4si(__b, __a, __d);
5964 return (vector
signed int)__builtin_altivec_vperm_4si(__a, __b, __c);
5968 static vector
unsigned int __ATTRS_o_ai vec_perm(vector
unsigned int __a,
5969 vector
unsigned int __b,
5970 vector
unsigned char __c) {
5971 #ifdef __LITTLE_ENDIAN__
5972 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5973 255, 255, 255, 255, 255, 255, 255, 255};
5974 __d = vec_xor(__c, __d);
5975 return (vector
unsigned int)__builtin_altivec_vperm_4si((vector
int)__b,
5976 (vector
int)__a, __d);
5978 return (vector
unsigned int)__builtin_altivec_vperm_4si((vector
int)__a,
5979 (vector
int)__b, __c);
5983 static vector
bool int __ATTRS_o_ai vec_perm(vector
bool int __a,
5984 vector
bool int __b,
5985 vector
unsigned char __c) {
5986 #ifdef __LITTLE_ENDIAN__
5987 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
5988 255, 255, 255, 255, 255, 255, 255, 255};
5989 __d = vec_xor(__c, __d);
5990 return (vector
bool int)__builtin_altivec_vperm_4si((vector
int)__b,
5991 (vector
int)__a, __d);
5993 return (vector
bool int)__builtin_altivec_vperm_4si((vector
int)__a,
5994 (vector
int)__b, __c);
5998 static vector
float __ATTRS_o_ai vec_perm(vector
float __a, vector
float __b,
5999 vector
unsigned char __c) {
6000 #ifdef __LITTLE_ENDIAN__
6001 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
6002 255, 255, 255, 255, 255, 255, 255, 255};
6003 __d = vec_xor(__c, __d);
6004 return (vector
float)__builtin_altivec_vperm_4si((vector
int)__b,
6005 (vector
int)__a, __d);
6007 return (vector
float)__builtin_altivec_vperm_4si((vector
int)__a,
6008 (vector
int)__b, __c);
6013 static vector
long long __ATTRS_o_ai vec_perm(vector
signed long long __a,
6014 vector
signed long long __b,
6015 vector
unsigned char __c) {
6016 #ifdef __LITTLE_ENDIAN__
6017 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
6018 255, 255, 255, 255, 255, 255, 255, 255};
6019 __d = vec_xor(__c, __d);
6020 return (vector
signed long long)__builtin_altivec_vperm_4si(
6021 (vector
int)__b, (vector
int)__a, __d);
6023 return (vector
signed long long)__builtin_altivec_vperm_4si(
6024 (vector
int)__a, (vector
int)__b, __c);
6029 vec_perm(vector
unsigned long long __a, vector
unsigned long long __b,
6030 vector
unsigned char __c) {
6031 #ifdef __LITTLE_ENDIAN__
6032 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
6033 255, 255, 255, 255, 255, 255, 255, 255};
6034 __d = vec_xor(__c, __d);
6035 return (vector
unsigned long long)__builtin_altivec_vperm_4si(
6036 (vector
int)__b, (vector
int)__a, __d);
6038 return (vector
unsigned long long)__builtin_altivec_vperm_4si(
6039 (vector
int)__a, (vector
int)__b, __c);
6044 vec_perm(vector
bool long long __a, vector
bool long long __b,
6045 vector
unsigned char __c) {
6046 #ifdef __LITTLE_ENDIAN__
6047 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
6048 255, 255, 255, 255, 255, 255, 255, 255};
6049 __d = vec_xor(__c, __d);
6050 return (vector
bool long long)__builtin_altivec_vperm_4si(
6051 (vector
int)__b, (vector
int)__a, __d);
6053 return (vector
bool long long)__builtin_altivec_vperm_4si(
6054 (vector
int)__a, (vector
int)__b, __c);
6058 static vector
double __ATTRS_o_ai vec_perm(vector
double __a, vector
double __b,
6059 vector
unsigned char __c) {
6060 #ifdef __LITTLE_ENDIAN__
6061 vector
unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
6062 255, 255, 255, 255, 255, 255, 255, 255};
6063 __d = vec_xor(__c, __d);
6064 return (vector
double)__builtin_altivec_vperm_4si((vector
int)__b,
6065 (vector
int)__a, __d);
6067 return (vector
double)__builtin_altivec_vperm_4si((vector
int)__a,
6068 (vector
int)__b, __c);
6075 static vector
signed char __ATTRS_o_ai vec_vperm(vector
signed char __a,
6076 vector
signed char __b,
6077 vector
unsigned char __c) {
6078 return vec_perm(__a, __b, __c);
6081 static vector
unsigned char __ATTRS_o_ai vec_vperm(vector
unsigned char __a,
6082 vector
unsigned char __b,
6083 vector
unsigned char __c) {
6084 return vec_perm(__a, __b, __c);
6087 static vector
bool char __ATTRS_o_ai vec_vperm(vector
bool char __a,
6088 vector
bool char __b,
6089 vector
unsigned char __c) {
6090 return vec_perm(__a, __b, __c);
6093 static vector
short __ATTRS_o_ai vec_vperm(vector
short __a, vector
short __b,
6094 vector
unsigned char __c) {
6095 return vec_perm(__a, __b, __c);
6098 static vector
unsigned short __ATTRS_o_ai vec_vperm(vector
unsigned short __a,
6099 vector
unsigned short __b,
6100 vector
unsigned char __c) {
6101 return vec_perm(__a, __b, __c);
6104 static vector
bool short __ATTRS_o_ai vec_vperm(vector
bool short __a,
6105 vector
bool short __b,
6106 vector
unsigned char __c) {
6107 return vec_perm(__a, __b, __c);
6110 static vector pixel
__ATTRS_o_ai vec_vperm(vector pixel __a, vector pixel __b,
6111 vector
unsigned char __c) {
6112 return vec_perm(__a, __b, __c);
6115 static vector
int __ATTRS_o_ai vec_vperm(vector
int __a, vector
int __b,
6116 vector
unsigned char __c) {
6117 return vec_perm(__a, __b, __c);
6120 static vector
unsigned int __ATTRS_o_ai vec_vperm(vector
unsigned int __a,
6121 vector
unsigned int __b,
6122 vector
unsigned char __c) {
6123 return vec_perm(__a, __b, __c);
6126 static vector
bool int __ATTRS_o_ai vec_vperm(vector
bool int __a,
6127 vector
bool int __b,
6128 vector
unsigned char __c) {
6129 return vec_perm(__a, __b, __c);
6132 static vector
float __ATTRS_o_ai vec_vperm(vector
float __a, vector
float __b,
6133 vector
unsigned char __c) {
6134 return vec_perm(__a, __b, __c);
6138 static vector
long long __ATTRS_o_ai vec_vperm(vector
long long __a,
6139 vector
long long __b,
6140 vector
unsigned char __c) {
6141 return vec_perm(__a, __b, __c);
6145 vec_vperm(vector
unsigned long long __a, vector
unsigned long long __b,
6146 vector
unsigned char __c) {
6147 return vec_perm(__a, __b, __c);
6150 static vector
double __ATTRS_o_ai vec_vperm(vector
double __a,
6152 vector
unsigned char __c) {
6153 return vec_perm(__a, __b, __c);
6160 vec_re(vector
float __a) {
6162 return __builtin_vsx_xvresp(__a);
6164 return __builtin_altivec_vrefp(__a);
6169 static vector
double __ATTRS_o_ai vec_re(vector
double __a) {
6170 return __builtin_vsx_xvredp(__a);
6177 vec_vrefp(vector
float __a) {
6178 return __builtin_altivec_vrefp(__a);
6183 static vector
signed char __ATTRS_o_ai vec_rl(vector
signed char __a,
6184 vector
unsigned char __b) {
6185 return (vector
signed char)__builtin_altivec_vrlb((vector
char)__a, __b);
6188 static vector
unsigned char __ATTRS_o_ai vec_rl(vector
unsigned char __a,
6189 vector
unsigned char __b) {
6190 return (vector
unsigned char)__builtin_altivec_vrlb((vector
char)__a, __b);
6193 static vector
short __ATTRS_o_ai vec_rl(vector
short __a,
6194 vector
unsigned short __b) {
6195 return __builtin_altivec_vrlh(__a, __b);
6198 static vector
unsigned short __ATTRS_o_ai vec_rl(vector
unsigned short __a,
6199 vector
unsigned short __b) {
6200 return (vector
unsigned short)__builtin_altivec_vrlh((vector
short)__a, __b);
6203 static vector
int __ATTRS_o_ai vec_rl(vector
int __a, vector
unsigned int __b) {
6204 return __builtin_altivec_vrlw(__a, __b);
6207 static vector
unsigned int __ATTRS_o_ai vec_rl(vector
unsigned int __a,
6208 vector
unsigned int __b) {
6209 return (vector
unsigned int)__builtin_altivec_vrlw((vector
int)__a, __b);
6212 #ifdef __POWER8_VECTOR__
6214 vec_rl(vector
signed long long __a, vector
unsigned long long __b) {
6215 return __builtin_altivec_vrld(__a, __b);
6219 vec_rl(vector
unsigned long long __a, vector
unsigned long long __b) {
6220 return __builtin_altivec_vrld(__a, __b);
6226 static vector
signed char __ATTRS_o_ai vec_vrlb(vector
signed char __a,
6227 vector
unsigned char __b) {
6228 return (vector
signed char)__builtin_altivec_vrlb((vector
char)__a, __b);
6231 static vector
unsigned char __ATTRS_o_ai vec_vrlb(vector
unsigned char __a,
6232 vector
unsigned char __b) {
6233 return (vector
unsigned char)__builtin_altivec_vrlb((vector
char)__a, __b);
6238 static vector
short __ATTRS_o_ai vec_vrlh(vector
short __a,
6239 vector
unsigned short __b) {
6240 return __builtin_altivec_vrlh(__a, __b);
6243 static vector
unsigned short __ATTRS_o_ai vec_vrlh(vector
unsigned short __a,
6244 vector
unsigned short __b) {
6245 return (vector
unsigned short)__builtin_altivec_vrlh((vector
short)__a, __b);
6250 static vector
int __ATTRS_o_ai vec_vrlw(vector
int __a,
6251 vector
unsigned int __b) {
6252 return __builtin_altivec_vrlw(__a, __b);
6255 static vector
unsigned int __ATTRS_o_ai vec_vrlw(vector
unsigned int __a,
6256 vector
unsigned int __b) {
6257 return (vector
unsigned int)__builtin_altivec_vrlw((vector
int)__a, __b);
6262 static vector
float __ATTRS_o_ai vec_round(vector
float __a) {
6264 return __builtin_vsx_xvrspi(__a);
6266 return __builtin_altivec_vrfin(__a);
6271 static vector
double __ATTRS_o_ai vec_round(vector
double __a) {
6272 return __builtin_vsx_xvrdpi(__a);
6278 vec_rint(vector
float __a) {
6279 return __builtin_vsx_xvrspic(__a);
6283 vec_rint(vector
double __a) {
6284 return __builtin_vsx_xvrdpic(__a);
6289 static vector
float __ATTRS_o_ai vec_nearbyint(vector
float __a) {
6290 return __builtin_vsx_xvrspi(__a);
6293 static vector
double __ATTRS_o_ai vec_nearbyint(vector
double __a) {
6294 return __builtin_vsx_xvrdpi(__a);
6301 vec_vrfin(vector
float __a) {
6302 return __builtin_altivec_vrfin(__a);
6308 static vector
float __ATTRS_o_ai vec_sqrt(vector
float __a) {
6309 return __builtin_vsx_xvsqrtsp(__a);
6312 static vector
double __ATTRS_o_ai vec_sqrt(vector
double __a) {
6313 return __builtin_vsx_xvsqrtdp(__a);
6320 vec_rsqrte(vector
float __a) {
6322 return __builtin_vsx_xvrsqrtesp(__a);
6324 return __builtin_altivec_vrsqrtefp(__a);
6329 static vector
double __ATTRS_o_ai vec_rsqrte(vector
double __a) {
6330 return __builtin_vsx_xvrsqrtedp(__a);
6337 vec_vrsqrtefp(vector
float __a) {
6338 return __builtin_altivec_vrsqrtefp(__a);
6343 #define __builtin_altivec_vsel_4si vec_sel
6345 static vector
signed char __ATTRS_o_ai vec_sel(vector
signed char __a,
6346 vector
signed char __b,
6347 vector
unsigned char __c) {
6348 return (__a & ~(vector
signed char)__c) | (__b & (vector
signed char)__c);
6351 static vector
signed char __ATTRS_o_ai vec_sel(vector
signed char __a,
6352 vector
signed char __b,
6353 vector
bool char __c) {
6354 return (__a & ~(vector
signed char)__c) | (__b & (vector
signed char)__c);
6357 static vector
unsigned char __ATTRS_o_ai vec_sel(vector
unsigned char __a,
6358 vector
unsigned char __b,
6359 vector
unsigned char __c) {
6360 return (__a & ~__c) | (__b &
__c);
6363 static vector
unsigned char __ATTRS_o_ai vec_sel(vector
unsigned char __a,
6364 vector
unsigned char __b,
6365 vector
bool char __c) {
6366 return (__a & ~(vector
unsigned char)__c) | (__b & (vector
unsigned char)__c);
6369 static vector
bool char __ATTRS_o_ai vec_sel(vector
bool char __a,
6370 vector
bool char __b,
6371 vector
unsigned char __c) {
6372 return (__a & ~(vector
bool char)__c) | (__b & (vector
bool char)__c);
6375 static vector
bool char __ATTRS_o_ai vec_sel(vector
bool char __a,
6376 vector
bool char __b,
6377 vector
bool char __c) {
6378 return (__a & ~__c) | (__b &
__c);
6381 static vector
short __ATTRS_o_ai vec_sel(vector
short __a, vector
short __b,
6382 vector
unsigned short __c) {
6383 return (__a & ~(vector
short)__c) | (__b & (vector short)__c);
6386 static vector
short __ATTRS_o_ai vec_sel(vector
short __a, vector
short __b,
6387 vector
bool short __c) {
6388 return (__a & ~(vector
short)__c) | (__b & (vector short)__c);
6391 static vector
unsigned short __ATTRS_o_ai vec_sel(vector
unsigned short __a,
6392 vector
unsigned short __b,
6393 vector
unsigned short __c) {
6394 return (__a & ~__c) | (__b &
__c);
6397 static vector
unsigned short __ATTRS_o_ai vec_sel(vector
unsigned short __a,
6398 vector
unsigned short __b,
6399 vector
bool short __c) {
6400 return (__a & ~(vector
unsigned short)__c) |
6401 (__b & (vector
unsigned short)__c);
6404 static vector
bool short __ATTRS_o_ai vec_sel(vector
bool short __a,
6405 vector
bool short __b,
6406 vector
unsigned short __c) {
6407 return (__a & ~(vector
bool short)__c) | (__b & (vector
bool short)__c);
6410 static vector
bool short __ATTRS_o_ai vec_sel(vector
bool short __a,
6411 vector
bool short __b,
6412 vector
bool short __c) {
6413 return (__a & ~__c) | (__b &
__c);
6416 static vector
int __ATTRS_o_ai vec_sel(vector
int __a, vector
int __b,
6417 vector
unsigned int __c) {
6418 return (__a & ~(vector
int)__c) | (__b & (vector int)__c);
6421 static vector
int __ATTRS_o_ai vec_sel(vector
int __a, vector
int __b,
6422 vector
bool int __c) {
6423 return (__a & ~(vector
int)__c) | (__b & (vector int)__c);
6426 static vector
unsigned int __ATTRS_o_ai vec_sel(vector
unsigned int __a,
6427 vector
unsigned int __b,
6428 vector
unsigned int __c) {
6429 return (__a & ~__c) | (__b &
__c);
6432 static vector
unsigned int __ATTRS_o_ai vec_sel(vector
unsigned int __a,
6433 vector
unsigned int __b,
6434 vector
bool int __c) {
6435 return (__a & ~(vector
unsigned int)__c) | (__b & (vector
unsigned int)__c);
6438 static vector
bool int __ATTRS_o_ai vec_sel(vector
bool int __a,
6439 vector
bool int __b,
6440 vector
unsigned int __c) {
6441 return (__a & ~(vector
bool int)__c) | (__b & (vector
bool int)__c);
6444 static vector
bool int __ATTRS_o_ai vec_sel(vector
bool int __a,
6445 vector
bool int __b,
6446 vector
bool int __c) {
6447 return (__a & ~__c) | (__b &
__c);
6450 static vector
float __ATTRS_o_ai vec_sel(vector
float __a, vector
float __b,
6451 vector
unsigned int __c) {
6452 vector
int __res = ((vector int)__a & ~(vector
int)
__c) |
6453 ((vector
int)__b & (vector int)__c);
6454 return (vector
float)__res;
6457 static vector
float __ATTRS_o_ai vec_sel(vector
float __a, vector
float __b,
6458 vector
bool int __c) {
6459 vector
int __res = ((vector int)__a & ~(vector
int)
__c) |
6460 ((vector
int)__b & (vector int)__c);
6461 return (vector
float)__res;
6465 static vector
double __ATTRS_o_ai vec_sel(vector
double __a, vector
double __b,
6466 vector
bool long long __c) {
6467 vector
long long __res = ((vector
long long)__a & ~(vector
long long)
__c) |
6468 ((vector
long long)__b & (vector
long long)__c);
6469 return (vector
double)__res;
6472 static vector
double __ATTRS_o_ai vec_sel(vector
double __a, vector
double __b,
6473 vector
unsigned long long __c) {
6474 vector
long long __res = ((vector
long long)__a & ~(vector
long long)
__c) |
6475 ((vector
long long)__b & (vector
long long)__c);
6476 return (vector
double)__res;
6482 static vector
signed char __ATTRS_o_ai vec_vsel(vector
signed char __a,
6483 vector
signed char __b,
6484 vector
unsigned char __c) {
6485 return (__a & ~(vector
signed char)__c) | (__b & (vector
signed char)__c);
6488 static vector
signed char __ATTRS_o_ai vec_vsel(vector
signed char __a,
6489 vector
signed char __b,
6490 vector
bool char __c) {
6491 return (__a & ~(vector
signed char)__c) | (__b & (vector
signed char)__c);
6494 static vector
unsigned char __ATTRS_o_ai vec_vsel(vector
unsigned char __a,
6495 vector
unsigned char __b,
6496 vector
unsigned char __c) {
6497 return (__a & ~__c) | (__b &
__c);
6500 static vector
unsigned char __ATTRS_o_ai vec_vsel(vector
unsigned char __a,
6501 vector
unsigned char __b,
6502 vector
bool char __c) {
6503 return (__a & ~(vector
unsigned char)__c) | (__b & (vector
unsigned char)__c);
6506 static vector
bool char __ATTRS_o_ai vec_vsel(vector
bool char __a,
6507 vector
bool char __b,
6508 vector
unsigned char __c) {
6509 return (__a & ~(vector
bool char)__c) | (__b & (vector
bool char)__c);
6512 static vector
bool char __ATTRS_o_ai vec_vsel(vector
bool char __a,
6513 vector
bool char __b,
6514 vector
bool char __c) {
6515 return (__a & ~__c) | (__b &
__c);
6518 static vector
short __ATTRS_o_ai vec_vsel(vector
short __a, vector
short __b,
6519 vector
unsigned short __c) {
6520 return (__a & ~(vector
short)__c) | (__b & (vector short)__c);
6523 static vector
short __ATTRS_o_ai vec_vsel(vector
short __a, vector
short __b,
6524 vector
bool short __c) {
6525 return (__a & ~(vector
short)__c) | (__b & (vector short)__c);
6528 static vector
unsigned short __ATTRS_o_ai vec_vsel(vector
unsigned short __a,
6529 vector
unsigned short __b,
6530 vector
unsigned short __c) {
6531 return (__a & ~__c) | (__b &
__c);
6534 static vector
unsigned short __ATTRS_o_ai vec_vsel(vector
unsigned short __a,
6535 vector
unsigned short __b,
6536 vector
bool short __c) {
6537 return (__a & ~(vector
unsigned short)__c) |
6538 (__b & (vector
unsigned short)__c);
6541 static vector
bool short __ATTRS_o_ai vec_vsel(vector
bool short __a,
6542 vector
bool short __b,
6543 vector
unsigned short __c) {
6544 return (__a & ~(vector
bool short)__c) | (__b & (vector
bool short)__c);
6547 static vector
bool short __ATTRS_o_ai vec_vsel(vector
bool short __a,
6548 vector
bool short __b,
6549 vector
bool short __c) {
6550 return (__a & ~__c) | (__b &
__c);
6553 static vector
int __ATTRS_o_ai vec_vsel(vector
int __a, vector
int __b,
6554 vector
unsigned int __c) {
6555 return (__a & ~(vector
int)__c) | (__b & (vector int)__c);
6558 static vector
int __ATTRS_o_ai vec_vsel(vector
int __a, vector
int __b,
6559 vector
bool int __c) {
6560 return (__a & ~(vector
int)__c) | (__b & (vector int)__c);
6563 static vector
unsigned int __ATTRS_o_ai vec_vsel(vector
unsigned int __a,
6564 vector
unsigned int __b,
6565 vector
unsigned int __c) {
6566 return (__a & ~__c) | (__b &
__c);
6569 static vector
unsigned int __ATTRS_o_ai vec_vsel(vector
unsigned int __a,
6570 vector
unsigned int __b,
6571 vector
bool int __c) {
6572 return (__a & ~(vector
unsigned int)__c) | (__b & (vector
unsigned int)__c);
6575 static vector
bool int __ATTRS_o_ai vec_vsel(vector
bool int __a,
6576 vector
bool int __b,
6577 vector
unsigned int __c) {
6578 return (__a & ~(vector
bool int)__c) | (__b & (vector
bool int)__c);
6581 static vector
bool int __ATTRS_o_ai vec_vsel(vector
bool int __a,
6582 vector
bool int __b,
6583 vector
bool int __c) {
6584 return (__a & ~__c) | (__b &
__c);
6587 static vector
float __ATTRS_o_ai vec_vsel(vector
float __a, vector
float __b,
6588 vector
unsigned int __c) {
6589 vector
int __res = ((vector int)__a & ~(vector
int)
__c) |
6590 ((vector
int)__b & (vector int)__c);
6591 return (vector
float)__res;
6594 static vector
float __ATTRS_o_ai vec_vsel(vector
float __a, vector
float __b,
6595 vector
bool int __c) {
6596 vector
int __res = ((vector int)__a & ~(vector
int)
__c) |
6597 ((vector
int)__b & (vector int)__c);
6598 return (vector
float)__res;
6603 static vector
signed char __ATTRS_o_ai vec_sl(vector
signed char __a,
6604 vector
unsigned char __b) {
6605 return __a << (vector
signed char)__b;
6608 static vector
unsigned char __ATTRS_o_ai vec_sl(vector
unsigned char __a,
6609 vector
unsigned char __b) {
6613 static vector
short __ATTRS_o_ai vec_sl(vector
short __a,
6614 vector
unsigned short __b) {
6615 return __a << (vector short)__b;
6618 static vector
unsigned short __ATTRS_o_ai vec_sl(vector
unsigned short __a,
6619 vector
unsigned short __b) {
6623 static vector
int __ATTRS_o_ai vec_sl(vector
int __a, vector
unsigned int __b) {
6624 return __a << (vector int)__b;
6627 static vector
unsigned int __ATTRS_o_ai vec_sl(vector
unsigned int __a,
6628 vector
unsigned int __b) {
6632 #ifdef __POWER8_VECTOR__
6634 vec_sl(vector
signed long long __a, vector
unsigned long long __b) {
6635 return __a << (vector
long long)__b;
6639 vec_sl(vector
unsigned long long __a, vector
unsigned long long __b) {
6646 #define __builtin_altivec_vslb vec_vslb
6648 static vector
signed char __ATTRS_o_ai vec_vslb(vector
signed char __a,
6649 vector
unsigned char __b) {
6650 return vec_sl(__a, __b);
6653 static vector
unsigned char __ATTRS_o_ai vec_vslb(vector
unsigned char __a,
6654 vector
unsigned char __b) {
6655 return vec_sl(__a, __b);
6660 #define __builtin_altivec_vslh vec_vslh
6662 static vector
short __ATTRS_o_ai vec_vslh(vector
short __a,
6663 vector
unsigned short __b) {
6664 return vec_sl(__a, __b);
6667 static vector
unsigned short __ATTRS_o_ai vec_vslh(vector
unsigned short __a,
6668 vector
unsigned short __b) {
6669 return vec_sl(__a, __b);
6674 #define __builtin_altivec_vslw vec_vslw
6676 static vector
int __ATTRS_o_ai vec_vslw(vector
int __a,
6677 vector
unsigned int __b) {
6678 return vec_sl(__a, __b);
6681 static vector
unsigned int __ATTRS_o_ai vec_vslw(vector
unsigned int __a,
6682 vector
unsigned int __b) {
6683 return vec_sl(__a, __b);
6688 #define __builtin_altivec_vsldoi_4si vec_sld
6690 static vector
signed char __ATTRS_o_ai vec_sld(vector
signed char __a,
6691 vector
signed char __b,
6692 unsigned const int __c) {
6693 unsigned char __d = __c & 0x0F;
6694 #ifdef __LITTLE_ENDIAN__
6697 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6698 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6699 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6704 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6705 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6706 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6710 static vector
unsigned char __ATTRS_o_ai vec_sld(vector
unsigned char __a,
6711 vector
unsigned char __b,
6712 unsigned const int __c) {
6713 unsigned char __d = __c & 0x0F;
6714 #ifdef __LITTLE_ENDIAN__
6717 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6718 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6719 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6724 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6725 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6726 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6730 static vector
bool char __ATTRS_o_ai vec_sld(vector
bool char __a,
6731 vector
bool char __b,
6732 unsigned const int __c) {
6733 unsigned char __d = __c & 0x0F;
6734 #ifdef __LITTLE_ENDIAN__
6737 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6738 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6739 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6744 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6745 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6746 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6750 static vector
signed short __ATTRS_o_ai vec_sld(vector
signed short __a,
6751 vector
signed short __b,
6752 unsigned const int __c) {
6753 unsigned char __d = __c & 0x0F;
6754 #ifdef __LITTLE_ENDIAN__
6757 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6758 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6759 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6764 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6765 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6766 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6770 static vector
unsigned short __ATTRS_o_ai vec_sld(vector
unsigned short __a,
6771 vector
unsigned short __b,
6772 unsigned const int __c) {
6773 unsigned char __d = __c & 0x0F;
6774 #ifdef __LITTLE_ENDIAN__
6777 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6778 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6779 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6784 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6785 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6786 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6790 static vector
bool short __ATTRS_o_ai vec_sld(vector
bool short __a,
6791 vector
bool short __b,
6792 unsigned const int __c) {
6793 unsigned char __d = __c & 0x0F;
6794 #ifdef __LITTLE_ENDIAN__
6797 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6798 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6799 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6804 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6805 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6806 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6810 static vector pixel
__ATTRS_o_ai vec_sld(vector pixel __a, vector pixel __b,
6811 unsigned const int __c) {
6812 unsigned char __d = __c & 0x0F;
6813 #ifdef __LITTLE_ENDIAN__
6816 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6817 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6818 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6823 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6824 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6825 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6829 static vector
signed int __ATTRS_o_ai vec_sld(vector
signed int __a,
6830 vector
signed int __b,
6831 unsigned const int __c) {
6832 unsigned char __d = __c & 0x0F;
6833 #ifdef __LITTLE_ENDIAN__
6836 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6837 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6838 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6843 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6844 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6845 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6849 static vector
unsigned int __ATTRS_o_ai vec_sld(vector
unsigned int __a,
6850 vector
unsigned int __b,
6851 unsigned const int __c) {
6852 unsigned char __d = __c & 0x0F;
6853 #ifdef __LITTLE_ENDIAN__
6856 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6857 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6858 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6863 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6864 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6865 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6869 static vector
bool int __ATTRS_o_ai vec_sld(vector
bool int __a,
6870 vector
bool int __b,
6871 unsigned const int __c) {
6872 unsigned char __d = __c & 0x0F;
6873 #ifdef __LITTLE_ENDIAN__
6876 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6877 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6878 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6883 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6884 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6885 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6889 static vector
float __ATTRS_o_ai vec_sld(vector
float __a, vector
float __b,
6890 unsigned const int __c) {
6891 unsigned char __d = __c & 0x0F;
6892 #ifdef __LITTLE_ENDIAN__
6895 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6896 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6897 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6902 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6903 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6904 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6910 static vector
signed char __ATTRS_o_ai vec_vsldoi(vector
signed char __a,
6911 vector
signed char __b,
6912 unsigned char __c) {
6913 unsigned char __d = __c & 0x0F;
6914 #ifdef __LITTLE_ENDIAN__
6917 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6918 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6919 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6924 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6925 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6926 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6930 static vector
unsigned char __ATTRS_o_ai vec_vsldoi(vector
unsigned char __a,
6931 vector
unsigned char __b,
6932 unsigned char __c) {
6933 unsigned char __d = __c & 0x0F;
6934 #ifdef __LITTLE_ENDIAN__
6937 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6938 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6939 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6944 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6945 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6946 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6950 static vector
short __ATTRS_o_ai vec_vsldoi(vector
short __a, vector
short __b,
6951 unsigned char __c) {
6952 unsigned char __d = __c & 0x0F;
6953 #ifdef __LITTLE_ENDIAN__
6956 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6957 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6958 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6963 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6964 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6965 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6969 static vector
unsigned short __ATTRS_o_ai vec_vsldoi(vector
unsigned short __a,
6970 vector
unsigned short __b,
6971 unsigned char __c) {
6972 unsigned char __d = __c & 0x0F;
6973 #ifdef __LITTLE_ENDIAN__
6976 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6977 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6978 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
6983 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
6984 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
6985 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
6989 static vector pixel
__ATTRS_o_ai vec_vsldoi(vector pixel __a, vector pixel __b,
6990 unsigned char __c) {
6991 unsigned char __d = __c & 0x0F;
6992 #ifdef __LITTLE_ENDIAN__
6995 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
6996 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
6997 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
7002 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
7003 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
7004 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
7008 static vector
int __ATTRS_o_ai vec_vsldoi(vector
int __a, vector
int __b,
7009 unsigned char __c) {
7010 unsigned char __d = __c & 0x0F;
7011 #ifdef __LITTLE_ENDIAN__
7014 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
7015 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
7016 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
7021 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
7022 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
7023 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
7027 static vector
unsigned int __ATTRS_o_ai vec_vsldoi(vector
unsigned int __a,
7028 vector
unsigned int __b,
7029 unsigned char __c) {
7030 unsigned char __d = __c & 0x0F;
7031 #ifdef __LITTLE_ENDIAN__
7034 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
7035 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
7036 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
7041 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
7042 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
7043 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
7047 static vector
float __ATTRS_o_ai vec_vsldoi(vector
float __a, vector
float __b,
7048 unsigned char __c) {
7049 unsigned char __d = __c & 0x0F;
7050 #ifdef __LITTLE_ENDIAN__
7053 (vector
unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d, 20 - __d,
7054 21 - __d, 22 - __d, 23 - __d, 24 - __d, 25 - __d,
7055 26 - __d, 27 - __d, 28 - __d, 29 - __d, 30 - __d,
7060 (vector
unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
7061 __d + 6, __d + 7, __d + 8, __d + 9, __d + 10,
7062 __d + 11, __d + 12, __d + 13, __d + 14, __d + 15));
7068 static vector
signed char __ATTRS_o_ai vec_sll(vector
signed char __a,
7069 vector
unsigned char __b) {
7070 return (vector
signed char)__builtin_altivec_vsl((vector
int)__a,
7074 static vector
signed char __ATTRS_o_ai vec_sll(vector
signed char __a,
7075 vector
unsigned short __b) {
7076 return (vector
signed char)__builtin_altivec_vsl((vector
int)__a,
7080 static vector
signed char __ATTRS_o_ai vec_sll(vector
signed char __a,
7081 vector
unsigned int __b) {
7082 return (vector
signed char)__builtin_altivec_vsl((vector
int)__a,
7086 static vector
unsigned char __ATTRS_o_ai vec_sll(vector
unsigned char __a,
7087 vector
unsigned char __b) {
7088 return (vector
unsigned char)__builtin_altivec_vsl((vector
int)__a,
7092 static vector
unsigned char __ATTRS_o_ai vec_sll(vector
unsigned char __a,
7093 vector
unsigned short __b) {
7094 return (vector
unsigned char)__builtin_altivec_vsl((vector
int)__a,
7098 static vector
unsigned char __ATTRS_o_ai vec_sll(vector
unsigned char __a,
7099 vector
unsigned int __b) {
7100 return (vector
unsigned char)__builtin_altivec_vsl((vector
int)__a,
7104 static vector
bool char __ATTRS_o_ai vec_sll(vector
bool char __a,
7105 vector
unsigned char __b) {
7106 return (vector
bool char)__builtin_altivec_vsl((vector
int)__a,
7110 static vector
bool char __ATTRS_o_ai vec_sll(vector
bool char __a,
7111 vector
unsigned short __b) {
7112 return (vector
bool char)__builtin_altivec_vsl((vector
int)__a,
7116 static vector
bool char __ATTRS_o_ai vec_sll(vector
bool char __a,
7117 vector
unsigned int __b) {
7118 return (vector
bool char)__builtin_altivec_vsl((vector
int)__a,
7122 static vector
short __ATTRS_o_ai vec_sll(vector
short __a,
7123 vector
unsigned char __b) {
7124 return (vector
short)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7127 static vector
short __ATTRS_o_ai vec_sll(vector
short __a,
7128 vector
unsigned short __b) {
7129 return (vector
short)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7132 static vector
short __ATTRS_o_ai vec_sll(vector
short __a,
7133 vector
unsigned int __b) {
7134 return (vector
short)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7137 static vector
unsigned short __ATTRS_o_ai vec_sll(vector
unsigned short __a,
7138 vector
unsigned char __b) {
7139 return (vector
unsigned short)__builtin_altivec_vsl((vector
int)__a,
7143 static vector
unsigned short __ATTRS_o_ai vec_sll(vector
unsigned short __a,
7144 vector
unsigned short __b) {
7145 return (vector
unsigned short)__builtin_altivec_vsl((vector
int)__a,
7149 static vector
unsigned short __ATTRS_o_ai vec_sll(vector
unsigned short __a,
7150 vector
unsigned int __b) {
7151 return (vector
unsigned short)__builtin_altivec_vsl((vector
int)__a,
7155 static vector
bool short __ATTRS_o_ai vec_sll(vector
bool short __a,
7156 vector
unsigned char __b) {
7157 return (vector
bool short)__builtin_altivec_vsl((vector
int)__a,
7161 static vector
bool short __ATTRS_o_ai vec_sll(vector
bool short __a,
7162 vector
unsigned short __b) {
7163 return (vector
bool short)__builtin_altivec_vsl((vector
int)__a,
7167 static vector
bool short __ATTRS_o_ai vec_sll(vector
bool short __a,
7168 vector
unsigned int __b) {
7169 return (vector
bool short)__builtin_altivec_vsl((vector
int)__a,
7173 static vector pixel
__ATTRS_o_ai vec_sll(vector pixel __a,
7174 vector
unsigned char __b) {
7175 return (vector pixel)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7178 static vector pixel
__ATTRS_o_ai vec_sll(vector pixel __a,
7179 vector
unsigned short __b) {
7180 return (vector pixel)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7183 static vector pixel
__ATTRS_o_ai vec_sll(vector pixel __a,
7184 vector
unsigned int __b) {
7185 return (vector pixel)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7189 vector
unsigned char __b) {
7190 return (vector
int)__builtin_altivec_vsl(__a, (vector
int)__b);
7194 vector
unsigned short __b) {
7195 return (vector
int)__builtin_altivec_vsl(__a, (vector
int)__b);
7199 vector
unsigned int __b) {
7200 return (vector
int)__builtin_altivec_vsl(__a, (vector
int)__b);
7203 static vector
unsigned int __ATTRS_o_ai vec_sll(vector
unsigned int __a,
7204 vector
unsigned char __b) {
7205 return (vector
unsigned int)__builtin_altivec_vsl((vector
int)__a,
7209 static vector
unsigned int __ATTRS_o_ai vec_sll(vector
unsigned int __a,
7210 vector
unsigned short __b) {
7211 return (vector
unsigned int)__builtin_altivec_vsl((vector
int)__a,
7215 static vector
unsigned int __ATTRS_o_ai vec_sll(vector
unsigned int __a,
7216 vector
unsigned int __b) {
7217 return (vector
unsigned int)__builtin_altivec_vsl((vector
int)__a,
7221 static vector
bool int __ATTRS_o_ai vec_sll(vector
bool int __a,
7222 vector
unsigned char __b) {
7223 return (vector
bool int)__builtin_altivec_vsl((vector
int)__a,
7227 static vector
bool int __ATTRS_o_ai vec_sll(vector
bool int __a,
7228 vector
unsigned short __b) {
7229 return (vector
bool int)__builtin_altivec_vsl((vector
int)__a,
7233 static vector
bool int __ATTRS_o_ai vec_sll(vector
bool int __a,
7234 vector
unsigned int __b) {
7235 return (vector
bool int)__builtin_altivec_vsl((vector
int)__a,
7241 static vector
signed char __ATTRS_o_ai vec_vsl(vector
signed char __a,
7242 vector
unsigned char __b) {
7243 return (vector
signed char)__builtin_altivec_vsl((vector
int)__a,
7247 static vector
signed char __ATTRS_o_ai vec_vsl(vector
signed char __a,
7248 vector
unsigned short __b) {
7249 return (vector
signed char)__builtin_altivec_vsl((vector
int)__a,
7253 static vector
signed char __ATTRS_o_ai vec_vsl(vector
signed char __a,
7254 vector
unsigned int __b) {
7255 return (vector
signed char)__builtin_altivec_vsl((vector
int)__a,
7259 static vector
unsigned char __ATTRS_o_ai vec_vsl(vector
unsigned char __a,
7260 vector
unsigned char __b) {
7261 return (vector
unsigned char)__builtin_altivec_vsl((vector
int)__a,
7265 static vector
unsigned char __ATTRS_o_ai vec_vsl(vector
unsigned char __a,
7266 vector
unsigned short __b) {
7267 return (vector
unsigned char)__builtin_altivec_vsl((vector
int)__a,
7271 static vector
unsigned char __ATTRS_o_ai vec_vsl(vector
unsigned char __a,
7272 vector
unsigned int __b) {
7273 return (vector
unsigned char)__builtin_altivec_vsl((vector
int)__a,
7277 static vector
bool char __ATTRS_o_ai vec_vsl(vector
bool char __a,
7278 vector
unsigned char __b) {
7279 return (vector
bool char)__builtin_altivec_vsl((vector
int)__a,
7283 static vector
bool char __ATTRS_o_ai vec_vsl(vector
bool char __a,
7284 vector
unsigned short __b) {
7285 return (vector
bool char)__builtin_altivec_vsl((vector
int)__a,
7289 static vector
bool char __ATTRS_o_ai vec_vsl(vector
bool char __a,
7290 vector
unsigned int __b) {
7291 return (vector
bool char)__builtin_altivec_vsl((vector
int)__a,
7295 static vector
short __ATTRS_o_ai vec_vsl(vector
short __a,
7296 vector
unsigned char __b) {
7297 return (vector
short)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7300 static vector
short __ATTRS_o_ai vec_vsl(vector
short __a,
7301 vector
unsigned short __b) {
7302 return (vector
short)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7305 static vector
short __ATTRS_o_ai vec_vsl(vector
short __a,
7306 vector
unsigned int __b) {
7307 return (vector
short)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7310 static vector
unsigned short __ATTRS_o_ai vec_vsl(vector
unsigned short __a,
7311 vector
unsigned char __b) {
7312 return (vector
unsigned short)__builtin_altivec_vsl((vector
int)__a,
7316 static vector
unsigned short __ATTRS_o_ai vec_vsl(vector
unsigned short __a,
7317 vector
unsigned short __b) {
7318 return (vector
unsigned short)__builtin_altivec_vsl((vector
int)__a,
7322 static vector
unsigned short __ATTRS_o_ai vec_vsl(vector
unsigned short __a,
7323 vector
unsigned int __b) {
7324 return (vector
unsigned short)__builtin_altivec_vsl((vector
int)__a,
7328 static vector
bool short __ATTRS_o_ai vec_vsl(vector
bool short __a,
7329 vector
unsigned char __b) {
7330 return (vector
bool short)__builtin_altivec_vsl((vector
int)__a,
7334 static vector
bool short __ATTRS_o_ai vec_vsl(vector
bool short __a,
7335 vector
unsigned short __b) {
7336 return (vector
bool short)__builtin_altivec_vsl((vector
int)__a,
7340 static vector
bool short __ATTRS_o_ai vec_vsl(vector
bool short __a,
7341 vector
unsigned int __b) {
7342 return (vector
bool short)__builtin_altivec_vsl((vector
int)__a,
7346 static vector pixel
__ATTRS_o_ai vec_vsl(vector pixel __a,
7347 vector
unsigned char __b) {
7348 return (vector pixel)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7351 static vector pixel
__ATTRS_o_ai vec_vsl(vector pixel __a,
7352 vector
unsigned short __b) {
7353 return (vector pixel)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7356 static vector pixel
__ATTRS_o_ai vec_vsl(vector pixel __a,
7357 vector
unsigned int __b) {
7358 return (vector pixel)__builtin_altivec_vsl((vector
int)__a, (vector
int)__b);
7362 vector
unsigned char __b) {
7363 return (vector
int)__builtin_altivec_vsl(__a, (vector
int)__b);
7367 vector
unsigned short __b) {
7368 return (vector
int)__builtin_altivec_vsl(__a, (vector
int)__b);
7372 vector
unsigned int __b) {
7373 return (vector
int)__builtin_altivec_vsl(__a, (vector
int)__b);
7376 static vector
unsigned int __ATTRS_o_ai vec_vsl(vector
unsigned int __a,
7377 vector
unsigned char __b) {
7378 return (vector
unsigned int)__builtin_altivec_vsl((vector
int)__a,
7382 static vector
unsigned int __ATTRS_o_ai vec_vsl(vector
unsigned int __a,
7383 vector
unsigned short __b) {
7384 return (vector
unsigned int)__builtin_altivec_vsl((vector
int)__a,
7388 static vector
unsigned int __ATTRS_o_ai vec_vsl(vector
unsigned int __a,
7389 vector
unsigned int __b) {
7390 return (vector
unsigned int)__builtin_altivec_vsl((vector
int)__a,
7394 static vector
bool int __ATTRS_o_ai vec_vsl(vector
bool int __a,
7395 vector
unsigned char __b) {
7396 return (vector
bool int)__builtin_altivec_vsl((vector
int)__a,
7400 static vector
bool int __ATTRS_o_ai vec_vsl(vector
bool int __a,
7401 vector
unsigned short __b) {
7402 return (vector
bool int)__builtin_altivec_vsl((vector
int)__a,
7406 static vector
bool int __ATTRS_o_ai vec_vsl(vector
bool int __a,
7407 vector
unsigned int __b) {
7408 return (vector
bool int)__builtin_altivec_vsl((vector
int)__a,
7414 static vector
signed char __ATTRS_o_ai vec_slo(vector
signed char __a,
7415 vector
signed char __b) {
7416 return (vector
signed char)__builtin_altivec_vslo((vector
int)__a,
7420 static vector
signed char __ATTRS_o_ai vec_slo(vector
signed char __a,
7421 vector
unsigned char __b) {
7422 return (vector
signed char)__builtin_altivec_vslo((vector
int)__a,
7426 static vector
unsigned char __ATTRS_o_ai vec_slo(vector
unsigned char __a,
7427 vector
signed char __b) {
7428 return (vector
unsigned char)__builtin_altivec_vslo((vector
int)__a,
7432 static vector
unsigned char __ATTRS_o_ai vec_slo(vector
unsigned char __a,
7433 vector
unsigned char __b) {
7434 return (vector
unsigned char)__builtin_altivec_vslo((vector
int)__a,
7438 static vector
short __ATTRS_o_ai vec_slo(vector
short __a,
7439 vector
signed char __b) {
7440 return (vector
short)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7443 static vector
short __ATTRS_o_ai vec_slo(vector
short __a,
7444 vector
unsigned char __b) {
7445 return (vector
short)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7448 static vector
unsigned short __ATTRS_o_ai vec_slo(vector
unsigned short __a,
7449 vector
signed char __b) {
7450 return (vector
unsigned short)__builtin_altivec_vslo((vector
int)__a,
7454 static vector
unsigned short __ATTRS_o_ai vec_slo(vector
unsigned short __a,
7455 vector
unsigned char __b) {
7456 return (vector
unsigned short)__builtin_altivec_vslo((vector
int)__a,
7460 static vector pixel
__ATTRS_o_ai vec_slo(vector pixel __a,
7461 vector
signed char __b) {
7462 return (vector pixel)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7465 static vector pixel
__ATTRS_o_ai vec_slo(vector pixel __a,
7466 vector
unsigned char __b) {
7467 return (vector pixel)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7470 static vector
int __ATTRS_o_ai vec_slo(vector
int __a, vector
signed char __b) {
7471 return (vector
int)__builtin_altivec_vslo(__a, (vector
int)__b);
7475 vector
unsigned char __b) {
7476 return (vector
int)__builtin_altivec_vslo(__a, (vector
int)__b);
7479 static vector
unsigned int __ATTRS_o_ai vec_slo(vector
unsigned int __a,
7480 vector
signed char __b) {
7481 return (vector
unsigned int)__builtin_altivec_vslo((vector
int)__a,
7485 static vector
unsigned int __ATTRS_o_ai vec_slo(vector
unsigned int __a,
7486 vector
unsigned char __b) {
7487 return (vector
unsigned int)__builtin_altivec_vslo((vector
int)__a,
7491 static vector
float __ATTRS_o_ai vec_slo(vector
float __a,
7492 vector
signed char __b) {
7493 return (vector
float)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7496 static vector
float __ATTRS_o_ai vec_slo(vector
float __a,
7497 vector
unsigned char __b) {
7498 return (vector
float)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7503 static vector
signed char __ATTRS_o_ai vec_vslo(vector
signed char __a,
7504 vector
signed char __b) {
7505 return (vector
signed char)__builtin_altivec_vslo((vector
int)__a,
7509 static vector
signed char __ATTRS_o_ai vec_vslo(vector
signed char __a,
7510 vector
unsigned char __b) {
7511 return (vector
signed char)__builtin_altivec_vslo((vector
int)__a,
7515 static vector
unsigned char __ATTRS_o_ai vec_vslo(vector
unsigned char __a,
7516 vector
signed char __b) {
7517 return (vector
unsigned char)__builtin_altivec_vslo((vector
int)__a,
7521 static vector
unsigned char __ATTRS_o_ai vec_vslo(vector
unsigned char __a,
7522 vector
unsigned char __b) {
7523 return (vector
unsigned char)__builtin_altivec_vslo((vector
int)__a,
7527 static vector
short __ATTRS_o_ai vec_vslo(vector
short __a,
7528 vector
signed char __b) {
7529 return (vector
short)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7532 static vector
short __ATTRS_o_ai vec_vslo(vector
short __a,
7533 vector
unsigned char __b) {
7534 return (vector
short)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7537 static vector
unsigned short __ATTRS_o_ai vec_vslo(vector
unsigned short __a,
7538 vector
signed char __b) {
7539 return (vector
unsigned short)__builtin_altivec_vslo((vector
int)__a,
7543 static vector
unsigned short __ATTRS_o_ai vec_vslo(vector
unsigned short __a,
7544 vector
unsigned char __b) {
7545 return (vector
unsigned short)__builtin_altivec_vslo((vector
int)__a,
7549 static vector pixel
__ATTRS_o_ai vec_vslo(vector pixel __a,
7550 vector
signed char __b) {
7551 return (vector pixel)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7554 static vector pixel
__ATTRS_o_ai vec_vslo(vector pixel __a,
7555 vector
unsigned char __b) {
7556 return (vector pixel)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7559 static vector
int __ATTRS_o_ai vec_vslo(vector
int __a,
7560 vector
signed char __b) {
7561 return (vector
int)__builtin_altivec_vslo(__a, (vector
int)__b);
7564 static vector
int __ATTRS_o_ai vec_vslo(vector
int __a,
7565 vector
unsigned char __b) {
7566 return (vector
int)__builtin_altivec_vslo(__a, (vector
int)__b);
7569 static vector
unsigned int __ATTRS_o_ai vec_vslo(vector
unsigned int __a,
7570 vector
signed char __b) {
7571 return (vector
unsigned int)__builtin_altivec_vslo((vector
int)__a,
7575 static vector
unsigned int __ATTRS_o_ai vec_vslo(vector
unsigned int __a,
7576 vector
unsigned char __b) {
7577 return (vector
unsigned int)__builtin_altivec_vslo((vector
int)__a,
7581 static vector
float __ATTRS_o_ai vec_vslo(vector
float __a,
7582 vector
signed char __b) {
7583 return (vector
float)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7586 static vector
float __ATTRS_o_ai vec_vslo(vector
float __a,
7587 vector
unsigned char __b) {
7588 return (vector
float)__builtin_altivec_vslo((vector
int)__a, (vector
int)__b);
7593 static vector
signed char __ATTRS_o_ai vec_splat(vector
signed char __a,
7594 unsigned const int __b) {
7595 return vec_perm(__a, __a, (vector
unsigned char)(__b & 0x0F));
7598 static vector
unsigned char __ATTRS_o_ai vec_splat(vector
unsigned char __a,
7599 unsigned const int __b) {
7600 return vec_perm(__a, __a, (vector
unsigned char)(__b & 0x0F));
7603 static vector
bool char __ATTRS_o_ai vec_splat(vector
bool char __a,
7604 unsigned const int __b) {
7605 return vec_perm(__a, __a, (vector
unsigned char)(__b & 0x0F));
7608 static vector
signed short __ATTRS_o_ai vec_splat(vector
signed short __a,
7609 unsigned const int __b) {
7610 unsigned char b0 = (__b & 0x07) * 2;
7611 unsigned char b1 = b0 + 1;
7612 return vec_perm(__a, __a,
7613 (vector
unsigned char)(b0, b1, b0, b1, b0, b1, b0, b1,
7614 b0, b1, b0, b1, b0, b1, b0, b1));
7617 static vector
unsigned short __ATTRS_o_ai vec_splat(vector
unsigned short __a,
7618 unsigned const int __b) {
7619 unsigned char b0 = (__b & 0x07) * 2;
7620 unsigned char b1 = b0 + 1;
7621 return vec_perm(__a, __a,
7622 (vector
unsigned char)(b0, b1, b0, b1, b0, b1, b0, b1,
7623 b0, b1, b0, b1, b0, b1, b0, b1));
7626 static vector
bool short __ATTRS_o_ai vec_splat(vector
bool short __a,
7627 unsigned const int __b) {
7628 unsigned char b0 = (__b & 0x07) * 2;
7629 unsigned char b1 = b0 + 1;
7630 return vec_perm(__a, __a,
7631 (vector
unsigned char)(b0, b1, b0, b1, b0, b1, b0, b1,
7632 b0, b1, b0, b1, b0, b1, b0, b1));
7635 static vector pixel
__ATTRS_o_ai vec_splat(vector pixel __a,
7636 unsigned const int __b) {
7637 unsigned char b0 = (__b & 0x07) * 2;
7638 unsigned char b1 = b0 + 1;
7639 return vec_perm(__a, __a,
7640 (vector
unsigned char)(b0, b1, b0, b1, b0, b1, b0, b1,
7641 b0, b1, b0, b1, b0, b1, b0, b1));
7644 static vector
signed int __ATTRS_o_ai vec_splat(vector
signed int __a,
7645 unsigned const int __b) {
7646 unsigned char b0 = (__b & 0x03) * 4;
7647 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3;
7648 return vec_perm(__a, __a,
7649 (vector
unsigned char)(b0, b1, b2, b3, b0, b1, b2, b3, b0,
7650 b1, b2, b3, b0, b1, b2, b3));
7653 static vector
unsigned int __ATTRS_o_ai vec_splat(vector
unsigned int __a,
7654 unsigned const int __b) {
7655 unsigned char b0 = (__b & 0x03) * 4;
7656 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3;
7657 return vec_perm(__a, __a,
7658 (vector
unsigned char)(b0, b1, b2, b3, b0, b1, b2, b3, b0,
7659 b1, b2, b3, b0, b1, b2, b3));
7662 static vector
bool int __ATTRS_o_ai vec_splat(vector
bool int __a,
7663 unsigned const int __b) {
7664 unsigned char b0 = (__b & 0x03) * 4;
7665 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3;
7666 return vec_perm(__a, __a,
7667 (vector
unsigned char)(b0, b1, b2, b3, b0, b1, b2, b3, b0,
7668 b1, b2, b3, b0, b1, b2, b3));
7671 static vector
float __ATTRS_o_ai vec_splat(vector
float __a,
7672 unsigned const int __b) {
7673 unsigned char b0 = (__b & 0x03) * 4;
7674 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3;
7675 return vec_perm(__a, __a,
7676 (vector
unsigned char)(b0, b1, b2, b3, b0, b1, b2, b3, b0,
7677 b1, b2, b3, b0, b1, b2, b3));
7681 static vector
double __ATTRS_o_ai vec_splat(vector
double __a,
7682 unsigned const int __b) {
7683 unsigned char b0 = (__b & 0x01) * 8;
7684 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3, b4 = b0 + 4,
7685 b5 = b0 + 5, b6 = b0 + 6, b7 = b0 + 7;
7686 return vec_perm(__a, __a,
7687 (vector
unsigned char)(b0, b1, b2, b3, b4, b5, b6, b7,
7688 b0, b1, b2, b3, b4, b5, b6, b7));
7690 static vector
bool long long __ATTRS_o_ai vec_splat(vector
bool long long __a,
7691 unsigned const int __b) {
7692 unsigned char b0 = (__b & 0x01) * 8;
7693 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3, b4 = b0 + 4,
7694 b5 = b0 + 5, b6 = b0 + 6, b7 = b0 + 7;
7695 return vec_perm(__a, __a,
7696 (vector
unsigned char)(b0, b1, b2, b3, b4, b5, b6, b7,
7697 b0, b1, b2, b3, b4, b5, b6, b7));
7700 vec_splat(vector
signed long long __a,
unsigned const int __b) {
7701 unsigned char b0 = (__b & 0x01) * 8;
7702 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3, b4 = b0 + 4,
7703 b5 = b0 + 5, b6 = b0 + 6, b7 = b0 + 7;
7704 return vec_perm(__a, __a,
7705 (vector
unsigned char)(b0, b1, b2, b3, b4, b5, b6, b7,
7706 b0, b1, b2, b3, b4, b5, b6, b7));
7709 vec_splat(vector
unsigned long long __a,
unsigned const int __b) {
7710 unsigned char b0 = (__b & 0x01) * 8;
7711 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3, b4 = b0 + 4,
7712 b5 = b0 + 5, b6 = b0 + 6, b7 = b0 + 7;
7713 return vec_perm(__a, __a,
7714 (vector
unsigned char)(b0, b1, b2, b3, b4, b5, b6, b7,
7715 b0, b1, b2, b3, b4, b5, b6, b7));
7721 #define __builtin_altivec_vspltb vec_vspltb
7723 static vector
signed char __ATTRS_o_ai vec_vspltb(vector
signed char __a,
7724 unsigned char __b) {
7725 return vec_perm(__a, __a, (vector
unsigned char)(__b));
7728 static vector
unsigned char __ATTRS_o_ai vec_vspltb(vector
unsigned char __a,
7729 unsigned char __b) {
7730 return vec_perm(__a, __a, (vector
unsigned char)(__b));
7733 static vector
bool char __ATTRS_o_ai vec_vspltb(vector
bool char __a,
7734 unsigned char __b) {
7735 return vec_perm(__a, __a, (vector
unsigned char)(__b));
7740 #define __builtin_altivec_vsplth vec_vsplth
7742 static vector
short __ATTRS_o_ai vec_vsplth(vector
short __a,
7743 unsigned char __b) {
7745 unsigned char b1 = __b + 1;
7746 return vec_perm(__a, __a,
7747 (vector
unsigned char)(__b, b1, __b, b1, __b, b1, __b, b1,
7748 __b, b1, __b, b1, __b, b1, __b, b1));
7751 static vector
unsigned short __ATTRS_o_ai vec_vsplth(vector
unsigned short __a,
7752 unsigned char __b) {
7754 unsigned char b1 = __b + 1;
7755 return vec_perm(__a, __a,
7756 (vector
unsigned char)(__b, b1, __b, b1, __b, b1, __b, b1,
7757 __b, b1, __b, b1, __b, b1, __b, b1));
7760 static vector
bool short __ATTRS_o_ai vec_vsplth(vector
bool short __a,
7761 unsigned char __b) {
7763 unsigned char b1 = __b + 1;
7764 return vec_perm(__a, __a,
7765 (vector
unsigned char)(__b, b1, __b, b1, __b, b1, __b, b1,
7766 __b, b1, __b, b1, __b, b1, __b, b1));
7769 static vector pixel
__ATTRS_o_ai vec_vsplth(vector pixel __a,
7770 unsigned char __b) {
7772 unsigned char b1 = __b + 1;
7773 return vec_perm(__a, __a,
7774 (vector
unsigned char)(__b, b1, __b, b1, __b, b1, __b, b1,
7775 __b, b1, __b, b1, __b, b1, __b, b1));
7780 #define __builtin_altivec_vspltw vec_vspltw
7782 static vector
int __ATTRS_o_ai vec_vspltw(vector
int __a,
unsigned char __b) {
7784 unsigned char b1 = __b + 1, b2 = __b + 2, b3 = __b + 3;
7785 return vec_perm(__a, __a,
7786 (vector
unsigned char)(__b, b1, b2, b3, __b, b1, b2, b3, __b,
7787 b1, b2, b3, __b, b1, b2, b3));
7790 static vector
unsigned int __ATTRS_o_ai vec_vspltw(vector
unsigned int __a,
7791 unsigned char __b) {
7793 unsigned char b1 = __b + 1, b2 = __b + 2, b3 = __b + 3;
7794 return vec_perm(__a, __a,
7795 (vector
unsigned char)(__b, b1, b2, b3, __b, b1, b2, b3, __b,
7796 b1, b2, b3, __b, b1, b2, b3));
7799 static vector
bool int __ATTRS_o_ai vec_vspltw(vector
bool int __a,
7800 unsigned char __b) {
7802 unsigned char b1 = __b + 1, b2 = __b + 2, b3 = __b + 3;
7803 return vec_perm(__a, __a,
7804 (vector
unsigned char)(__b, b1, b2, b3, __b, b1, b2, b3, __b,
7805 b1, b2, b3, __b, b1, b2, b3));
7808 static vector
float __ATTRS_o_ai vec_vspltw(vector
float __a,
7809 unsigned char __b) {
7811 unsigned char b1 = __b + 1, b2 = __b + 2, b3 = __b + 3;
7812 return vec_perm(__a, __a,
7813 (vector
unsigned char)(__b, b1, b2, b3, __b, b1, b2, b3, __b,
7814 b1, b2, b3, __b, b1, b2, b3));
7819 #define __builtin_altivec_vspltisb vec_splat_s8
7822 static vector
signed char __ATTRS_o_ai vec_splat_s8(
signed char __a) {
7823 return (vector
signed char)(__a);
7829 static vector
signed char __ATTRS_o_ai vec_vspltisb(
signed char __a) {
7830 return (vector
signed char)(__a);
7835 #define __builtin_altivec_vspltish vec_splat_s16
7838 static vector
short __ATTRS_o_ai vec_splat_s16(
signed char __a) {
7839 return (vector
short)(__a);
7845 static vector
short __ATTRS_o_ai vec_vspltish(
signed char __a) {
7846 return (vector
short)(__a);
7851 #define __builtin_altivec_vspltisw vec_splat_s32
7854 static vector
int __ATTRS_o_ai vec_splat_s32(
signed char __a) {
7855 return (vector
int)(__a);
7861 static vector
int __ATTRS_o_ai vec_vspltisw(
signed char __a) {
7862 return (vector
int)(__a);
7868 static vector
unsigned char __ATTRS_o_ai vec_splat_u8(
unsigned char __a) {
7869 return (vector
unsigned char)(__a);
7875 static vector
unsigned short __ATTRS_o_ai vec_splat_u16(
signed char __a) {
7876 return (vector
unsigned short)(__a);
7882 static vector
unsigned int __ATTRS_o_ai vec_splat_u32(
signed char __a) {
7883 return (vector
unsigned int)(__a);
7888 static vector
signed char __ATTRS_o_ai vec_sr(vector
signed char __a,
7889 vector
unsigned char __b) {
7890 vector
unsigned char __res = (vector
unsigned char)__a >> __b;
7891 return (vector
signed char)__res;
7894 static vector
unsigned char __ATTRS_o_ai vec_sr(vector
unsigned char __a,
7895 vector
unsigned char __b) {
7899 static vector
signed short __ATTRS_o_ai vec_sr(vector
signed short __a,
7900 vector
unsigned short __b) {
7901 vector
unsigned short __res = (vector
unsigned short)__a >> __b;
7902 return (vector
signed short)__res;
7905 static vector
unsigned short __ATTRS_o_ai vec_sr(vector
unsigned short __a,
7906 vector
unsigned short __b) {
7910 static vector
signed int __ATTRS_o_ai vec_sr(vector
signed int __a,
7911 vector
unsigned int __b) {
7912 vector
unsigned int __res = (vector
unsigned int)__a >> __b;
7913 return (vector
signed int)__res;
7916 static vector
unsigned int __ATTRS_o_ai vec_sr(vector
unsigned int __a,
7917 vector
unsigned int __b) {
7921 #ifdef __POWER8_VECTOR__
7923 vec_sr(vector
signed long long __a, vector
unsigned long long __b) {
7924 vector
unsigned long long __res = (vector
unsigned long long)__a >> __b;
7925 return (vector
signed long long)__res;
7929 vec_sr(vector
unsigned long long __a, vector
unsigned long long __b) {
7936 #define __builtin_altivec_vsrb vec_vsrb
7938 static vector
signed char __ATTRS_o_ai vec_vsrb(vector
signed char __a,
7939 vector
unsigned char __b) {
7940 return __a >> (vector
signed char)__b;
7943 static vector
unsigned char __ATTRS_o_ai vec_vsrb(vector
unsigned char __a,
7944 vector
unsigned char __b) {
7950 #define __builtin_altivec_vsrh vec_vsrh
7952 static vector
short __ATTRS_o_ai vec_vsrh(vector
short __a,
7953 vector
unsigned short __b) {
7954 return __a >> (vector short)__b;
7957 static vector
unsigned short __ATTRS_o_ai vec_vsrh(vector
unsigned short __a,
7958 vector
unsigned short __b) {
7964 #define __builtin_altivec_vsrw vec_vsrw
7966 static vector
int __ATTRS_o_ai vec_vsrw(vector
int __a,
7967 vector
unsigned int __b) {
7968 return __a >> (vector int)__b;
7971 static vector
unsigned int __ATTRS_o_ai vec_vsrw(vector
unsigned int __a,
7972 vector
unsigned int __b) {
7978 static vector
signed char __ATTRS_o_ai vec_sra(vector
signed char __a,
7979 vector
unsigned char __b) {
7980 return (vector
signed char)__builtin_altivec_vsrab((vector
char)__a, __b);
7983 static vector
unsigned char __ATTRS_o_ai vec_sra(vector
unsigned char __a,
7984 vector
unsigned char __b) {
7985 return (vector
unsigned char)__builtin_altivec_vsrab((vector
char)__a, __b);
7988 static vector
short __ATTRS_o_ai vec_sra(vector
short __a,
7989 vector
unsigned short __b) {
7990 return __builtin_altivec_vsrah(__a, (vector
unsigned short)__b);
7993 static vector
unsigned short __ATTRS_o_ai vec_sra(vector
unsigned short __a,
7994 vector
unsigned short __b) {
7995 return (vector
unsigned short)__builtin_altivec_vsrah((vector
short)__a, __b);
7999 vector
unsigned int __b) {
8000 return __builtin_altivec_vsraw(__a, __b);
8003 static vector
unsigned int __ATTRS_o_ai vec_sra(vector
unsigned int __a,
8004 vector
unsigned int __b) {
8005 return (vector
unsigned int)__builtin_altivec_vsraw((vector
int)__a, __b);
8008 #ifdef __POWER8_VECTOR__
8010 vec_sra(vector
signed long long __a, vector
unsigned long long __b) {
8015 vec_sra(vector
unsigned long long __a, vector
unsigned long long __b) {
8016 return (vector
unsigned long long)((vector
signed long long)__a >> __b);
8022 static vector
signed char __ATTRS_o_ai vec_vsrab(vector
signed char __a,
8023 vector
unsigned char __b) {
8024 return (vector
signed char)__builtin_altivec_vsrab((vector
char)__a, __b);
8027 static vector
unsigned char __ATTRS_o_ai vec_vsrab(vector
unsigned char __a,
8028 vector
unsigned char __b) {
8029 return (vector
unsigned char)__builtin_altivec_vsrab((vector
char)__a, __b);
8034 static vector
short __ATTRS_o_ai vec_vsrah(vector
short __a,
8035 vector
unsigned short __b) {
8036 return __builtin_altivec_vsrah(__a, (vector
unsigned short)__b);
8039 static vector
unsigned short __ATTRS_o_ai vec_vsrah(vector
unsigned short __a,
8040 vector
unsigned short __b) {
8041 return (vector
unsigned short)__builtin_altivec_vsrah((vector
short)__a, __b);
8046 static vector
int __ATTRS_o_ai vec_vsraw(vector
int __a,
8047 vector
unsigned int __b) {
8048 return __builtin_altivec_vsraw(__a, __b);
8051 static vector
unsigned int __ATTRS_o_ai vec_vsraw(vector
unsigned int __a,
8052 vector
unsigned int __b) {
8053 return (vector
unsigned int)__builtin_altivec_vsraw((vector
int)__a, __b);
8058 static vector
signed char __ATTRS_o_ai vec_srl(vector
signed char __a,
8059 vector
unsigned char __b) {
8060 return (vector
signed char)__builtin_altivec_vsr((vector
int)__a,
8064 static vector
signed char __ATTRS_o_ai vec_srl(vector
signed char __a,
8065 vector
unsigned short __b) {
8066 return (vector
signed char)__builtin_altivec_vsr((vector
int)__a,
8070 static vector
signed char __ATTRS_o_ai vec_srl(vector
signed char __a,
8071 vector
unsigned int __b) {
8072 return (vector
signed char)__builtin_altivec_vsr((vector
int)__a,
8076 static vector
unsigned char __ATTRS_o_ai vec_srl(vector
unsigned char __a,
8077 vector
unsigned char __b) {
8078 return (vector
unsigned char)__builtin_altivec_vsr((vector
int)__a,
8082 static vector
unsigned char __ATTRS_o_ai vec_srl(vector
unsigned char __a,
8083 vector
unsigned short __b) {
8084 return (vector
unsigned char)__builtin_altivec_vsr((vector
int)__a,
8088 static vector
unsigned char __ATTRS_o_ai vec_srl(vector
unsigned char __a,
8089 vector
unsigned int __b) {
8090 return (vector
unsigned char)__builtin_altivec_vsr((vector
int)__a,
8094 static vector
bool char __ATTRS_o_ai vec_srl(vector
bool char __a,
8095 vector
unsigned char __b) {
8096 return (vector
bool char)__builtin_altivec_vsr((vector
int)__a,
8100 static vector
bool char __ATTRS_o_ai vec_srl(vector
bool char __a,
8101 vector
unsigned short __b) {
8102 return (vector
bool char)__builtin_altivec_vsr((vector
int)__a,
8106 static vector
bool char __ATTRS_o_ai vec_srl(vector
bool char __a,
8107 vector
unsigned int __b) {
8108 return (vector
bool char)__builtin_altivec_vsr((vector
int)__a,
8112 static vector
short __ATTRS_o_ai vec_srl(vector
short __a,
8113 vector
unsigned char __b) {
8114 return (vector
short)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8117 static vector
short __ATTRS_o_ai vec_srl(vector
short __a,
8118 vector
unsigned short __b) {
8119 return (vector
short)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8122 static vector
short __ATTRS_o_ai vec_srl(vector
short __a,
8123 vector
unsigned int __b) {
8124 return (vector
short)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8127 static vector
unsigned short __ATTRS_o_ai vec_srl(vector
unsigned short __a,
8128 vector
unsigned char __b) {
8129 return (vector
unsigned short)__builtin_altivec_vsr((vector
int)__a,
8133 static vector
unsigned short __ATTRS_o_ai vec_srl(vector
unsigned short __a,
8134 vector
unsigned short __b) {
8135 return (vector
unsigned short)__builtin_altivec_vsr((vector
int)__a,
8139 static vector
unsigned short __ATTRS_o_ai vec_srl(vector
unsigned short __a,
8140 vector
unsigned int __b) {
8141 return (vector
unsigned short)__builtin_altivec_vsr((vector
int)__a,
8145 static vector
bool short __ATTRS_o_ai vec_srl(vector
bool short __a,
8146 vector
unsigned char __b) {
8147 return (vector
bool short)__builtin_altivec_vsr((vector
int)__a,
8151 static vector
bool short __ATTRS_o_ai vec_srl(vector
bool short __a,
8152 vector
unsigned short __b) {
8153 return (vector
bool short)__builtin_altivec_vsr((vector
int)__a,
8157 static vector
bool short __ATTRS_o_ai vec_srl(vector
bool short __a,
8158 vector
unsigned int __b) {
8159 return (vector
bool short)__builtin_altivec_vsr((vector
int)__a,
8163 static vector pixel
__ATTRS_o_ai vec_srl(vector pixel __a,
8164 vector
unsigned char __b) {
8165 return (vector pixel)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8168 static vector pixel
__ATTRS_o_ai vec_srl(vector pixel __a,
8169 vector
unsigned short __b) {
8170 return (vector pixel)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8173 static vector pixel
__ATTRS_o_ai vec_srl(vector pixel __a,
8174 vector
unsigned int __b) {
8175 return (vector pixel)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8179 vector
unsigned char __b) {
8180 return (vector
int)__builtin_altivec_vsr(__a, (vector
int)__b);
8184 vector
unsigned short __b) {
8185 return (vector
int)__builtin_altivec_vsr(__a, (vector
int)__b);
8189 vector
unsigned int __b) {
8190 return (vector
int)__builtin_altivec_vsr(__a, (vector
int)__b);
8193 static vector
unsigned int __ATTRS_o_ai vec_srl(vector
unsigned int __a,
8194 vector
unsigned char __b) {
8195 return (vector
unsigned int)__builtin_altivec_vsr((vector
int)__a,
8199 static vector
unsigned int __ATTRS_o_ai vec_srl(vector
unsigned int __a,
8200 vector
unsigned short __b) {
8201 return (vector
unsigned int)__builtin_altivec_vsr((vector
int)__a,
8205 static vector
unsigned int __ATTRS_o_ai vec_srl(vector
unsigned int __a,
8206 vector
unsigned int __b) {
8207 return (vector
unsigned int)__builtin_altivec_vsr((vector
int)__a,
8211 static vector
bool int __ATTRS_o_ai vec_srl(vector
bool int __a,
8212 vector
unsigned char __b) {
8213 return (vector
bool int)__builtin_altivec_vsr((vector
int)__a,
8217 static vector
bool int __ATTRS_o_ai vec_srl(vector
bool int __a,
8218 vector
unsigned short __b) {
8219 return (vector
bool int)__builtin_altivec_vsr((vector
int)__a,
8223 static vector
bool int __ATTRS_o_ai vec_srl(vector
bool int __a,
8224 vector
unsigned int __b) {
8225 return (vector
bool int)__builtin_altivec_vsr((vector
int)__a,
8231 static vector
signed char __ATTRS_o_ai vec_vsr(vector
signed char __a,
8232 vector
unsigned char __b) {
8233 return (vector
signed char)__builtin_altivec_vsr((vector
int)__a,
8237 static vector
signed char __ATTRS_o_ai vec_vsr(vector
signed char __a,
8238 vector
unsigned short __b) {
8239 return (vector
signed char)__builtin_altivec_vsr((vector
int)__a,
8243 static vector
signed char __ATTRS_o_ai vec_vsr(vector
signed char __a,
8244 vector
unsigned int __b) {
8245 return (vector
signed char)__builtin_altivec_vsr((vector
int)__a,
8249 static vector
unsigned char __ATTRS_o_ai vec_vsr(vector
unsigned char __a,
8250 vector
unsigned char __b) {
8251 return (vector
unsigned char)__builtin_altivec_vsr((vector
int)__a,
8255 static vector
unsigned char __ATTRS_o_ai vec_vsr(vector
unsigned char __a,
8256 vector
unsigned short __b) {
8257 return (vector
unsigned char)__builtin_altivec_vsr((vector
int)__a,
8261 static vector
unsigned char __ATTRS_o_ai vec_vsr(vector
unsigned char __a,
8262 vector
unsigned int __b) {
8263 return (vector
unsigned char)__builtin_altivec_vsr((vector
int)__a,
8267 static vector
bool char __ATTRS_o_ai vec_vsr(vector
bool char __a,
8268 vector
unsigned char __b) {
8269 return (vector
bool char)__builtin_altivec_vsr((vector
int)__a,
8273 static vector
bool char __ATTRS_o_ai vec_vsr(vector
bool char __a,
8274 vector
unsigned short __b) {
8275 return (vector
bool char)__builtin_altivec_vsr((vector
int)__a,
8279 static vector
bool char __ATTRS_o_ai vec_vsr(vector
bool char __a,
8280 vector
unsigned int __b) {
8281 return (vector
bool char)__builtin_altivec_vsr((vector
int)__a,
8285 static vector
short __ATTRS_o_ai vec_vsr(vector
short __a,
8286 vector
unsigned char __b) {
8287 return (vector
short)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8290 static vector
short __ATTRS_o_ai vec_vsr(vector
short __a,
8291 vector
unsigned short __b) {
8292 return (vector
short)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8295 static vector
short __ATTRS_o_ai vec_vsr(vector
short __a,
8296 vector
unsigned int __b) {
8297 return (vector
short)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8300 static vector
unsigned short __ATTRS_o_ai vec_vsr(vector
unsigned short __a,
8301 vector
unsigned char __b) {
8302 return (vector
unsigned short)__builtin_altivec_vsr((vector
int)__a,
8306 static vector
unsigned short __ATTRS_o_ai vec_vsr(vector
unsigned short __a,
8307 vector
unsigned short __b) {
8308 return (vector
unsigned short)__builtin_altivec_vsr((vector
int)__a,
8312 static vector
unsigned short __ATTRS_o_ai vec_vsr(vector
unsigned short __a,
8313 vector
unsigned int __b) {
8314 return (vector
unsigned short)__builtin_altivec_vsr((vector
int)__a,
8318 static vector
bool short __ATTRS_o_ai vec_vsr(vector
bool short __a,
8319 vector
unsigned char __b) {
8320 return (vector
bool short)__builtin_altivec_vsr((vector
int)__a,
8324 static vector
bool short __ATTRS_o_ai vec_vsr(vector
bool short __a,
8325 vector
unsigned short __b) {
8326 return (vector
bool short)__builtin_altivec_vsr((vector
int)__a,
8330 static vector
bool short __ATTRS_o_ai vec_vsr(vector
bool short __a,
8331 vector
unsigned int __b) {
8332 return (vector
bool short)__builtin_altivec_vsr((vector
int)__a,
8336 static vector pixel
__ATTRS_o_ai vec_vsr(vector pixel __a,
8337 vector
unsigned char __b) {
8338 return (vector pixel)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8341 static vector pixel
__ATTRS_o_ai vec_vsr(vector pixel __a,
8342 vector
unsigned short __b) {
8343 return (vector pixel)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8346 static vector pixel
__ATTRS_o_ai vec_vsr(vector pixel __a,
8347 vector
unsigned int __b) {
8348 return (vector pixel)__builtin_altivec_vsr((vector
int)__a, (vector
int)__b);
8352 vector
unsigned char __b) {
8353 return (vector
int)__builtin_altivec_vsr(__a, (vector
int)__b);
8357 vector
unsigned short __b) {
8358 return (vector
int)__builtin_altivec_vsr(__a, (vector
int)__b);
8362 vector
unsigned int __b) {
8363 return (vector
int)__builtin_altivec_vsr(__a, (vector
int)__b);
8366 static vector
unsigned int __ATTRS_o_ai vec_vsr(vector
unsigned int __a,
8367 vector
unsigned char __b) {
8368 return (vector
unsigned int)__builtin_altivec_vsr((vector
int)__a,
8372 static vector
unsigned int __ATTRS_o_ai vec_vsr(vector
unsigned int __a,
8373 vector
unsigned short __b) {
8374 return (vector
unsigned int)__builtin_altivec_vsr((vector
int)__a,
8378 static vector
unsigned int __ATTRS_o_ai vec_vsr(vector
unsigned int __a,
8379 vector
unsigned int __b) {
8380 return (vector
unsigned int)__builtin_altivec_vsr((vector
int)__a,
8384 static vector
bool int __ATTRS_o_ai vec_vsr(vector
bool int __a,
8385 vector
unsigned char __b) {
8386 return (vector
bool int)__builtin_altivec_vsr((vector
int)__a,
8390 static vector
bool int __ATTRS_o_ai vec_vsr(vector
bool int __a,
8391 vector
unsigned short __b) {
8392 return (vector
bool int)__builtin_altivec_vsr((vector
int)__a,
8396 static vector
bool int __ATTRS_o_ai vec_vsr(vector
bool int __a,
8397 vector
unsigned int __b) {
8398 return (vector
bool int)__builtin_altivec_vsr((vector
int)__a,
8404 static vector
signed char __ATTRS_o_ai vec_sro(vector
signed char __a,
8405 vector
signed char __b) {
8406 return (vector
signed char)__builtin_altivec_vsro((vector
int)__a,
8410 static vector
signed char __ATTRS_o_ai vec_sro(vector
signed char __a,
8411 vector
unsigned char __b) {
8412 return (vector
signed char)__builtin_altivec_vsro((vector
int)__a,
8416 static vector
unsigned char __ATTRS_o_ai vec_sro(vector
unsigned char __a,
8417 vector
signed char __b) {
8418 return (vector
unsigned char)__builtin_altivec_vsro((vector
int)__a,
8422 static vector
unsigned char __ATTRS_o_ai vec_sro(vector
unsigned char __a,
8423 vector
unsigned char __b) {
8424 return (vector
unsigned char)__builtin_altivec_vsro((vector
int)__a,
8428 static vector
short __ATTRS_o_ai vec_sro(vector
short __a,
8429 vector
signed char __b) {
8430 return (vector
short)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8433 static vector
short __ATTRS_o_ai vec_sro(vector
short __a,
8434 vector
unsigned char __b) {
8435 return (vector
short)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8438 static vector
unsigned short __ATTRS_o_ai vec_sro(vector
unsigned short __a,
8439 vector
signed char __b) {
8440 return (vector
unsigned short)__builtin_altivec_vsro((vector
int)__a,
8444 static vector
unsigned short __ATTRS_o_ai vec_sro(vector
unsigned short __a,
8445 vector
unsigned char __b) {
8446 return (vector
unsigned short)__builtin_altivec_vsro((vector
int)__a,
8450 static vector pixel
__ATTRS_o_ai vec_sro(vector pixel __a,
8451 vector
signed char __b) {
8452 return (vector pixel)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8455 static vector pixel
__ATTRS_o_ai vec_sro(vector pixel __a,
8456 vector
unsigned char __b) {
8457 return (vector pixel)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8460 static vector
int __ATTRS_o_ai vec_sro(vector
int __a, vector
signed char __b) {
8461 return (vector
int)__builtin_altivec_vsro(__a, (vector
int)__b);
8465 vector
unsigned char __b) {
8466 return (vector
int)__builtin_altivec_vsro(__a, (vector
int)__b);
8469 static vector
unsigned int __ATTRS_o_ai vec_sro(vector
unsigned int __a,
8470 vector
signed char __b) {
8471 return (vector
unsigned int)__builtin_altivec_vsro((vector
int)__a,
8475 static vector
unsigned int __ATTRS_o_ai vec_sro(vector
unsigned int __a,
8476 vector
unsigned char __b) {
8477 return (vector
unsigned int)__builtin_altivec_vsro((vector
int)__a,
8481 static vector
float __ATTRS_o_ai vec_sro(vector
float __a,
8482 vector
signed char __b) {
8483 return (vector
float)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8486 static vector
float __ATTRS_o_ai vec_sro(vector
float __a,
8487 vector
unsigned char __b) {
8488 return (vector
float)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8493 static vector
signed char __ATTRS_o_ai vec_vsro(vector
signed char __a,
8494 vector
signed char __b) {
8495 return (vector
signed char)__builtin_altivec_vsro((vector
int)__a,
8499 static vector
signed char __ATTRS_o_ai vec_vsro(vector
signed char __a,
8500 vector
unsigned char __b) {
8501 return (vector
signed char)__builtin_altivec_vsro((vector
int)__a,
8505 static vector
unsigned char __ATTRS_o_ai vec_vsro(vector
unsigned char __a,
8506 vector
signed char __b) {
8507 return (vector
unsigned char)__builtin_altivec_vsro((vector
int)__a,
8511 static vector
unsigned char __ATTRS_o_ai vec_vsro(vector
unsigned char __a,
8512 vector
unsigned char __b) {
8513 return (vector
unsigned char)__builtin_altivec_vsro((vector
int)__a,
8517 static vector
short __ATTRS_o_ai vec_vsro(vector
short __a,
8518 vector
signed char __b) {
8519 return (vector
short)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8522 static vector
short __ATTRS_o_ai vec_vsro(vector
short __a,
8523 vector
unsigned char __b) {
8524 return (vector
short)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8527 static vector
unsigned short __ATTRS_o_ai vec_vsro(vector
unsigned short __a,
8528 vector
signed char __b) {
8529 return (vector
unsigned short)__builtin_altivec_vsro((vector
int)__a,
8533 static vector
unsigned short __ATTRS_o_ai vec_vsro(vector
unsigned short __a,
8534 vector
unsigned char __b) {
8535 return (vector
unsigned short)__builtin_altivec_vsro((vector
int)__a,
8539 static vector pixel
__ATTRS_o_ai vec_vsro(vector pixel __a,
8540 vector
signed char __b) {
8541 return (vector pixel)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8544 static vector pixel
__ATTRS_o_ai vec_vsro(vector pixel __a,
8545 vector
unsigned char __b) {
8546 return (vector pixel)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8549 static vector
int __ATTRS_o_ai vec_vsro(vector
int __a,
8550 vector
signed char __b) {
8551 return (vector
int)__builtin_altivec_vsro(__a, (vector
int)__b);
8554 static vector
int __ATTRS_o_ai vec_vsro(vector
int __a,
8555 vector
unsigned char __b) {
8556 return (vector
int)__builtin_altivec_vsro(__a, (vector
int)__b);
8559 static vector
unsigned int __ATTRS_o_ai vec_vsro(vector
unsigned int __a,
8560 vector
signed char __b) {
8561 return (vector
unsigned int)__builtin_altivec_vsro((vector
int)__a,
8565 static vector
unsigned int __ATTRS_o_ai vec_vsro(vector
unsigned int __a,
8566 vector
unsigned char __b) {
8567 return (vector
unsigned int)__builtin_altivec_vsro((vector
int)__a,
8571 static vector
float __ATTRS_o_ai vec_vsro(vector
float __a,
8572 vector
signed char __b) {
8573 return (vector
float)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8576 static vector
float __ATTRS_o_ai vec_vsro(vector
float __a,
8577 vector
unsigned char __b) {
8578 return (vector
float)__builtin_altivec_vsro((vector
int)__a, (vector
int)__b);
8583 static void __ATTRS_o_ai vec_st(vector
signed char __a,
int __b,
8584 vector
signed char *__c) {
8585 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8588 static void __ATTRS_o_ai vec_st(vector
signed char __a,
int __b,
8590 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8593 static void __ATTRS_o_ai vec_st(vector
unsigned char __a,
int __b,
8594 vector
unsigned char *__c) {
8595 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8598 static void __ATTRS_o_ai vec_st(vector
unsigned char __a,
int __b,
8599 unsigned char *__c) {
8600 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8603 static void __ATTRS_o_ai vec_st(vector
bool char __a,
int __b,
8605 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8608 static void __ATTRS_o_ai vec_st(vector
bool char __a,
int __b,
8609 unsigned char *__c) {
8610 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8613 static void __ATTRS_o_ai vec_st(vector
bool char __a,
int __b,
8614 vector
bool char *__c) {
8615 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8618 static void __ATTRS_o_ai vec_st(vector
short __a,
int __b, vector
short *__c) {
8619 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8622 static void __ATTRS_o_ai vec_st(vector
short __a,
int __b,
short *__c) {
8623 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8626 static void __ATTRS_o_ai vec_st(vector
unsigned short __a,
int __b,
8627 vector
unsigned short *__c) {
8628 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8631 static void __ATTRS_o_ai vec_st(vector
unsigned short __a,
int __b,
8632 unsigned short *__c) {
8633 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8636 static void __ATTRS_o_ai vec_st(vector
bool short __a,
int __b,
short *__c) {
8637 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8640 static void __ATTRS_o_ai vec_st(vector
bool short __a,
int __b,
8641 unsigned short *__c) {
8642 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8645 static void __ATTRS_o_ai vec_st(vector
bool short __a,
int __b,
8646 vector
bool short *__c) {
8647 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8650 static void __ATTRS_o_ai vec_st(vector pixel __a,
int __b,
short *__c) {
8651 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8654 static void __ATTRS_o_ai vec_st(vector pixel __a,
int __b,
8655 unsigned short *__c) {
8656 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8659 static void __ATTRS_o_ai vec_st(vector pixel __a,
int __b, vector pixel *__c) {
8660 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8663 static void __ATTRS_o_ai vec_st(vector
int __a,
int __b, vector
int *__c) {
8664 __builtin_altivec_stvx(__a, __b, __c);
8667 static void __ATTRS_o_ai vec_st(vector
int __a,
int __b,
int *__c) {
8668 __builtin_altivec_stvx(__a, __b, __c);
8671 static void __ATTRS_o_ai vec_st(vector
unsigned int __a,
int __b,
8672 vector
unsigned int *__c) {
8673 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8676 static void __ATTRS_o_ai vec_st(vector
unsigned int __a,
int __b,
8677 unsigned int *__c) {
8678 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8681 static void __ATTRS_o_ai vec_st(vector
bool int __a,
int __b,
int *__c) {
8682 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8685 static void __ATTRS_o_ai vec_st(vector
bool int __a,
int __b,
8686 unsigned int *__c) {
8687 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8690 static void __ATTRS_o_ai vec_st(vector
bool int __a,
int __b,
8691 vector
bool int *__c) {
8692 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8695 static void __ATTRS_o_ai vec_st(vector
float __a,
int __b, vector
float *__c) {
8696 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8699 static void __ATTRS_o_ai vec_st(vector
float __a,
int __b,
float *__c) {
8700 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8705 static void __ATTRS_o_ai vec_stvx(vector
signed char __a,
int __b,
8706 vector
signed char *__c) {
8707 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8710 static void __ATTRS_o_ai vec_stvx(vector
signed char __a,
int __b,
8712 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8715 static void __ATTRS_o_ai vec_stvx(vector
unsigned char __a,
int __b,
8716 vector
unsigned char *__c) {
8717 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8720 static void __ATTRS_o_ai vec_stvx(vector
unsigned char __a,
int __b,
8721 unsigned char *__c) {
8722 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8725 static void __ATTRS_o_ai vec_stvx(vector
bool char __a,
int __b,
8727 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8730 static void __ATTRS_o_ai vec_stvx(vector
bool char __a,
int __b,
8731 unsigned char *__c) {
8732 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8735 static void __ATTRS_o_ai vec_stvx(vector
bool char __a,
int __b,
8736 vector
bool char *__c) {
8737 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8740 static void __ATTRS_o_ai vec_stvx(vector
short __a,
int __b,
8741 vector
short *__c) {
8742 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8745 static void __ATTRS_o_ai vec_stvx(vector
short __a,
int __b,
short *__c) {
8746 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8749 static void __ATTRS_o_ai vec_stvx(vector
unsigned short __a,
int __b,
8750 vector
unsigned short *__c) {
8751 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8754 static void __ATTRS_o_ai vec_stvx(vector
unsigned short __a,
int __b,
8755 unsigned short *__c) {
8756 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8759 static void __ATTRS_o_ai vec_stvx(vector
bool short __a,
int __b,
short *__c) {
8760 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8763 static void __ATTRS_o_ai vec_stvx(vector
bool short __a,
int __b,
8764 unsigned short *__c) {
8765 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8768 static void __ATTRS_o_ai vec_stvx(vector
bool short __a,
int __b,
8769 vector
bool short *__c) {
8770 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8773 static void __ATTRS_o_ai vec_stvx(vector pixel __a,
int __b,
short *__c) {
8774 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8777 static void __ATTRS_o_ai vec_stvx(vector pixel __a,
int __b,
8778 unsigned short *__c) {
8779 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8782 static void __ATTRS_o_ai vec_stvx(vector pixel __a,
int __b,
8783 vector pixel *__c) {
8784 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8787 static void __ATTRS_o_ai vec_stvx(vector
int __a,
int __b, vector
int *__c) {
8788 __builtin_altivec_stvx(__a, __b, __c);
8791 static void __ATTRS_o_ai vec_stvx(vector
int __a,
int __b,
int *__c) {
8792 __builtin_altivec_stvx(__a, __b, __c);
8795 static void __ATTRS_o_ai vec_stvx(vector
unsigned int __a,
int __b,
8796 vector
unsigned int *__c) {
8797 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8800 static void __ATTRS_o_ai vec_stvx(vector
unsigned int __a,
int __b,
8801 unsigned int *__c) {
8802 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8805 static void __ATTRS_o_ai vec_stvx(vector
bool int __a,
int __b,
int *__c) {
8806 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8809 static void __ATTRS_o_ai vec_stvx(vector
bool int __a,
int __b,
8810 unsigned int *__c) {
8811 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8814 static void __ATTRS_o_ai vec_stvx(vector
bool int __a,
int __b,
8815 vector
bool int *__c) {
8816 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8819 static void __ATTRS_o_ai vec_stvx(vector
float __a,
int __b,
8820 vector
float *__c) {
8821 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8824 static void __ATTRS_o_ai vec_stvx(vector
float __a,
int __b,
float *__c) {
8825 __builtin_altivec_stvx((vector
int)__a, __b, __c);
8830 static void __ATTRS_o_ai vec_ste(vector
signed char __a,
int __b,
8832 __builtin_altivec_stvebx((vector
char)__a, __b, __c);
8835 static void __ATTRS_o_ai vec_ste(vector
unsigned char __a,
int __b,
8836 unsigned char *__c) {
8837 __builtin_altivec_stvebx((vector
char)__a, __b, __c);
8840 static void __ATTRS_o_ai vec_ste(vector
bool char __a,
int __b,
8842 __builtin_altivec_stvebx((vector
char)__a, __b, __c);
8845 static void __ATTRS_o_ai vec_ste(vector
bool char __a,
int __b,
8846 unsigned char *__c) {
8847 __builtin_altivec_stvebx((vector
char)__a, __b, __c);
8850 static void __ATTRS_o_ai vec_ste(vector
short __a,
int __b,
short *__c) {
8851 __builtin_altivec_stvehx(__a, __b, __c);
8854 static void __ATTRS_o_ai vec_ste(vector
unsigned short __a,
int __b,
8855 unsigned short *__c) {
8856 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8859 static void __ATTRS_o_ai vec_ste(vector
bool short __a,
int __b,
short *__c) {
8860 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8863 static void __ATTRS_o_ai vec_ste(vector
bool short __a,
int __b,
8864 unsigned short *__c) {
8865 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8868 static void __ATTRS_o_ai vec_ste(vector pixel __a,
int __b,
short *__c) {
8869 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8872 static void __ATTRS_o_ai vec_ste(vector pixel __a,
int __b,
8873 unsigned short *__c) {
8874 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8877 static void __ATTRS_o_ai vec_ste(vector
int __a,
int __b,
int *__c) {
8878 __builtin_altivec_stvewx(__a, __b, __c);
8881 static void __ATTRS_o_ai vec_ste(vector
unsigned int __a,
int __b,
8882 unsigned int *__c) {
8883 __builtin_altivec_stvewx((vector
int)__a, __b, __c);
8886 static void __ATTRS_o_ai vec_ste(vector
bool int __a,
int __b,
int *__c) {
8887 __builtin_altivec_stvewx((vector
int)__a, __b, __c);
8890 static void __ATTRS_o_ai vec_ste(vector
bool int __a,
int __b,
8891 unsigned int *__c) {
8892 __builtin_altivec_stvewx((vector
int)__a, __b, __c);
8895 static void __ATTRS_o_ai vec_ste(vector
float __a,
int __b,
float *__c) {
8896 __builtin_altivec_stvewx((vector
int)__a, __b, __c);
8901 static void __ATTRS_o_ai vec_stvebx(vector
signed char __a,
int __b,
8903 __builtin_altivec_stvebx((vector
char)__a, __b, __c);
8906 static void __ATTRS_o_ai vec_stvebx(vector
unsigned char __a,
int __b,
8907 unsigned char *__c) {
8908 __builtin_altivec_stvebx((vector
char)__a, __b, __c);
8911 static void __ATTRS_o_ai vec_stvebx(vector
bool char __a,
int __b,
8913 __builtin_altivec_stvebx((vector
char)__a, __b, __c);
8916 static void __ATTRS_o_ai vec_stvebx(vector
bool char __a,
int __b,
8917 unsigned char *__c) {
8918 __builtin_altivec_stvebx((vector
char)__a, __b, __c);
8923 static void __ATTRS_o_ai vec_stvehx(vector
short __a,
int __b,
short *__c) {
8924 __builtin_altivec_stvehx(__a, __b, __c);
8927 static void __ATTRS_o_ai vec_stvehx(vector
unsigned short __a,
int __b,
8928 unsigned short *__c) {
8929 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8932 static void __ATTRS_o_ai vec_stvehx(vector
bool short __a,
int __b,
8934 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8937 static void __ATTRS_o_ai vec_stvehx(vector
bool short __a,
int __b,
8938 unsigned short *__c) {
8939 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8942 static void __ATTRS_o_ai vec_stvehx(vector pixel __a,
int __b,
short *__c) {
8943 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8946 static void __ATTRS_o_ai vec_stvehx(vector pixel __a,
int __b,
8947 unsigned short *__c) {
8948 __builtin_altivec_stvehx((vector
short)__a, __b, __c);
8953 static void __ATTRS_o_ai vec_stvewx(vector
int __a,
int __b,
int *__c) {
8954 __builtin_altivec_stvewx(__a, __b, __c);
8957 static void __ATTRS_o_ai vec_stvewx(vector
unsigned int __a,
int __b,
8958 unsigned int *__c) {
8959 __builtin_altivec_stvewx((vector
int)__a, __b, __c);
8962 static void __ATTRS_o_ai vec_stvewx(vector
bool int __a,
int __b,
int *__c) {
8963 __builtin_altivec_stvewx((vector
int)__a, __b, __c);
8966 static void __ATTRS_o_ai vec_stvewx(vector
bool int __a,
int __b,
8967 unsigned int *__c) {
8968 __builtin_altivec_stvewx((vector
int)__a, __b, __c);
8971 static void __ATTRS_o_ai vec_stvewx(vector
float __a,
int __b,
float *__c) {
8972 __builtin_altivec_stvewx((vector
int)__a, __b, __c);
8977 static void __ATTRS_o_ai vec_stl(vector
signed char __a,
int __b,
8978 vector
signed char *__c) {
8979 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
8982 static void __ATTRS_o_ai vec_stl(vector
signed char __a,
int __b,
8984 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
8987 static void __ATTRS_o_ai vec_stl(vector
unsigned char __a,
int __b,
8988 vector
unsigned char *__c) {
8989 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
8992 static void __ATTRS_o_ai vec_stl(vector
unsigned char __a,
int __b,
8993 unsigned char *__c) {
8994 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
8997 static void __ATTRS_o_ai vec_stl(vector
bool char __a,
int __b,
8999 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9002 static void __ATTRS_o_ai vec_stl(vector
bool char __a,
int __b,
9003 unsigned char *__c) {
9004 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9007 static void __ATTRS_o_ai vec_stl(vector
bool char __a,
int __b,
9008 vector
bool char *__c) {
9009 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9012 static void __ATTRS_o_ai vec_stl(vector
short __a,
int __b, vector
short *__c) {
9013 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9016 static void __ATTRS_o_ai vec_stl(vector
short __a,
int __b,
short *__c) {
9017 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9020 static void __ATTRS_o_ai vec_stl(vector
unsigned short __a,
int __b,
9021 vector
unsigned short *__c) {
9022 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9025 static void __ATTRS_o_ai vec_stl(vector
unsigned short __a,
int __b,
9026 unsigned short *__c) {
9027 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9030 static void __ATTRS_o_ai vec_stl(vector
bool short __a,
int __b,
short *__c) {
9031 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9034 static void __ATTRS_o_ai vec_stl(vector
bool short __a,
int __b,
9035 unsigned short *__c) {
9036 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9039 static void __ATTRS_o_ai vec_stl(vector
bool short __a,
int __b,
9040 vector
bool short *__c) {
9041 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9044 static void __ATTRS_o_ai vec_stl(vector pixel __a,
int __b,
short *__c) {
9045 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9048 static void __ATTRS_o_ai vec_stl(vector pixel __a,
int __b,
9049 unsigned short *__c) {
9050 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9053 static void __ATTRS_o_ai vec_stl(vector pixel __a,
int __b, vector pixel *__c) {
9054 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9057 static void __ATTRS_o_ai vec_stl(vector
int __a,
int __b, vector
int *__c) {
9058 __builtin_altivec_stvxl(__a, __b, __c);
9061 static void __ATTRS_o_ai vec_stl(vector
int __a,
int __b,
int *__c) {
9062 __builtin_altivec_stvxl(__a, __b, __c);
9065 static void __ATTRS_o_ai vec_stl(vector
unsigned int __a,
int __b,
9066 vector
unsigned int *__c) {
9067 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9070 static void __ATTRS_o_ai vec_stl(vector
unsigned int __a,
int __b,
9071 unsigned int *__c) {
9072 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9075 static void __ATTRS_o_ai vec_stl(vector
bool int __a,
int __b,
int *__c) {
9076 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9079 static void __ATTRS_o_ai vec_stl(vector
bool int __a,
int __b,
9080 unsigned int *__c) {
9081 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9084 static void __ATTRS_o_ai vec_stl(vector
bool int __a,
int __b,
9085 vector
bool int *__c) {
9086 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9089 static void __ATTRS_o_ai vec_stl(vector
float __a,
int __b, vector
float *__c) {
9090 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9093 static void __ATTRS_o_ai vec_stl(vector
float __a,
int __b,
float *__c) {
9094 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9099 static void __ATTRS_o_ai vec_stvxl(vector
signed char __a,
int __b,
9100 vector
signed char *__c) {
9101 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9104 static void __ATTRS_o_ai vec_stvxl(vector
signed char __a,
int __b,
9106 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9109 static void __ATTRS_o_ai vec_stvxl(vector
unsigned char __a,
int __b,
9110 vector
unsigned char *__c) {
9111 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9114 static void __ATTRS_o_ai vec_stvxl(vector
unsigned char __a,
int __b,
9115 unsigned char *__c) {
9116 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9119 static void __ATTRS_o_ai vec_stvxl(vector
bool char __a,
int __b,
9121 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9124 static void __ATTRS_o_ai vec_stvxl(vector
bool char __a,
int __b,
9125 unsigned char *__c) {
9126 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9129 static void __ATTRS_o_ai vec_stvxl(vector
bool char __a,
int __b,
9130 vector
bool char *__c) {
9131 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9134 static void __ATTRS_o_ai vec_stvxl(vector
short __a,
int __b,
9135 vector
short *__c) {
9136 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9139 static void __ATTRS_o_ai vec_stvxl(vector
short __a,
int __b,
short *__c) {
9140 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9143 static void __ATTRS_o_ai vec_stvxl(vector
unsigned short __a,
int __b,
9144 vector
unsigned short *__c) {
9145 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9148 static void __ATTRS_o_ai vec_stvxl(vector
unsigned short __a,
int __b,
9149 unsigned short *__c) {
9150 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9153 static void __ATTRS_o_ai vec_stvxl(vector
bool short __a,
int __b,
short *__c) {
9154 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9157 static void __ATTRS_o_ai vec_stvxl(vector
bool short __a,
int __b,
9158 unsigned short *__c) {
9159 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9162 static void __ATTRS_o_ai vec_stvxl(vector
bool short __a,
int __b,
9163 vector
bool short *__c) {
9164 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9167 static void __ATTRS_o_ai vec_stvxl(vector pixel __a,
int __b,
short *__c) {
9168 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9171 static void __ATTRS_o_ai vec_stvxl(vector pixel __a,
int __b,
9172 unsigned short *__c) {
9173 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9176 static void __ATTRS_o_ai vec_stvxl(vector pixel __a,
int __b,
9177 vector pixel *__c) {
9178 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9181 static void __ATTRS_o_ai vec_stvxl(vector
int __a,
int __b, vector
int *__c) {
9182 __builtin_altivec_stvxl(__a, __b, __c);
9185 static void __ATTRS_o_ai vec_stvxl(vector
int __a,
int __b,
int *__c) {
9186 __builtin_altivec_stvxl(__a, __b, __c);
9189 static void __ATTRS_o_ai vec_stvxl(vector
unsigned int __a,
int __b,
9190 vector
unsigned int *__c) {
9191 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9194 static void __ATTRS_o_ai vec_stvxl(vector
unsigned int __a,
int __b,
9195 unsigned int *__c) {
9196 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9199 static void __ATTRS_o_ai vec_stvxl(vector
bool int __a,
int __b,
int *__c) {
9200 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9203 static void __ATTRS_o_ai vec_stvxl(vector
bool int __a,
int __b,
9204 unsigned int *__c) {
9205 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9208 static void __ATTRS_o_ai vec_stvxl(vector
bool int __a,
int __b,
9209 vector
bool int *__c) {
9210 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9213 static void __ATTRS_o_ai vec_stvxl(vector
float __a,
int __b,
9214 vector
float *__c) {
9215 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9218 static void __ATTRS_o_ai vec_stvxl(vector
float __a,
int __b,
float *__c) {
9219 __builtin_altivec_stvxl((vector
int)__a, __b, __c);
9224 static vector
signed char __ATTRS_o_ai vec_sub(vector
signed char __a,
9225 vector
signed char __b) {
9229 static vector
signed char __ATTRS_o_ai vec_sub(vector
bool char __a,
9230 vector
signed char __b) {
9231 return (vector
signed char)__a -
__b;
9234 static vector
signed char __ATTRS_o_ai vec_sub(vector
signed char __a,
9235 vector
bool char __b) {
9236 return __a - (vector
signed char)__b;
9239 static vector
unsigned char __ATTRS_o_ai vec_sub(vector
unsigned char __a,
9240 vector
unsigned char __b) {
9244 static vector
unsigned char __ATTRS_o_ai vec_sub(vector
bool char __a,
9245 vector
unsigned char __b) {
9246 return (vector
unsigned char)__a -
__b;
9249 static vector
unsigned char __ATTRS_o_ai vec_sub(vector
unsigned char __a,
9250 vector
bool char __b) {
9251 return __a - (vector
unsigned char)__b;
9254 static vector
short __ATTRS_o_ai vec_sub(vector
short __a, vector
short __b) {
9258 static vector
short __ATTRS_o_ai vec_sub(vector
bool short __a,
9260 return (vector
short)__a -
__b;
9263 static vector
short __ATTRS_o_ai vec_sub(vector
short __a,
9264 vector
bool short __b) {
9265 return __a - (vector short)__b;
9268 static vector
unsigned short __ATTRS_o_ai vec_sub(vector
unsigned short __a,
9269 vector
unsigned short __b) {
9273 static vector
unsigned short __ATTRS_o_ai vec_sub(vector
bool short __a,
9274 vector
unsigned short __b) {
9275 return (vector
unsigned short)__a -
__b;
9278 static vector
unsigned short __ATTRS_o_ai vec_sub(vector
unsigned short __a,
9279 vector
bool short __b) {
9280 return __a - (vector
unsigned short)__b;
9283 static vector
int __ATTRS_o_ai vec_sub(vector
int __a, vector
int __b) {
9287 static vector
int __ATTRS_o_ai vec_sub(vector
bool int __a, vector
int __b) {
9288 return (vector
int)__a -
__b;
9291 static vector
int __ATTRS_o_ai vec_sub(vector
int __a, vector
bool int __b) {
9292 return __a - (vector int)__b;
9295 static vector
unsigned int __ATTRS_o_ai vec_sub(vector
unsigned int __a,
9296 vector
unsigned int __b) {
9300 static vector
unsigned int __ATTRS_o_ai vec_sub(vector
bool int __a,
9301 vector
unsigned int __b) {
9302 return (vector
unsigned int)__a -
__b;
9305 static vector
unsigned int __ATTRS_o_ai vec_sub(vector
unsigned int __a,
9306 vector
bool int __b) {
9307 return __a - (vector
unsigned int)__b;
9310 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
9311 static vector
signed __int128
__ATTRS_o_ai vec_sub(vector
signed __int128 __a,
9312 vector
signed __int128 __b) {
9317 vec_sub(vector
unsigned __int128 __a, vector
unsigned __int128 __b) {
9320 #endif // defined(__POWER8_VECTOR__) && defined(__powerpc64__)
9324 vec_sub(vector
signed long long __a, vector
signed long long __b) {
9329 vec_sub(vector
unsigned long long __a, vector
unsigned long long __b) {
9334 vec_sub(vector
double __a, vector
double __b) {
9339 static vector
float __ATTRS_o_ai vec_sub(vector
float __a, vector
float __b) {
9345 #define __builtin_altivec_vsububm vec_vsububm
9347 static vector
signed char __ATTRS_o_ai vec_vsububm(vector
signed char __a,
9348 vector
signed char __b) {
9352 static vector
signed char __ATTRS_o_ai vec_vsububm(vector
bool char __a,
9353 vector
signed char __b) {
9354 return (vector
signed char)__a -
__b;
9357 static vector
signed char __ATTRS_o_ai vec_vsububm(vector
signed char __a,
9358 vector
bool char __b) {
9359 return __a - (vector
signed char)__b;
9362 static vector
unsigned char __ATTRS_o_ai vec_vsububm(vector
unsigned char __a,
9363 vector
unsigned char __b) {
9367 static vector
unsigned char __ATTRS_o_ai vec_vsububm(vector
bool char __a,
9368 vector
unsigned char __b) {
9369 return (vector
unsigned char)__a -
__b;
9372 static vector
unsigned char __ATTRS_o_ai vec_vsububm(vector
unsigned char __a,
9373 vector
bool char __b) {
9374 return __a - (vector
unsigned char)__b;
9379 #define __builtin_altivec_vsubuhm vec_vsubuhm
9381 static vector
short __ATTRS_o_ai vec_vsubuhm(vector
short __a,
9386 static vector
short __ATTRS_o_ai vec_vsubuhm(vector
bool short __a,
9388 return (vector
short)__a -
__b;
9391 static vector
short __ATTRS_o_ai vec_vsubuhm(vector
short __a,
9392 vector
bool short __b) {
9393 return __a - (vector short)__b;
9397 vec_vsubuhm(vector
unsigned short __a, vector
unsigned short __b) {
9402 vec_vsubuhm(vector
bool short __a, vector
unsigned short __b) {
9403 return (vector
unsigned short)__a -
__b;
9406 static vector
unsigned short __ATTRS_o_ai vec_vsubuhm(vector
unsigned short __a,
9407 vector
bool short __b) {
9408 return __a - (vector
unsigned short)__b;
9413 #define __builtin_altivec_vsubuwm vec_vsubuwm
9415 static vector
int __ATTRS_o_ai vec_vsubuwm(vector
int __a, vector
int __b) {
9419 static vector
int __ATTRS_o_ai vec_vsubuwm(vector
bool int __a,
9421 return (vector
int)__a -
__b;
9424 static vector
int __ATTRS_o_ai vec_vsubuwm(vector
int __a,
9425 vector
bool int __b) {
9426 return __a - (vector int)__b;
9429 static vector
unsigned int __ATTRS_o_ai vec_vsubuwm(vector
unsigned int __a,
9430 vector
unsigned int __b) {
9434 static vector
unsigned int __ATTRS_o_ai vec_vsubuwm(vector
bool int __a,
9435 vector
unsigned int __b) {
9436 return (vector
unsigned int)__a -
__b;
9439 static vector
unsigned int __ATTRS_o_ai vec_vsubuwm(vector
unsigned int __a,
9440 vector
bool int __b) {
9441 return __a - (vector
unsigned int)__b;
9446 #define __builtin_altivec_vsubfp vec_vsubfp
9449 vec_vsubfp(vector
float __a, vector
float __b) {
9455 static vector
unsigned int __ATTRS_o_ai vec_subc(vector
unsigned int __a,
9456 vector
unsigned int __b) {
9457 return __builtin_altivec_vsubcuw(__a, __b);
9460 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
9462 vec_subc(vector
unsigned __int128 __a, vector
unsigned __int128 __b) {
9463 return __builtin_altivec_vsubcuq(__a, __b);
9467 vec_subc(vector
signed __int128 __a, vector
signed __int128 __b) {
9468 return __builtin_altivec_vsubcuq(__a, __b);
9470 #endif // defined(__POWER8_VECTOR__) && defined(__powerpc64__)
9474 static vector
unsigned int __attribute__((__always_inline__))
9475 vec_vsubcuw(vector
unsigned int __a, vector
unsigned int __b) {
9476 return __builtin_altivec_vsubcuw(__a, __b);
9481 static vector
signed char __ATTRS_o_ai vec_subs(vector
signed char __a,
9482 vector
signed char __b) {
9483 return __builtin_altivec_vsubsbs(__a, __b);
9486 static vector
signed char __ATTRS_o_ai vec_subs(vector
bool char __a,
9487 vector
signed char __b) {
9488 return __builtin_altivec_vsubsbs((vector
signed char)__a, __b);
9491 static vector
signed char __ATTRS_o_ai vec_subs(vector
signed char __a,
9492 vector
bool char __b) {
9493 return __builtin_altivec_vsubsbs(__a, (vector
signed char)__b);
9496 static vector
unsigned char __ATTRS_o_ai vec_subs(vector
unsigned char __a,
9497 vector
unsigned char __b) {
9498 return __builtin_altivec_vsububs(__a, __b);
9501 static vector
unsigned char __ATTRS_o_ai vec_subs(vector
bool char __a,
9502 vector
unsigned char __b) {
9503 return __builtin_altivec_vsububs((vector
unsigned char)__a, __b);
9506 static vector
unsigned char __ATTRS_o_ai vec_subs(vector
unsigned char __a,
9507 vector
bool char __b) {
9508 return __builtin_altivec_vsububs(__a, (vector
unsigned char)__b);
9511 static vector
short __ATTRS_o_ai vec_subs(vector
short __a, vector
short __b) {
9512 return __builtin_altivec_vsubshs(__a, __b);
9515 static vector
short __ATTRS_o_ai vec_subs(vector
bool short __a,
9517 return __builtin_altivec_vsubshs((vector
short)__a, __b);
9520 static vector
short __ATTRS_o_ai vec_subs(vector
short __a,
9521 vector
bool short __b) {
9522 return __builtin_altivec_vsubshs(__a, (vector
short)__b);
9525 static vector
unsigned short __ATTRS_o_ai vec_subs(vector
unsigned short __a,
9526 vector
unsigned short __b) {
9527 return __builtin_altivec_vsubuhs(__a, __b);
9530 static vector
unsigned short __ATTRS_o_ai vec_subs(vector
bool short __a,
9531 vector
unsigned short __b) {
9532 return __builtin_altivec_vsubuhs((vector
unsigned short)__a, __b);
9535 static vector
unsigned short __ATTRS_o_ai vec_subs(vector
unsigned short __a,
9536 vector
bool short __b) {
9537 return __builtin_altivec_vsubuhs(__a, (vector
unsigned short)__b);
9540 static vector
int __ATTRS_o_ai vec_subs(vector
int __a, vector
int __b) {
9541 return __builtin_altivec_vsubsws(__a, __b);
9544 static vector
int __ATTRS_o_ai vec_subs(vector
bool int __a, vector
int __b) {
9545 return __builtin_altivec_vsubsws((vector
int)__a, __b);
9548 static vector
int __ATTRS_o_ai vec_subs(vector
int __a, vector
bool int __b) {
9549 return __builtin_altivec_vsubsws(__a, (vector
int)__b);
9552 static vector
unsigned int __ATTRS_o_ai vec_subs(vector
unsigned int __a,
9553 vector
unsigned int __b) {
9554 return __builtin_altivec_vsubuws(__a, __b);
9557 static vector
unsigned int __ATTRS_o_ai vec_subs(vector
bool int __a,
9558 vector
unsigned int __b) {
9559 return __builtin_altivec_vsubuws((vector
unsigned int)__a, __b);
9562 static vector
unsigned int __ATTRS_o_ai vec_subs(vector
unsigned int __a,
9563 vector
bool int __b) {
9564 return __builtin_altivec_vsubuws(__a, (vector
unsigned int)__b);
9569 static vector
signed char __ATTRS_o_ai vec_vsubsbs(vector
signed char __a,
9570 vector
signed char __b) {
9571 return __builtin_altivec_vsubsbs(__a, __b);
9574 static vector
signed char __ATTRS_o_ai vec_vsubsbs(vector
bool char __a,
9575 vector
signed char __b) {
9576 return __builtin_altivec_vsubsbs((vector
signed char)__a, __b);
9579 static vector
signed char __ATTRS_o_ai vec_vsubsbs(vector
signed char __a,
9580 vector
bool char __b) {
9581 return __builtin_altivec_vsubsbs(__a, (vector
signed char)__b);
9586 static vector
unsigned char __ATTRS_o_ai vec_vsububs(vector
unsigned char __a,
9587 vector
unsigned char __b) {
9588 return __builtin_altivec_vsububs(__a, __b);
9591 static vector
unsigned char __ATTRS_o_ai vec_vsububs(vector
bool char __a,
9592 vector
unsigned char __b) {
9593 return __builtin_altivec_vsububs((vector
unsigned char)__a, __b);
9596 static vector
unsigned char __ATTRS_o_ai vec_vsububs(vector
unsigned char __a,
9597 vector
bool char __b) {
9598 return __builtin_altivec_vsububs(__a, (vector
unsigned char)__b);
9603 static vector
short __ATTRS_o_ai vec_vsubshs(vector
short __a,
9605 return __builtin_altivec_vsubshs(__a, __b);
9608 static vector
short __ATTRS_o_ai vec_vsubshs(vector
bool short __a,
9610 return __builtin_altivec_vsubshs((vector
short)__a, __b);
9613 static vector
short __ATTRS_o_ai vec_vsubshs(vector
short __a,
9614 vector
bool short __b) {
9615 return __builtin_altivec_vsubshs(__a, (vector
short)__b);
9621 vec_vsubuhs(vector
unsigned short __a, vector
unsigned short __b) {
9622 return __builtin_altivec_vsubuhs(__a, __b);
9626 vec_vsubuhs(vector
bool short __a, vector
unsigned short __b) {
9627 return __builtin_altivec_vsubuhs((vector
unsigned short)__a, __b);
9630 static vector
unsigned short __ATTRS_o_ai vec_vsubuhs(vector
unsigned short __a,
9631 vector
bool short __b) {
9632 return __builtin_altivec_vsubuhs(__a, (vector
unsigned short)__b);
9637 static vector
int __ATTRS_o_ai vec_vsubsws(vector
int __a, vector
int __b) {
9638 return __builtin_altivec_vsubsws(__a, __b);
9641 static vector
int __ATTRS_o_ai vec_vsubsws(vector
bool int __a,
9643 return __builtin_altivec_vsubsws((vector
int)__a, __b);
9646 static vector
int __ATTRS_o_ai vec_vsubsws(vector
int __a,
9647 vector
bool int __b) {
9648 return __builtin_altivec_vsubsws(__a, (vector
int)__b);
9653 static vector
unsigned int __ATTRS_o_ai vec_vsubuws(vector
unsigned int __a,
9654 vector
unsigned int __b) {
9655 return __builtin_altivec_vsubuws(__a, __b);
9658 static vector
unsigned int __ATTRS_o_ai vec_vsubuws(vector
bool int __a,
9659 vector
unsigned int __b) {
9660 return __builtin_altivec_vsubuws((vector
unsigned int)__a, __b);
9663 static vector
unsigned int __ATTRS_o_ai vec_vsubuws(vector
unsigned int __a,
9664 vector
bool int __b) {
9665 return __builtin_altivec_vsubuws(__a, (vector
unsigned int)__b);
9668 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
9672 vec_vsubuqm(vector
signed __int128 __a, vector
signed __int128 __b) {
9677 vec_vsubuqm(vector
unsigned __int128 __a, vector
unsigned __int128 __b) {
9684 vec_vsubeuqm(vector
signed __int128 __a, vector
signed __int128 __b,
9685 vector
signed __int128 __c) {
9686 return __builtin_altivec_vsubeuqm(__a, __b, __c);
9690 vec_vsubeuqm(vector
unsigned __int128 __a, vector
unsigned __int128 __b,
9691 vector
unsigned __int128 __c) {
9692 return __builtin_altivec_vsubeuqm(__a, __b, __c);
9698 vec_vsubcuq(vector
signed __int128 __a, vector
signed __int128 __b) {
9699 return __builtin_altivec_vsubcuq(__a, __b);
9703 vec_vsubcuq(vector
unsigned __int128 __a, vector
unsigned __int128 __b) {
9704 return __builtin_altivec_vsubcuq(__a, __b);
9710 vec_vsubecuq(vector
signed __int128 __a, vector
signed __int128 __b,
9711 vector
signed __int128 __c) {
9712 return __builtin_altivec_vsubecuq(__a, __b, __c);
9716 vec_vsubecuq(vector
unsigned __int128 __a, vector
unsigned __int128 __b,
9717 vector
unsigned __int128 __c) {
9718 return __builtin_altivec_vsubecuq(__a, __b, __c);
9720 #endif // defined(__POWER8_VECTOR__) && defined(__powerpc64__)
9724 static vector
int __ATTRS_o_ai vec_sum4s(vector
signed char __a,
9726 return __builtin_altivec_vsum4sbs(__a, __b);
9729 static vector
unsigned int __ATTRS_o_ai vec_sum4s(vector
unsigned char __a,
9730 vector
unsigned int __b) {
9731 return __builtin_altivec_vsum4ubs(__a, __b);
9734 static vector
int __ATTRS_o_ai vec_sum4s(vector
signed short __a,
9736 return __builtin_altivec_vsum4shs(__a, __b);
9742 vec_vsum4sbs(vector
signed char __a, vector
int __b) {
9743 return __builtin_altivec_vsum4sbs(__a, __b);
9748 static vector
unsigned int __attribute__((__always_inline__))
9749 vec_vsum4ubs(vector
unsigned char __a, vector
unsigned int __b) {
9750 return __builtin_altivec_vsum4ubs(__a, __b);
9756 vec_vsum4shs(vector
signed short __a, vector
int __b) {
9757 return __builtin_altivec_vsum4shs(__a, __b);
9769 vec_sum2s(vector
int __a, vector
int __b) {
9770 #ifdef __LITTLE_ENDIAN__
9771 vector
int __c = (vector
signed int)vec_perm(
9772 __b, __b, (vector
unsigned char)(4, 5, 6, 7, 0, 1, 2, 3, 12, 13, 14, 15,
9774 __c = __builtin_altivec_vsum2sws(__a, __c);
9775 return (vector
signed int)vec_perm(
9776 __c, __c, (vector
unsigned char)(4, 5, 6, 7, 0, 1, 2, 3, 12, 13, 14, 15,
9779 return __builtin_altivec_vsum2sws(__a, __b);
9786 vec_vsum2sws(vector
int __a, vector
int __b) {
9787 #ifdef __LITTLE_ENDIAN__
9788 vector
int __c = (vector
signed int)vec_perm(
9789 __b, __b, (vector
unsigned char)(4, 5, 6, 7, 0, 1, 2, 3, 12, 13, 14, 15,
9791 __c = __builtin_altivec_vsum2sws(__a, __c);
9792 return (vector
signed int)vec_perm(
9793 __c, __c, (vector
unsigned char)(4, 5, 6, 7, 0, 1, 2, 3, 12, 13, 14, 15,
9796 return __builtin_altivec_vsum2sws(__a, __b);
9809 vec_sums(vector
signed int __a, vector
signed int __b) {
9810 #ifdef __LITTLE_ENDIAN__
9811 __b = (vector
signed int)vec_splat(__b, 3);
9812 __b = __builtin_altivec_vsumsws(__a, __b);
9813 return (vector
signed int)(0, 0, 0, __b[0]);
9815 return __builtin_altivec_vsumsws(__a, __b);
9822 vec_vsumsws(vector
signed int __a, vector
signed int __b) {
9823 #ifdef __LITTLE_ENDIAN__
9824 __b = (vector
signed int)vec_splat(__b, 3);
9825 __b = __builtin_altivec_vsumsws(__a, __b);
9826 return (vector
signed int)(0, 0, 0, __b[0]);
9828 return __builtin_altivec_vsumsws(__a, __b);
9835 vec_trunc(vector
float __a) {
9837 return __builtin_vsx_xvrspiz(__a);
9839 return __builtin_altivec_vrfiz(__a);
9844 static vector
double __ATTRS_o_ai vec_trunc(vector
double __a) {
9845 return __builtin_vsx_xvrdpiz(__a);
9852 vec_vrfiz(vector
float __a) {
9853 return __builtin_altivec_vrfiz(__a);
9861 static vector
short __ATTRS_o_ai vec_unpackh(vector
signed char __a) {
9862 #ifdef __LITTLE_ENDIAN__
9863 return __builtin_altivec_vupklsb((vector
char)__a);
9865 return __builtin_altivec_vupkhsb((vector
char)__a);
9869 static vector
bool short __ATTRS_o_ai vec_unpackh(vector
bool char __a) {
9870 #ifdef __LITTLE_ENDIAN__
9871 return (vector
bool short)__builtin_altivec_vupklsb((vector
char)__a);
9873 return (vector
bool short)__builtin_altivec_vupkhsb((vector
char)__a);
9877 static vector
int __ATTRS_o_ai vec_unpackh(vector
short __a) {
9878 #ifdef __LITTLE_ENDIAN__
9879 return __builtin_altivec_vupklsh(__a);
9881 return __builtin_altivec_vupkhsh(__a);
9885 static vector
bool int __ATTRS_o_ai vec_unpackh(vector
bool short __a) {
9886 #ifdef __LITTLE_ENDIAN__
9887 return (vector
bool int)__builtin_altivec_vupklsh((vector
short)__a);
9889 return (vector
bool int)__builtin_altivec_vupkhsh((vector
short)__a);
9893 static vector
unsigned int __ATTRS_o_ai vec_unpackh(vector pixel __a) {
9894 #ifdef __LITTLE_ENDIAN__
9895 return (vector
unsigned int)__builtin_altivec_vupklpx((vector
short)__a);
9897 return (vector
unsigned int)__builtin_altivec_vupkhpx((vector
short)__a);
9901 #ifdef __POWER8_VECTOR__
9902 static vector
long long __ATTRS_o_ai vec_unpackh(vector
int __a) {
9903 #ifdef __LITTLE_ENDIAN__
9904 return __builtin_altivec_vupklsw(__a);
9906 return __builtin_altivec_vupkhsw(__a);
9910 static vector
bool long long __ATTRS_o_ai vec_unpackh(vector
bool int __a) {
9911 #ifdef __LITTLE_ENDIAN__
9912 return (vector
bool long long)__builtin_altivec_vupklsw((vector
int)__a);
9914 return (vector
bool long long)__builtin_altivec_vupkhsw((vector
int)__a);
9921 static vector
short __ATTRS_o_ai vec_vupkhsb(vector
signed char __a) {
9922 #ifdef __LITTLE_ENDIAN__
9923 return __builtin_altivec_vupklsb((vector
char)__a);
9925 return __builtin_altivec_vupkhsb((vector
char)__a);
9929 static vector
bool short __ATTRS_o_ai vec_vupkhsb(vector
bool char __a) {
9930 #ifdef __LITTLE_ENDIAN__
9931 return (vector
bool short)__builtin_altivec_vupklsb((vector
char)__a);
9933 return (vector
bool short)__builtin_altivec_vupkhsb((vector
char)__a);
9939 static vector
int __ATTRS_o_ai vec_vupkhsh(vector
short __a) {
9940 #ifdef __LITTLE_ENDIAN__
9941 return __builtin_altivec_vupklsh(__a);
9943 return __builtin_altivec_vupkhsh(__a);
9947 static vector
bool int __ATTRS_o_ai vec_vupkhsh(vector
bool short __a) {
9948 #ifdef __LITTLE_ENDIAN__
9949 return (vector
bool int)__builtin_altivec_vupklsh((vector
short)__a);
9951 return (vector
bool int)__builtin_altivec_vupkhsh((vector
short)__a);
9955 static vector
unsigned int __ATTRS_o_ai vec_vupkhsh(vector pixel __a) {
9956 #ifdef __LITTLE_ENDIAN__
9957 return (vector
unsigned int)__builtin_altivec_vupklpx((vector
short)__a);
9959 return (vector
unsigned int)__builtin_altivec_vupkhpx((vector
short)__a);
9965 #ifdef __POWER8_VECTOR__
9966 static vector
long long __ATTRS_o_ai vec_vupkhsw(vector
int __a) {
9967 #ifdef __LITTLE_ENDIAN__
9968 return __builtin_altivec_vupklsw(__a);
9970 return __builtin_altivec_vupkhsw(__a);
9974 static vector
bool long long __ATTRS_o_ai vec_vupkhsw(vector
bool int __a) {
9975 #ifdef __LITTLE_ENDIAN__
9976 return (vector
bool long long)__builtin_altivec_vupklsw((vector
int)__a);
9978 return (vector
bool long long)__builtin_altivec_vupkhsw((vector
int)__a);
9985 static vector
short __ATTRS_o_ai vec_unpackl(vector
signed char __a) {
9986 #ifdef __LITTLE_ENDIAN__
9987 return __builtin_altivec_vupkhsb((vector
char)__a);
9989 return __builtin_altivec_vupklsb((vector
char)__a);
9993 static vector
bool short __ATTRS_o_ai vec_unpackl(vector
bool char __a) {
9994 #ifdef __LITTLE_ENDIAN__
9995 return (vector
bool short)__builtin_altivec_vupkhsb((vector
char)__a);
9997 return (vector
bool short)__builtin_altivec_vupklsb((vector
char)__a);
10001 static vector
int __ATTRS_o_ai vec_unpackl(vector
short __a) {
10002 #ifdef __LITTLE_ENDIAN__
10003 return __builtin_altivec_vupkhsh(__a);
10005 return __builtin_altivec_vupklsh(__a);
10009 static vector
bool int __ATTRS_o_ai vec_unpackl(vector
bool short __a) {
10010 #ifdef __LITTLE_ENDIAN__
10011 return (vector
bool int)__builtin_altivec_vupkhsh((vector
short)__a);
10013 return (vector
bool int)__builtin_altivec_vupklsh((vector
short)__a);
10017 static vector
unsigned int __ATTRS_o_ai vec_unpackl(vector pixel __a) {
10018 #ifdef __LITTLE_ENDIAN__
10019 return (vector
unsigned int)__builtin_altivec_vupkhpx((vector
short)__a);
10021 return (vector
unsigned int)__builtin_altivec_vupklpx((vector
short)__a);
10025 #ifdef __POWER8_VECTOR__
10026 static vector
long long __ATTRS_o_ai vec_unpackl(vector
int __a) {
10027 #ifdef __LITTLE_ENDIAN__
10028 return __builtin_altivec_vupkhsw(__a);
10030 return __builtin_altivec_vupklsw(__a);
10034 static vector
bool long long __ATTRS_o_ai vec_unpackl(vector
bool int __a) {
10035 #ifdef __LITTLE_ENDIAN__
10036 return (vector
bool long long)__builtin_altivec_vupkhsw((vector
int)__a);
10038 return (vector
bool long long)__builtin_altivec_vupklsw((vector
int)__a);
10045 static vector
short __ATTRS_o_ai vec_vupklsb(vector
signed char __a) {
10046 #ifdef __LITTLE_ENDIAN__
10047 return __builtin_altivec_vupkhsb((vector
char)__a);
10049 return __builtin_altivec_vupklsb((vector
char)__a);
10053 static vector
bool short __ATTRS_o_ai vec_vupklsb(vector
bool char __a) {
10054 #ifdef __LITTLE_ENDIAN__
10055 return (vector
bool short)__builtin_altivec_vupkhsb((vector
char)__a);
10057 return (vector
bool short)__builtin_altivec_vupklsb((vector
char)__a);
10063 static vector
int __ATTRS_o_ai vec_vupklsh(vector
short __a) {
10064 #ifdef __LITTLE_ENDIAN__
10065 return __builtin_altivec_vupkhsh(__a);
10067 return __builtin_altivec_vupklsh(__a);
10071 static vector
bool int __ATTRS_o_ai vec_vupklsh(vector
bool short __a) {
10072 #ifdef __LITTLE_ENDIAN__
10073 return (vector
bool int)__builtin_altivec_vupkhsh((vector
short)__a);
10075 return (vector
bool int)__builtin_altivec_vupklsh((vector
short)__a);
10079 static vector
unsigned int __ATTRS_o_ai vec_vupklsh(vector pixel __a) {
10080 #ifdef __LITTLE_ENDIAN__
10081 return (vector
unsigned int)__builtin_altivec_vupkhpx((vector
short)__a);
10083 return (vector
unsigned int)__builtin_altivec_vupklpx((vector
short)__a);
10089 #ifdef __POWER8_VECTOR__
10090 static vector
long long __ATTRS_o_ai vec_vupklsw(vector
int __a) {
10091 #ifdef __LITTLE_ENDIAN__
10092 return __builtin_altivec_vupkhsw(__a);
10094 return __builtin_altivec_vupklsw(__a);
10098 static vector
bool long long __ATTRS_o_ai vec_vupklsw(vector
bool int __a) {
10099 #ifdef __LITTLE_ENDIAN__
10100 return (vector
bool long long)__builtin_altivec_vupkhsw((vector
int)__a);
10102 return (vector
bool long long)__builtin_altivec_vupklsw((vector
int)__a);
10111 static vector
signed int __ATTRS_o_ai vec_vsx_ld(
int __a,
10112 const vector
signed int *__b) {
10113 return (vector
signed int)__builtin_vsx_lxvw4x(__a, __b);
10117 vec_vsx_ld(
int __a,
const vector
unsigned int *__b) {
10118 return (vector
unsigned int)__builtin_vsx_lxvw4x(__a, __b);
10121 static vector
float __ATTRS_o_ai vec_vsx_ld(
int __a,
const vector
float *__b) {
10122 return (vector
float)__builtin_vsx_lxvw4x(__a, __b);
10126 vec_vsx_ld(
int __a,
const vector
signed long long *__b) {
10127 return (vector
signed long long)__builtin_vsx_lxvd2x(__a, __b);
10131 vec_vsx_ld(
int __a,
const vector
unsigned long long *__b) {
10132 return (vector
unsigned long long)__builtin_vsx_lxvd2x(__a, __b);
10136 const vector
double *__b) {
10137 return (vector
double)__builtin_vsx_lxvd2x(__a, __b);
10146 static void __ATTRS_o_ai vec_vsx_st(vector
signed int __a,
int __b,
10147 vector
signed int *__c) {
10148 __builtin_vsx_stxvw4x((vector
int)__a, __b, __c);
10151 static void __ATTRS_o_ai vec_vsx_st(vector
unsigned int __a,
int __b,
10152 vector
unsigned int *__c) {
10153 __builtin_vsx_stxvw4x((vector
int)__a, __b, __c);
10156 static void __ATTRS_o_ai vec_vsx_st(vector
float __a,
int __b,
10157 vector
float *__c) {
10158 __builtin_vsx_stxvw4x((vector
int)__a, __b, __c);
10161 static void __ATTRS_o_ai vec_vsx_st(vector
signed long long __a,
int __b,
10162 vector
signed long long *__c) {
10163 __builtin_vsx_stxvd2x((vector
double)__a, __b, __c);
10166 static void __ATTRS_o_ai vec_vsx_st(vector
unsigned long long __a,
int __b,
10167 vector
unsigned long long *__c) {
10168 __builtin_vsx_stxvd2x((vector
double)__a, __b, __c);
10171 static void __ATTRS_o_ai vec_vsx_st(vector
double __a,
int __b,
10172 vector
double *__c) {
10173 __builtin_vsx_stxvd2x((vector
double)__a, __b, __c);
10180 #define __builtin_altivec_vxor vec_xor
10182 static vector
signed char __ATTRS_o_ai vec_xor(vector
signed char __a,
10183 vector
signed char __b) {
10187 static vector
signed char __ATTRS_o_ai vec_xor(vector
bool char __a,
10188 vector
signed char __b) {
10189 return (vector
signed char)__a ^
__b;
10192 static vector
signed char __ATTRS_o_ai vec_xor(vector
signed char __a,
10193 vector
bool char __b) {
10194 return __a ^ (vector
signed char)__b;
10197 static vector
unsigned char __ATTRS_o_ai vec_xor(vector
unsigned char __a,
10198 vector
unsigned char __b) {
10202 static vector
unsigned char __ATTRS_o_ai vec_xor(vector
bool char __a,
10203 vector
unsigned char __b) {
10204 return (vector
unsigned char)__a ^
__b;
10207 static vector
unsigned char __ATTRS_o_ai vec_xor(vector
unsigned char __a,
10208 vector
bool char __b) {
10209 return __a ^ (vector
unsigned char)__b;
10212 static vector
bool char __ATTRS_o_ai vec_xor(vector
bool char __a,
10213 vector
bool char __b) {
10217 static vector
short __ATTRS_o_ai vec_xor(vector
short __a, vector
short __b) {
10221 static vector
short __ATTRS_o_ai vec_xor(vector
bool short __a,
10222 vector
short __b) {
10223 return (vector
short)__a ^
__b;
10226 static vector
short __ATTRS_o_ai vec_xor(vector
short __a,
10227 vector
bool short __b) {
10228 return __a ^ (vector short)__b;
10231 static vector
unsigned short __ATTRS_o_ai vec_xor(vector
unsigned short __a,
10232 vector
unsigned short __b) {
10236 static vector
unsigned short __ATTRS_o_ai vec_xor(vector
bool short __a,
10237 vector
unsigned short __b) {
10238 return (vector
unsigned short)__a ^
__b;
10241 static vector
unsigned short __ATTRS_o_ai vec_xor(vector
unsigned short __a,
10242 vector
bool short __b) {
10243 return __a ^ (vector
unsigned short)__b;
10246 static vector
bool short __ATTRS_o_ai vec_xor(vector
bool short __a,
10247 vector
bool short __b) {
10251 static vector
int __ATTRS_o_ai vec_xor(vector
int __a, vector
int __b) {
10255 static vector
int __ATTRS_o_ai vec_xor(vector
bool int __a, vector
int __b) {
10256 return (vector
int)__a ^
__b;
10259 static vector
int __ATTRS_o_ai vec_xor(vector
int __a, vector
bool int __b) {
10260 return __a ^ (vector int)__b;
10263 static vector
unsigned int __ATTRS_o_ai vec_xor(vector
unsigned int __a,
10264 vector
unsigned int __b) {
10268 static vector
unsigned int __ATTRS_o_ai vec_xor(vector
bool int __a,
10269 vector
unsigned int __b) {
10270 return (vector
unsigned int)__a ^
__b;
10273 static vector
unsigned int __ATTRS_o_ai vec_xor(vector
unsigned int __a,
10274 vector
bool int __b) {
10275 return __a ^ (vector
unsigned int)__b;
10278 static vector
bool int __ATTRS_o_ai vec_xor(vector
bool int __a,
10279 vector
bool int __b) {
10283 static vector
float __ATTRS_o_ai vec_xor(vector
float __a, vector
float __b) {
10284 vector
unsigned int __res =
10285 (vector
unsigned int)__a ^ (vector
unsigned int)
__b;
10286 return (vector
float)__res;
10289 static vector
float __ATTRS_o_ai vec_xor(vector
bool int __a,
10290 vector
float __b) {
10291 vector
unsigned int __res =
10292 (vector
unsigned int)__a ^ (vector
unsigned int)
__b;
10293 return (vector
float)__res;
10296 static vector
float __ATTRS_o_ai vec_xor(vector
float __a,
10297 vector
bool int __b) {
10298 vector
unsigned int __res =
10299 (vector
unsigned int)__a ^ (vector
unsigned int)
__b;
10300 return (vector
float)__res;
10305 vec_xor(vector
signed long long __a, vector
signed long long __b) {
10310 vec_xor(vector
bool long long __a, vector
signed long long __b) {
10311 return (vector
signed long long)__a ^
__b;
10314 static vector
signed long long __ATTRS_o_ai vec_xor(vector
signed long long __a,
10315 vector
bool long long __b) {
10316 return __a ^ (vector
signed long long)__b;
10320 vec_xor(vector
unsigned long long __a, vector
unsigned long long __b) {
10325 vec_xor(vector
bool long long __a, vector
unsigned long long __b) {
10326 return (vector
unsigned long long)__a ^
__b;
10330 vec_xor(vector
unsigned long long __a, vector
bool long long __b) {
10331 return __a ^ (vector
unsigned long long)__b;
10334 static vector
bool long long __ATTRS_o_ai vec_xor(vector
bool long long __a,
10335 vector
bool long long __b) {
10340 vec_xor(vector
double __a, vector
double __b) {
10341 return (vector
double)((vector
unsigned long long)__a ^
10342 (vector
unsigned long long)
__b);
10346 vec_xor(vector
double __a, vector
bool long long __b) {
10347 return (vector
double)((vector
unsigned long long)__a ^
10348 (vector
unsigned long long)
__b);
10352 vec_xor(vector
bool long long __a, vector
double __b) {
10353 return (vector
double)((vector
unsigned long long)__a ^
10354 (vector
unsigned long long)
__b);
10360 static vector
signed char __ATTRS_o_ai vec_vxor(vector
signed char __a,
10361 vector
signed char __b) {
10365 static vector
signed char __ATTRS_o_ai vec_vxor(vector
bool char __a,
10366 vector
signed char __b) {
10367 return (vector
signed char)__a ^
__b;
10370 static vector
signed char __ATTRS_o_ai vec_vxor(vector
signed char __a,
10371 vector
bool char __b) {
10372 return __a ^ (vector
signed char)__b;
10375 static vector
unsigned char __ATTRS_o_ai vec_vxor(vector
unsigned char __a,
10376 vector
unsigned char __b) {
10380 static vector
unsigned char __ATTRS_o_ai vec_vxor(vector
bool char __a,
10381 vector
unsigned char __b) {
10382 return (vector
unsigned char)__a ^
__b;
10385 static vector
unsigned char __ATTRS_o_ai vec_vxor(vector
unsigned char __a,
10386 vector
bool char __b) {
10387 return __a ^ (vector
unsigned char)__b;
10390 static vector
bool char __ATTRS_o_ai vec_vxor(vector
bool char __a,
10391 vector
bool char __b) {
10395 static vector
short __ATTRS_o_ai vec_vxor(vector
short __a, vector
short __b) {
10399 static vector
short __ATTRS_o_ai vec_vxor(vector
bool short __a,
10400 vector
short __b) {
10401 return (vector
short)__a ^
__b;
10404 static vector
short __ATTRS_o_ai vec_vxor(vector
short __a,
10405 vector
bool short __b) {
10406 return __a ^ (vector short)__b;
10409 static vector
unsigned short __ATTRS_o_ai vec_vxor(vector
unsigned short __a,
10410 vector
unsigned short __b) {
10414 static vector
unsigned short __ATTRS_o_ai vec_vxor(vector
bool short __a,
10415 vector
unsigned short __b) {
10416 return (vector
unsigned short)__a ^
__b;
10419 static vector
unsigned short __ATTRS_o_ai vec_vxor(vector
unsigned short __a,
10420 vector
bool short __b) {
10421 return __a ^ (vector
unsigned short)__b;
10424 static vector
bool short __ATTRS_o_ai vec_vxor(vector
bool short __a,
10425 vector
bool short __b) {
10429 static vector
int __ATTRS_o_ai vec_vxor(vector
int __a, vector
int __b) {
10433 static vector
int __ATTRS_o_ai vec_vxor(vector
bool int __a, vector
int __b) {
10434 return (vector
int)__a ^
__b;
10437 static vector
int __ATTRS_o_ai vec_vxor(vector
int __a, vector
bool int __b) {
10438 return __a ^ (vector int)__b;
10441 static vector
unsigned int __ATTRS_o_ai vec_vxor(vector
unsigned int __a,
10442 vector
unsigned int __b) {
10446 static vector
unsigned int __ATTRS_o_ai vec_vxor(vector
bool int __a,
10447 vector
unsigned int __b) {
10448 return (vector
unsigned int)__a ^
__b;
10451 static vector
unsigned int __ATTRS_o_ai vec_vxor(vector
unsigned int __a,
10452 vector
bool int __b) {
10453 return __a ^ (vector
unsigned int)__b;
10456 static vector
bool int __ATTRS_o_ai vec_vxor(vector
bool int __a,
10457 vector
bool int __b) {
10461 static vector
float __ATTRS_o_ai vec_vxor(vector
float __a, vector
float __b) {
10462 vector
unsigned int __res =
10463 (vector
unsigned int)__a ^ (vector
unsigned int)
__b;
10464 return (vector
float)__res;
10467 static vector
float __ATTRS_o_ai vec_vxor(vector
bool int __a,
10468 vector
float __b) {
10469 vector
unsigned int __res =
10470 (vector
unsigned int)__a ^ (vector
unsigned int)
__b;
10471 return (vector
float)__res;
10474 static vector
float __ATTRS_o_ai vec_vxor(vector
float __a,
10475 vector
bool int __b) {
10476 vector
unsigned int __res =
10477 (vector
unsigned int)__a ^ (vector
unsigned int)
__b;
10478 return (vector
float)__res;
10483 vec_vxor(vector
signed long long __a, vector
signed long long __b) {
10488 vec_vxor(vector
bool long long __a, vector
signed long long __b) {
10489 return (vector
signed long long)__a ^
__b;
10493 vec_vxor(vector
signed long long __a, vector
bool long long __b) {
10494 return __a ^ (vector
signed long long)__b;
10498 vec_vxor(vector
unsigned long long __a, vector
unsigned long long __b) {
10503 vec_vxor(vector
bool long long __a, vector
unsigned long long __b) {
10504 return (vector
unsigned long long)__a ^
__b;
10508 vec_vxor(vector
unsigned long long __a, vector
bool long long __b) {
10509 return __a ^ (vector
unsigned long long)__b;
10512 static vector
bool long long __ATTRS_o_ai vec_vxor(vector
bool long long __a,
10513 vector
bool long long __b) {
10522 static signed char __ATTRS_o_ai vec_extract(vector
signed char __a,
int __b) {
10526 static unsigned char __ATTRS_o_ai vec_extract(vector
unsigned char __a,
10531 static unsigned char __ATTRS_o_ai vec_extract(vector
bool char __a,
10536 static signed short __ATTRS_o_ai vec_extract(vector
signed short __a,
int __b) {
10540 static unsigned short __ATTRS_o_ai vec_extract(vector
unsigned short __a,
10545 static unsigned short __ATTRS_o_ai vec_extract(vector
bool short __a,
10550 static signed int __ATTRS_o_ai vec_extract(vector
signed int __a,
int __b) {
10554 static unsigned int __ATTRS_o_ai vec_extract(vector
unsigned int __a,
int __b) {
10558 static unsigned int __ATTRS_o_ai vec_extract(vector
bool int __a,
int __b) {
10563 static signed long long __ATTRS_o_ai vec_extract(vector
signed long long __a,
10569 vec_extract(vector
unsigned long long __a,
int __b) {
10573 static unsigned long long __ATTRS_o_ai vec_extract(vector
bool long long __a,
10578 static double __ATTRS_o_ai vec_extract(vector
double __a,
int __b) {
10583 static float __ATTRS_o_ai vec_extract(vector
float __a,
int __b) {
10589 static vector
signed char __ATTRS_o_ai vec_insert(
signed char __a,
10590 vector
signed char __b,
10596 static vector
unsigned char __ATTRS_o_ai vec_insert(
unsigned char __a,
10597 vector
unsigned char __b,
10603 static vector
bool char __ATTRS_o_ai vec_insert(
unsigned char __a,
10604 vector
bool char __b,
10610 static vector
signed short __ATTRS_o_ai vec_insert(
signed short __a,
10611 vector
signed short __b,
10617 static vector
unsigned short __ATTRS_o_ai vec_insert(
unsigned short __a,
10618 vector
unsigned short __b,
10624 static vector
bool short __ATTRS_o_ai vec_insert(
unsigned short __a,
10625 vector
bool short __b,
10631 static vector
signed int __ATTRS_o_ai vec_insert(
signed int __a,
10632 vector
signed int __b,
10638 static vector
unsigned int __ATTRS_o_ai vec_insert(
unsigned int __a,
10639 vector
unsigned int __b,
10645 static vector
bool int __ATTRS_o_ai vec_insert(
unsigned int __a,
10646 vector
bool int __b,
10654 vec_insert(
signed long long __a, vector
signed long long __b,
int __c) {
10660 vec_insert(
unsigned long long __a, vector
unsigned long long __b,
int __c) {
10666 vec_insert(
unsigned long long __a, vector
bool long long __b,
int __c) {
10670 static vector
double __ATTRS_o_ai vec_insert(
double __a, vector
double __b,
10677 static vector
float __ATTRS_o_ai vec_insert(
float __a, vector
float __b,
10685 static vector
signed char __ATTRS_o_ai vec_lvlx(
int __a,
10686 const signed char *__b) {
10687 return vec_perm(vec_ld(__a, __b), (vector
signed char)(0),
10688 vec_lvsl(__a, __b));
10691 static vector
signed char __ATTRS_o_ai vec_lvlx(
int __a,
10692 const vector
signed char *__b) {
10693 return vec_perm(vec_ld(__a, __b), (vector
signed char)(0),
10694 vec_lvsl(__a, (
unsigned char *)__b));
10697 static vector
unsigned char __ATTRS_o_ai vec_lvlx(
int __a,
10698 const unsigned char *__b) {
10699 return vec_perm(vec_ld(__a, __b), (vector
unsigned char)(0),
10700 vec_lvsl(__a, __b));
10704 vec_lvlx(
int __a,
const vector
unsigned char *__b) {
10705 return vec_perm(vec_ld(__a, __b), (vector
unsigned char)(0),
10706 vec_lvsl(__a, (
unsigned char *)__b));
10709 static vector
bool char __ATTRS_o_ai vec_lvlx(
int __a,
10710 const vector
bool char *__b) {
10711 return vec_perm(vec_ld(__a, __b), (vector
bool char)(0),
10712 vec_lvsl(__a, (
unsigned char *)__b));
10715 static vector
short __ATTRS_o_ai vec_lvlx(
int __a,
const short *__b) {
10716 return vec_perm(vec_ld(__a, __b), (vector
short)(0), vec_lvsl(__a, __b));
10719 static vector
short __ATTRS_o_ai vec_lvlx(
int __a,
const vector
short *__b) {
10720 return vec_perm(vec_ld(__a, __b), (vector
short)(0),
10721 vec_lvsl(__a, (
unsigned char *)__b));
10724 static vector
unsigned short __ATTRS_o_ai vec_lvlx(
int __a,
10725 const unsigned short *__b) {
10726 return vec_perm(vec_ld(__a, __b), (vector
unsigned short)(0),
10727 vec_lvsl(__a, __b));
10731 vec_lvlx(
int __a,
const vector
unsigned short *__b) {
10732 return vec_perm(vec_ld(__a, __b), (vector
unsigned short)(0),
10733 vec_lvsl(__a, (
unsigned char *)__b));
10736 static vector
bool short __ATTRS_o_ai vec_lvlx(
int __a,
10737 const vector
bool short *__b) {
10738 return vec_perm(vec_ld(__a, __b), (vector
bool short)(0),
10739 vec_lvsl(__a, (
unsigned char *)__b));
10742 static vector pixel
__ATTRS_o_ai vec_lvlx(
int __a,
const vector pixel *__b) {
10743 return vec_perm(vec_ld(__a, __b), (vector pixel)(0),
10744 vec_lvsl(__a, (
unsigned char *)__b));
10747 static vector
int __ATTRS_o_ai vec_lvlx(
int __a,
const int *__b) {
10748 return vec_perm(vec_ld(__a, __b), (vector
int)(0), vec_lvsl(__a, __b));
10751 static vector
int __ATTRS_o_ai vec_lvlx(
int __a,
const vector
int *__b) {
10752 return vec_perm(vec_ld(__a, __b), (vector
int)(0),
10753 vec_lvsl(__a, (
unsigned char *)__b));
10756 static vector
unsigned int __ATTRS_o_ai vec_lvlx(
int __a,
10757 const unsigned int *__b) {
10758 return vec_perm(vec_ld(__a, __b), (vector
unsigned int)(0),
10759 vec_lvsl(__a, __b));
10763 vec_lvlx(
int __a,
const vector
unsigned int *__b) {
10764 return vec_perm(vec_ld(__a, __b), (vector
unsigned int)(0),
10765 vec_lvsl(__a, (
unsigned char *)__b));
10769 const vector
bool int *__b) {
10770 return vec_perm(vec_ld(__a, __b), (vector
bool int)(0),
10771 vec_lvsl(__a, (
unsigned char *)__b));
10774 static vector
float __ATTRS_o_ai vec_lvlx(
int __a,
const float *__b) {
10775 return vec_perm(vec_ld(__a, __b), (vector
float)(0), vec_lvsl(__a, __b));
10778 static vector
float __ATTRS_o_ai vec_lvlx(
int __a,
const vector
float *__b) {
10779 return vec_perm(vec_ld(__a, __b), (vector
float)(0),
10780 vec_lvsl(__a, (
unsigned char *)__b));
10785 static vector
signed char __ATTRS_o_ai vec_lvlxl(
int __a,
10786 const signed char *__b) {
10787 return vec_perm(vec_ldl(__a, __b), (vector
signed char)(0),
10788 vec_lvsl(__a, __b));
10792 vec_lvlxl(
int __a,
const vector
signed char *__b) {
10793 return vec_perm(vec_ldl(__a, __b), (vector
signed char)(0),
10794 vec_lvsl(__a, (
unsigned char *)__b));
10797 static vector
unsigned char __ATTRS_o_ai vec_lvlxl(
int __a,
10798 const unsigned char *__b) {
10799 return vec_perm(vec_ldl(__a, __b), (vector
unsigned char)(0),
10800 vec_lvsl(__a, __b));
10804 vec_lvlxl(
int __a,
const vector
unsigned char *__b) {
10805 return vec_perm(vec_ldl(__a, __b), (vector
unsigned char)(0),
10806 vec_lvsl(__a, (
unsigned char *)__b));
10809 static vector
bool char __ATTRS_o_ai vec_lvlxl(
int __a,
10810 const vector
bool char *__b) {
10811 return vec_perm(vec_ldl(__a, __b), (vector
bool char)(0),
10812 vec_lvsl(__a, (
unsigned char *)__b));
10815 static vector
short __ATTRS_o_ai vec_lvlxl(
int __a,
const short *__b) {
10816 return vec_perm(vec_ldl(__a, __b), (vector
short)(0), vec_lvsl(__a, __b));
10819 static vector
short __ATTRS_o_ai vec_lvlxl(
int __a,
const vector
short *__b) {
10820 return vec_perm(vec_ldl(__a, __b), (vector
short)(0),
10821 vec_lvsl(__a, (
unsigned char *)__b));
10824 static vector
unsigned short __ATTRS_o_ai vec_lvlxl(
int __a,
10825 const unsigned short *__b) {
10826 return vec_perm(vec_ldl(__a, __b), (vector
unsigned short)(0),
10827 vec_lvsl(__a, __b));
10831 vec_lvlxl(
int __a,
const vector
unsigned short *__b) {
10832 return vec_perm(vec_ldl(__a, __b), (vector
unsigned short)(0),
10833 vec_lvsl(__a, (
unsigned char *)__b));
10836 static vector
bool short __ATTRS_o_ai vec_lvlxl(
int __a,
10837 const vector
bool short *__b) {
10838 return vec_perm(vec_ldl(__a, __b), (vector
bool short)(0),
10839 vec_lvsl(__a, (
unsigned char *)__b));
10842 static vector pixel
__ATTRS_o_ai vec_lvlxl(
int __a,
const vector pixel *__b) {
10843 return vec_perm(vec_ldl(__a, __b), (vector pixel)(0),
10844 vec_lvsl(__a, (
unsigned char *)__b));
10847 static vector
int __ATTRS_o_ai vec_lvlxl(
int __a,
const int *__b) {
10848 return vec_perm(vec_ldl(__a, __b), (vector
int)(0), vec_lvsl(__a, __b));
10851 static vector
int __ATTRS_o_ai vec_lvlxl(
int __a,
const vector
int *__b) {
10852 return vec_perm(vec_ldl(__a, __b), (vector
int)(0),
10853 vec_lvsl(__a, (
unsigned char *)__b));
10856 static vector
unsigned int __ATTRS_o_ai vec_lvlxl(
int __a,
10857 const unsigned int *__b) {
10858 return vec_perm(vec_ldl(__a, __b), (vector
unsigned int)(0),
10859 vec_lvsl(__a, __b));
10863 vec_lvlxl(
int __a,
const vector
unsigned int *__b) {
10864 return vec_perm(vec_ldl(__a, __b), (vector
unsigned int)(0),
10865 vec_lvsl(__a, (
unsigned char *)__b));
10868 static vector
bool int __ATTRS_o_ai vec_lvlxl(
int __a,
10869 const vector
bool int *__b) {
10870 return vec_perm(vec_ldl(__a, __b), (vector
bool int)(0),
10871 vec_lvsl(__a, (
unsigned char *)__b));
10874 static vector
float __ATTRS_o_ai vec_lvlxl(
int __a,
const float *__b) {
10875 return vec_perm(vec_ldl(__a, __b), (vector
float)(0), vec_lvsl(__a, __b));
10878 static vector
float __ATTRS_o_ai vec_lvlxl(
int __a, vector
float *__b) {
10879 return vec_perm(vec_ldl(__a, __b), (vector
float)(0),
10880 vec_lvsl(__a, (
unsigned char *)__b));
10885 static vector
signed char __ATTRS_o_ai vec_lvrx(
int __a,
10886 const signed char *__b) {
10887 return vec_perm((vector
signed char)(0), vec_ld(__a, __b),
10888 vec_lvsl(__a, __b));
10891 static vector
signed char __ATTRS_o_ai vec_lvrx(
int __a,
10892 const vector
signed char *__b) {
10893 return vec_perm((vector
signed char)(0), vec_ld(__a, __b),
10894 vec_lvsl(__a, (
unsigned char *)__b));
10897 static vector
unsigned char __ATTRS_o_ai vec_lvrx(
int __a,
10898 const unsigned char *__b) {
10899 return vec_perm((vector
unsigned char)(0), vec_ld(__a, __b),
10900 vec_lvsl(__a, __b));
10904 vec_lvrx(
int __a,
const vector
unsigned char *__b) {
10905 return vec_perm((vector
unsigned char)(0), vec_ld(__a, __b),
10906 vec_lvsl(__a, (
unsigned char *)__b));
10909 static vector
bool char __ATTRS_o_ai vec_lvrx(
int __a,
10910 const vector
bool char *__b) {
10911 return vec_perm((vector
bool char)(0), vec_ld(__a, __b),
10912 vec_lvsl(__a, (
unsigned char *)__b));
10915 static vector
short __ATTRS_o_ai vec_lvrx(
int __a,
const short *__b) {
10916 return vec_perm((vector
short)(0), vec_ld(__a, __b), vec_lvsl(__a, __b));
10919 static vector
short __ATTRS_o_ai vec_lvrx(
int __a,
const vector
short *__b) {
10920 return vec_perm((vector
short)(0), vec_ld(__a, __b),
10921 vec_lvsl(__a, (
unsigned char *)__b));
10924 static vector
unsigned short __ATTRS_o_ai vec_lvrx(
int __a,
10925 const unsigned short *__b) {
10926 return vec_perm((vector
unsigned short)(0), vec_ld(__a, __b),
10927 vec_lvsl(__a, __b));
10931 vec_lvrx(
int __a,
const vector
unsigned short *__b) {
10932 return vec_perm((vector
unsigned short)(0), vec_ld(__a, __b),
10933 vec_lvsl(__a, (
unsigned char *)__b));
10936 static vector
bool short __ATTRS_o_ai vec_lvrx(
int __a,
10937 const vector
bool short *__b) {
10938 return vec_perm((vector
bool short)(0), vec_ld(__a, __b),
10939 vec_lvsl(__a, (
unsigned char *)__b));
10942 static vector pixel
__ATTRS_o_ai vec_lvrx(
int __a,
const vector pixel *__b) {
10943 return vec_perm((vector pixel)(0), vec_ld(__a, __b),
10944 vec_lvsl(__a, (
unsigned char *)__b));
10947 static vector
int __ATTRS_o_ai vec_lvrx(
int __a,
const int *__b) {
10948 return vec_perm((vector
int)(0), vec_ld(__a, __b), vec_lvsl(__a, __b));
10951 static vector
int __ATTRS_o_ai vec_lvrx(
int __a,
const vector
int *__b) {
10952 return vec_perm((vector
int)(0), vec_ld(__a, __b),
10953 vec_lvsl(__a, (
unsigned char *)__b));
10956 static vector
unsigned int __ATTRS_o_ai vec_lvrx(
int __a,
10957 const unsigned int *__b) {
10958 return vec_perm((vector
unsigned int)(0), vec_ld(__a, __b),
10959 vec_lvsl(__a, __b));
10963 vec_lvrx(
int __a,
const vector
unsigned int *__b) {
10964 return vec_perm((vector
unsigned int)(0), vec_ld(__a, __b),
10965 vec_lvsl(__a, (
unsigned char *)__b));
10969 const vector
bool int *__b) {
10970 return vec_perm((vector
bool int)(0), vec_ld(__a, __b),
10971 vec_lvsl(__a, (
unsigned char *)__b));
10974 static vector
float __ATTRS_o_ai vec_lvrx(
int __a,
const float *__b) {
10975 return vec_perm((vector
float)(0), vec_ld(__a, __b), vec_lvsl(__a, __b));
10978 static vector
float __ATTRS_o_ai vec_lvrx(
int __a,
const vector
float *__b) {
10979 return vec_perm((vector
float)(0), vec_ld(__a, __b),
10980 vec_lvsl(__a, (
unsigned char *)__b));
10985 static vector
signed char __ATTRS_o_ai vec_lvrxl(
int __a,
10986 const signed char *__b) {
10987 return vec_perm((vector
signed char)(0), vec_ldl(__a, __b),
10988 vec_lvsl(__a, __b));
10992 vec_lvrxl(
int __a,
const vector
signed char *__b) {
10993 return vec_perm((vector
signed char)(0), vec_ldl(__a, __b),
10994 vec_lvsl(__a, (
unsigned char *)__b));
10997 static vector
unsigned char __ATTRS_o_ai vec_lvrxl(
int __a,
10998 const unsigned char *__b) {
10999 return vec_perm((vector
unsigned char)(0), vec_ldl(__a, __b),
11000 vec_lvsl(__a, __b));
11004 vec_lvrxl(
int __a,
const vector
unsigned char *__b) {
11005 return vec_perm((vector
unsigned char)(0), vec_ldl(__a, __b),
11006 vec_lvsl(__a, (
unsigned char *)__b));
11009 static vector
bool char __ATTRS_o_ai vec_lvrxl(
int __a,
11010 const vector
bool char *__b) {
11011 return vec_perm((vector
bool char)(0), vec_ldl(__a, __b),
11012 vec_lvsl(__a, (
unsigned char *)__b));
11015 static vector
short __ATTRS_o_ai vec_lvrxl(
int __a,
const short *__b) {
11016 return vec_perm((vector
short)(0), vec_ldl(__a, __b), vec_lvsl(__a, __b));
11019 static vector
short __ATTRS_o_ai vec_lvrxl(
int __a,
const vector
short *__b) {
11020 return vec_perm((vector
short)(0), vec_ldl(__a, __b),
11021 vec_lvsl(__a, (
unsigned char *)__b));
11024 static vector
unsigned short __ATTRS_o_ai vec_lvrxl(
int __a,
11025 const unsigned short *__b) {
11026 return vec_perm((vector
unsigned short)(0), vec_ldl(__a, __b),
11027 vec_lvsl(__a, __b));
11031 vec_lvrxl(
int __a,
const vector
unsigned short *__b) {
11032 return vec_perm((vector
unsigned short)(0), vec_ldl(__a, __b),
11033 vec_lvsl(__a, (
unsigned char *)__b));
11036 static vector
bool short __ATTRS_o_ai vec_lvrxl(
int __a,
11037 const vector
bool short *__b) {
11038 return vec_perm((vector
bool short)(0), vec_ldl(__a, __b),
11039 vec_lvsl(__a, (
unsigned char *)__b));
11042 static vector pixel
__ATTRS_o_ai vec_lvrxl(
int __a,
const vector pixel *__b) {
11043 return vec_perm((vector pixel)(0), vec_ldl(__a, __b),
11044 vec_lvsl(__a, (
unsigned char *)__b));
11047 static vector
int __ATTRS_o_ai vec_lvrxl(
int __a,
const int *__b) {
11048 return vec_perm((vector
int)(0), vec_ldl(__a, __b), vec_lvsl(__a, __b));
11051 static vector
int __ATTRS_o_ai vec_lvrxl(
int __a,
const vector
int *__b) {
11052 return vec_perm((vector
int)(0), vec_ldl(__a, __b),
11053 vec_lvsl(__a, (
unsigned char *)__b));
11056 static vector
unsigned int __ATTRS_o_ai vec_lvrxl(
int __a,
11057 const unsigned int *__b) {
11058 return vec_perm((vector
unsigned int)(0), vec_ldl(__a, __b),
11059 vec_lvsl(__a, __b));
11063 vec_lvrxl(
int __a,
const vector
unsigned int *__b) {
11064 return vec_perm((vector
unsigned int)(0), vec_ldl(__a, __b),
11065 vec_lvsl(__a, (
unsigned char *)__b));
11068 static vector
bool int __ATTRS_o_ai vec_lvrxl(
int __a,
11069 const vector
bool int *__b) {
11070 return vec_perm((vector
bool int)(0), vec_ldl(__a, __b),
11071 vec_lvsl(__a, (
unsigned char *)__b));
11074 static vector
float __ATTRS_o_ai vec_lvrxl(
int __a,
const float *__b) {
11075 return vec_perm((vector
float)(0), vec_ldl(__a, __b), vec_lvsl(__a, __b));
11078 static vector
float __ATTRS_o_ai vec_lvrxl(
int __a,
const vector
float *__b) {
11079 return vec_perm((vector
float)(0), vec_ldl(__a, __b),
11080 vec_lvsl(__a, (
unsigned char *)__b));
11085 static void __ATTRS_o_ai vec_stvlx(vector
signed char __a,
int __b,
11086 signed char *__c) {
11087 return vec_st(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11091 static void __ATTRS_o_ai vec_stvlx(vector
signed char __a,
int __b,
11092 vector
signed char *__c) {
11094 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11098 static void __ATTRS_o_ai vec_stvlx(vector
unsigned char __a,
int __b,
11099 unsigned char *__c) {
11100 return vec_st(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11104 static void __ATTRS_o_ai vec_stvlx(vector
unsigned char __a,
int __b,
11105 vector
unsigned char *__c) {
11107 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11111 static void __ATTRS_o_ai vec_stvlx(vector
bool char __a,
int __b,
11112 vector
bool char *__c) {
11114 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11118 static void __ATTRS_o_ai vec_stvlx(vector
short __a,
int __b,
short *__c) {
11119 return vec_st(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11123 static void __ATTRS_o_ai vec_stvlx(vector
short __a,
int __b,
11124 vector
short *__c) {
11126 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11130 static void __ATTRS_o_ai vec_stvlx(vector
unsigned short __a,
int __b,
11131 unsigned short *__c) {
11132 return vec_st(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11136 static void __ATTRS_o_ai vec_stvlx(vector
unsigned short __a,
int __b,
11137 vector
unsigned short *__c) {
11139 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11143 static void __ATTRS_o_ai vec_stvlx(vector
bool short __a,
int __b,
11144 vector
bool short *__c) {
11146 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11150 static void __ATTRS_o_ai vec_stvlx(vector pixel __a,
int __b,
11151 vector pixel *__c) {
11153 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11157 static void __ATTRS_o_ai vec_stvlx(vector
int __a,
int __b,
int *__c) {
11158 return vec_st(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11162 static void __ATTRS_o_ai vec_stvlx(vector
int __a,
int __b, vector
int *__c) {
11164 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11168 static void __ATTRS_o_ai vec_stvlx(vector
unsigned int __a,
int __b,
11169 unsigned int *__c) {
11170 return vec_st(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11174 static void __ATTRS_o_ai vec_stvlx(vector
unsigned int __a,
int __b,
11175 vector
unsigned int *__c) {
11177 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11181 static void __ATTRS_o_ai vec_stvlx(vector
bool int __a,
int __b,
11182 vector
bool int *__c) {
11184 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11188 static void __ATTRS_o_ai vec_stvlx(vector
float __a,
int __b,
11189 vector
float *__c) {
11191 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11197 static void __ATTRS_o_ai vec_stvlxl(vector
signed char __a,
int __b,
11198 signed char *__c) {
11199 return vec_stl(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11203 static void __ATTRS_o_ai vec_stvlxl(vector
signed char __a,
int __b,
11204 vector
signed char *__c) {
11206 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11210 static void __ATTRS_o_ai vec_stvlxl(vector
unsigned char __a,
int __b,
11211 unsigned char *__c) {
11212 return vec_stl(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11216 static void __ATTRS_o_ai vec_stvlxl(vector
unsigned char __a,
int __b,
11217 vector
unsigned char *__c) {
11219 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11223 static void __ATTRS_o_ai vec_stvlxl(vector
bool char __a,
int __b,
11224 vector
bool char *__c) {
11226 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11230 static void __ATTRS_o_ai vec_stvlxl(vector
short __a,
int __b,
short *__c) {
11231 return vec_stl(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11235 static void __ATTRS_o_ai vec_stvlxl(vector
short __a,
int __b,
11236 vector
short *__c) {
11238 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11242 static void __ATTRS_o_ai vec_stvlxl(vector
unsigned short __a,
int __b,
11243 unsigned short *__c) {
11244 return vec_stl(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11248 static void __ATTRS_o_ai vec_stvlxl(vector
unsigned short __a,
int __b,
11249 vector
unsigned short *__c) {
11251 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11255 static void __ATTRS_o_ai vec_stvlxl(vector
bool short __a,
int __b,
11256 vector
bool short *__c) {
11258 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11262 static void __ATTRS_o_ai vec_stvlxl(vector pixel __a,
int __b,
11263 vector pixel *__c) {
11265 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11269 static void __ATTRS_o_ai vec_stvlxl(vector
int __a,
int __b,
int *__c) {
11270 return vec_stl(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11274 static void __ATTRS_o_ai vec_stvlxl(vector
int __a,
int __b, vector
int *__c) {
11276 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11280 static void __ATTRS_o_ai vec_stvlxl(vector
unsigned int __a,
int __b,
11281 unsigned int *__c) {
11282 return vec_stl(vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, __c)), __b,
11286 static void __ATTRS_o_ai vec_stvlxl(vector
unsigned int __a,
int __b,
11287 vector
unsigned int *__c) {
11289 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11293 static void __ATTRS_o_ai vec_stvlxl(vector
bool int __a,
int __b,
11294 vector
bool int *__c) {
11296 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11300 static void __ATTRS_o_ai vec_stvlxl(vector
float __a,
int __b,
11301 vector
float *__c) {
11303 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (
unsigned char *)__c)),
11309 static void __ATTRS_o_ai vec_stvrx(vector
signed char __a,
int __b,
11310 signed char *__c) {
11311 return vec_st(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11315 static void __ATTRS_o_ai vec_stvrx(vector
signed char __a,
int __b,
11316 vector
signed char *__c) {
11318 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11322 static void __ATTRS_o_ai vec_stvrx(vector
unsigned char __a,
int __b,
11323 unsigned char *__c) {
11324 return vec_st(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11328 static void __ATTRS_o_ai vec_stvrx(vector
unsigned char __a,
int __b,
11329 vector
unsigned char *__c) {
11331 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11335 static void __ATTRS_o_ai vec_stvrx(vector
bool char __a,
int __b,
11336 vector
bool char *__c) {
11338 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11342 static void __ATTRS_o_ai vec_stvrx(vector
short __a,
int __b,
short *__c) {
11343 return vec_st(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11347 static void __ATTRS_o_ai vec_stvrx(vector
short __a,
int __b,
11348 vector
short *__c) {
11350 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11354 static void __ATTRS_o_ai vec_stvrx(vector
unsigned short __a,
int __b,
11355 unsigned short *__c) {
11356 return vec_st(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11360 static void __ATTRS_o_ai vec_stvrx(vector
unsigned short __a,
int __b,
11361 vector
unsigned short *__c) {
11363 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11367 static void __ATTRS_o_ai vec_stvrx(vector
bool short __a,
int __b,
11368 vector
bool short *__c) {
11370 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11374 static void __ATTRS_o_ai vec_stvrx(vector pixel __a,
int __b,
11375 vector pixel *__c) {
11377 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11381 static void __ATTRS_o_ai vec_stvrx(vector
int __a,
int __b,
int *__c) {
11382 return vec_st(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11386 static void __ATTRS_o_ai vec_stvrx(vector
int __a,
int __b, vector
int *__c) {
11388 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11392 static void __ATTRS_o_ai vec_stvrx(vector
unsigned int __a,
int __b,
11393 unsigned int *__c) {
11394 return vec_st(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11398 static void __ATTRS_o_ai vec_stvrx(vector
unsigned int __a,
int __b,
11399 vector
unsigned int *__c) {
11401 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11405 static void __ATTRS_o_ai vec_stvrx(vector
bool int __a,
int __b,
11406 vector
bool int *__c) {
11408 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11412 static void __ATTRS_o_ai vec_stvrx(vector
float __a,
int __b,
11413 vector
float *__c) {
11415 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11421 static void __ATTRS_o_ai vec_stvrxl(vector
signed char __a,
int __b,
11422 signed char *__c) {
11423 return vec_stl(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11427 static void __ATTRS_o_ai vec_stvrxl(vector
signed char __a,
int __b,
11428 vector
signed char *__c) {
11430 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11434 static void __ATTRS_o_ai vec_stvrxl(vector
unsigned char __a,
int __b,
11435 unsigned char *__c) {
11436 return vec_stl(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11440 static void __ATTRS_o_ai vec_stvrxl(vector
unsigned char __a,
int __b,
11441 vector
unsigned char *__c) {
11443 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11447 static void __ATTRS_o_ai vec_stvrxl(vector
bool char __a,
int __b,
11448 vector
bool char *__c) {
11450 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11454 static void __ATTRS_o_ai vec_stvrxl(vector
short __a,
int __b,
short *__c) {
11455 return vec_stl(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11459 static void __ATTRS_o_ai vec_stvrxl(vector
short __a,
int __b,
11460 vector
short *__c) {
11462 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11466 static void __ATTRS_o_ai vec_stvrxl(vector
unsigned short __a,
int __b,
11467 unsigned short *__c) {
11468 return vec_stl(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11472 static void __ATTRS_o_ai vec_stvrxl(vector
unsigned short __a,
int __b,
11473 vector
unsigned short *__c) {
11475 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11479 static void __ATTRS_o_ai vec_stvrxl(vector
bool short __a,
int __b,
11480 vector
bool short *__c) {
11482 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11486 static void __ATTRS_o_ai vec_stvrxl(vector pixel __a,
int __b,
11487 vector pixel *__c) {
11489 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11493 static void __ATTRS_o_ai vec_stvrxl(vector
int __a,
int __b,
int *__c) {
11494 return vec_stl(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11498 static void __ATTRS_o_ai vec_stvrxl(vector
int __a,
int __b, vector
int *__c) {
11500 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11504 static void __ATTRS_o_ai vec_stvrxl(vector
unsigned int __a,
int __b,
11505 unsigned int *__c) {
11506 return vec_stl(vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, __c)), __b,
11510 static void __ATTRS_o_ai vec_stvrxl(vector
unsigned int __a,
int __b,
11511 vector
unsigned int *__c) {
11513 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11517 static void __ATTRS_o_ai vec_stvrxl(vector
bool int __a,
int __b,
11518 vector
bool int *__c) {
11520 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11524 static void __ATTRS_o_ai vec_stvrxl(vector
float __a,
int __b,
11525 vector
float *__c) {
11527 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (
unsigned char *)__c)),
11533 static vector
signed char __ATTRS_o_ai vec_promote(
signed char __a,
int __b) {
11534 vector
signed char __res = (vector
signed char)(0);
11539 static vector
unsigned char __ATTRS_o_ai vec_promote(
unsigned char __a,
11541 vector
unsigned char __res = (vector
unsigned char)(0);
11546 static vector
short __ATTRS_o_ai vec_promote(
short __a,
int __b) {
11547 vector
short __res = (vector short)(0);
11552 static vector
unsigned short __ATTRS_o_ai vec_promote(
unsigned short __a,
11554 vector
unsigned short __res = (vector
unsigned short)(0);
11559 static vector
int __ATTRS_o_ai vec_promote(
int __a,
int __b) {
11560 vector
int __res = (vector int)(0);
11565 static vector
unsigned int __ATTRS_o_ai vec_promote(
unsigned int __a,
int __b) {
11566 vector
unsigned int __res = (vector
unsigned int)(0);
11571 static vector
float __ATTRS_o_ai vec_promote(
float __a,
int __b) {
11572 vector
float __res = (vector float)(0);
11579 static vector
signed char __ATTRS_o_ai vec_splats(
signed char __a) {
11580 return (vector
signed char)(__a);
11583 static vector
unsigned char __ATTRS_o_ai vec_splats(
unsigned char __a) {
11584 return (vector
unsigned char)(__a);
11587 static vector
short __ATTRS_o_ai vec_splats(
short __a) {
11588 return (vector
short)(__a);
11591 static vector
unsigned short __ATTRS_o_ai vec_splats(
unsigned short __a) {
11592 return (vector
unsigned short)(__a);
11595 static vector
int __ATTRS_o_ai vec_splats(
int __a) {
return (vector
int)(__a); }
11597 static vector
unsigned int __ATTRS_o_ai vec_splats(
unsigned int __a) {
11598 return (vector
unsigned int)(__a);
11602 static vector
signed long long __ATTRS_o_ai vec_splats(
signed long long __a) {
11603 return (vector
signed long long)(__a);
11607 vec_splats(
unsigned long long __a) {
11608 return (vector
unsigned long long)(__a);
11611 #if defined(__POWER8_VECTOR__) && defined(__powerpc64__)
11612 static vector
signed __int128
__ATTRS_o_ai vec_splats(
signed __int128 __a) {
11613 return (vector
signed __int128)(__a);
11617 vec_splats(
unsigned __int128 __a) {
11618 return (vector
unsigned __int128)(__a);
11623 static vector
double __ATTRS_o_ai vec_splats(
double __a) {
11624 return (vector
double)(__a);
11628 static vector
float __ATTRS_o_ai vec_splats(
float __a) {
11629 return (vector
float)(__a);
11636 static int __ATTRS_o_ai vec_all_eq(vector
signed char __a,
11637 vector
signed char __b) {
11638 return __builtin_altivec_vcmpequb_p(
__CR6_LT, (vector
char)__a,
11642 static int __ATTRS_o_ai vec_all_eq(vector
signed char __a,
11643 vector
bool char __b) {
11644 return __builtin_altivec_vcmpequb_p(
__CR6_LT, (vector
char)__a,
11648 static int __ATTRS_o_ai vec_all_eq(vector
unsigned char __a,
11649 vector
unsigned char __b) {
11650 return __builtin_altivec_vcmpequb_p(
__CR6_LT, (vector
char)__a,
11654 static int __ATTRS_o_ai vec_all_eq(vector
unsigned char __a,
11655 vector
bool char __b) {
11656 return __builtin_altivec_vcmpequb_p(
__CR6_LT, (vector
char)__a,
11660 static int __ATTRS_o_ai vec_all_eq(vector
bool char __a,
11661 vector
signed char __b) {
11662 return __builtin_altivec_vcmpequb_p(
__CR6_LT, (vector
char)__a,
11666 static int __ATTRS_o_ai vec_all_eq(vector
bool char __a,
11667 vector
unsigned char __b) {
11668 return __builtin_altivec_vcmpequb_p(
__CR6_LT, (vector
char)__a,
11672 static int __ATTRS_o_ai vec_all_eq(vector
bool char __a, vector
bool char __b) {
11673 return __builtin_altivec_vcmpequb_p(
__CR6_LT, (vector
char)__a,
11677 static int __ATTRS_o_ai vec_all_eq(vector
short __a, vector
short __b) {
11678 return __builtin_altivec_vcmpequh_p(
__CR6_LT, __a, __b);
11681 static int __ATTRS_o_ai vec_all_eq(vector
short __a, vector
bool short __b) {
11682 return __builtin_altivec_vcmpequh_p(
__CR6_LT, __a, (vector
short)__b);
11685 static int __ATTRS_o_ai vec_all_eq(vector
unsigned short __a,
11686 vector
unsigned short __b) {
11687 return __builtin_altivec_vcmpequh_p(
__CR6_LT, (vector
short)__a,
11688 (vector
short)__b);
11691 static int __ATTRS_o_ai vec_all_eq(vector
unsigned short __a,
11692 vector
bool short __b) {
11693 return __builtin_altivec_vcmpequh_p(
__CR6_LT, (vector
short)__a,
11694 (vector
short)__b);
11697 static int __ATTRS_o_ai vec_all_eq(vector
bool short __a, vector
short __b) {
11698 return __builtin_altivec_vcmpequh_p(
__CR6_LT, (vector
short)__a,
11699 (vector
short)__b);
11702 static int __ATTRS_o_ai vec_all_eq(vector
bool short __a,
11703 vector
unsigned short __b) {
11704 return __builtin_altivec_vcmpequh_p(
__CR6_LT, (vector
short)__a,
11705 (vector
short)__b);
11708 static int __ATTRS_o_ai vec_all_eq(vector
bool short __a,
11709 vector
bool short __b) {
11710 return __builtin_altivec_vcmpequh_p(
__CR6_LT, (vector
short)__a,
11711 (vector
short)__b);
11714 static int __ATTRS_o_ai vec_all_eq(vector pixel __a, vector pixel __b) {
11715 return __builtin_altivec_vcmpequh_p(
__CR6_LT, (vector
short)__a,
11716 (vector
short)__b);
11719 static int __ATTRS_o_ai vec_all_eq(vector
int __a, vector
int __b) {
11720 return __builtin_altivec_vcmpequw_p(
__CR6_LT, __a, __b);
11723 static int __ATTRS_o_ai vec_all_eq(vector
int __a, vector
bool int __b) {
11724 return __builtin_altivec_vcmpequw_p(
__CR6_LT, __a, (vector
int)__b);
11727 static int __ATTRS_o_ai vec_all_eq(vector
unsigned int __a,
11728 vector
unsigned int __b) {
11729 return __builtin_altivec_vcmpequw_p(
__CR6_LT, (vector
int)__a,
11733 static int __ATTRS_o_ai vec_all_eq(vector
unsigned int __a,
11734 vector
bool int __b) {
11735 return __builtin_altivec_vcmpequw_p(
__CR6_LT, (vector
int)__a,
11739 static int __ATTRS_o_ai vec_all_eq(vector
bool int __a, vector
int __b) {
11740 return __builtin_altivec_vcmpequw_p(
__CR6_LT, (vector
int)__a,
11744 static int __ATTRS_o_ai vec_all_eq(vector
bool int __a,
11745 vector
unsigned int __b) {
11746 return __builtin_altivec_vcmpequw_p(
__CR6_LT, (vector
int)__a,
11750 static int __ATTRS_o_ai vec_all_eq(vector
bool int __a, vector
bool int __b) {
11751 return __builtin_altivec_vcmpequw_p(
__CR6_LT, (vector
int)__a,
11755 #ifdef __POWER8_VECTOR__
11756 static int __ATTRS_o_ai vec_all_eq(vector
signed long long __a,
11757 vector
signed long long __b) {
11758 return __builtin_altivec_vcmpequd_p(
__CR6_LT, __a, __b);
11761 static int __ATTRS_o_ai vec_all_eq(vector
long long __a,
11762 vector
bool long long __b) {
11763 return __builtin_altivec_vcmpequd_p(
__CR6_LT, __a, (vector
long long)__b);
11766 static int __ATTRS_o_ai vec_all_eq(vector
unsigned long long __a,
11767 vector
unsigned long long __b) {
11768 return __builtin_altivec_vcmpequd_p(
__CR6_LT, (vector
long long)__a,
11769 (vector
long long)__b);
11772 static int __ATTRS_o_ai vec_all_eq(vector
unsigned long long __a,
11773 vector
bool long long __b) {
11774 return __builtin_altivec_vcmpequd_p(
__CR6_LT, (vector
long long)__a,
11775 (vector
long long)__b);
11778 static int __ATTRS_o_ai vec_all_eq(vector
bool long long __a,
11779 vector
long long __b) {
11780 return __builtin_altivec_vcmpequd_p(
__CR6_LT, (vector
long long)__a,
11781 (vector
long long)__b);
11784 static int __ATTRS_o_ai vec_all_eq(vector
bool long long __a,
11785 vector
unsigned long long __b) {
11786 return __builtin_altivec_vcmpequd_p(
__CR6_LT, (vector
long long)__a,
11787 (vector
long long)__b);
11790 static int __ATTRS_o_ai vec_all_eq(vector
bool long long __a,
11791 vector
bool long long __b) {
11792 return __builtin_altivec_vcmpequd_p(
__CR6_LT, (vector
long long)__a,
11793 (vector
long long)__b);
11797 static int __ATTRS_o_ai vec_all_eq(vector
float __a, vector
float __b) {
11799 return __builtin_vsx_xvcmpeqsp_p(
__CR6_LT, __a, __b);
11801 return __builtin_altivec_vcmpeqfp_p(
__CR6_LT, __a, __b);
11806 static int __ATTRS_o_ai vec_all_eq(vector
double __a, vector
double __b) {
11807 return __builtin_vsx_xvcmpeqdp_p(
__CR6_LT, __a, __b);
11813 static int __ATTRS_o_ai vec_all_ge(vector
signed char __a,
11814 vector
signed char __b) {
11815 return __builtin_altivec_vcmpgtsb_p(
__CR6_EQ, __b, __a);
11818 static int __ATTRS_o_ai vec_all_ge(vector
signed char __a,
11819 vector
bool char __b) {
11820 return __builtin_altivec_vcmpgtsb_p(
__CR6_EQ, (vector
signed char)__b, __a);
11823 static int __ATTRS_o_ai vec_all_ge(vector
unsigned char __a,
11824 vector
unsigned char __b) {
11825 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, __b, __a);
11828 static int __ATTRS_o_ai vec_all_ge(vector
unsigned char __a,
11829 vector
bool char __b) {
11830 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, (vector
unsigned char)__b, __a);
11833 static int __ATTRS_o_ai vec_all_ge(vector
bool char __a,
11834 vector
signed char __b) {
11835 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, (vector
unsigned char)__b,
11836 (vector
unsigned char)__a);
11839 static int __ATTRS_o_ai vec_all_ge(vector
bool char __a,
11840 vector
unsigned char __b) {
11841 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, __b, (vector
unsigned char)__a);
11844 static int __ATTRS_o_ai vec_all_ge(vector
bool char __a, vector
bool char __b) {
11845 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, (vector
unsigned char)__b,
11846 (vector
unsigned char)__a);
11849 static int __ATTRS_o_ai vec_all_ge(vector
short __a, vector
short __b) {
11850 return __builtin_altivec_vcmpgtsh_p(
__CR6_EQ, __b, __a);
11853 static int __ATTRS_o_ai vec_all_ge(vector
short __a, vector
bool short __b) {
11854 return __builtin_altivec_vcmpgtsh_p(
__CR6_EQ, (vector
short)__b, __a);
11857 static int __ATTRS_o_ai vec_all_ge(vector
unsigned short __a,
11858 vector
unsigned short __b) {
11859 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, __b, __a);
11862 static int __ATTRS_o_ai vec_all_ge(vector
unsigned short __a,
11863 vector
bool short __b) {
11864 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, (vector
unsigned short)__b,
11868 static int __ATTRS_o_ai vec_all_ge(vector
bool short __a, vector
short __b) {
11869 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, (vector
unsigned short)__b,
11870 (vector
unsigned short)__a);
11873 static int __ATTRS_o_ai vec_all_ge(vector
bool short __a,
11874 vector
unsigned short __b) {
11875 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, __b,
11876 (vector
unsigned short)__a);
11879 static int __ATTRS_o_ai vec_all_ge(vector
bool short __a,
11880 vector
bool short __b) {
11881 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, (vector
unsigned short)__b,
11882 (vector
unsigned short)__a);
11885 static int __ATTRS_o_ai vec_all_ge(vector
int __a, vector
int __b) {
11886 return __builtin_altivec_vcmpgtsw_p(
__CR6_EQ, __b, __a);
11889 static int __ATTRS_o_ai vec_all_ge(vector
int __a, vector
bool int __b) {
11890 return __builtin_altivec_vcmpgtsw_p(
__CR6_EQ, (vector
int)__b, __a);
11893 static int __ATTRS_o_ai vec_all_ge(vector
unsigned int __a,
11894 vector
unsigned int __b) {
11895 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, __b, __a);
11898 static int __ATTRS_o_ai vec_all_ge(vector
unsigned int __a,
11899 vector
bool int __b) {
11900 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, (vector
unsigned int)__b, __a);
11903 static int __ATTRS_o_ai vec_all_ge(vector
bool int __a, vector
int __b) {
11904 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, (vector
unsigned int)__b,
11905 (vector
unsigned int)__a);
11908 static int __ATTRS_o_ai vec_all_ge(vector
bool int __a,
11909 vector
unsigned int __b) {
11910 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, __b, (vector
unsigned int)__a);
11913 static int __ATTRS_o_ai vec_all_ge(vector
bool int __a, vector
bool int __b) {
11914 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, (vector
unsigned int)__b,
11915 (vector
unsigned int)__a);
11918 #ifdef __POWER8_VECTOR__
11919 static int __ATTRS_o_ai vec_all_ge(vector
signed long long __a,
11920 vector
signed long long __b) {
11921 return __builtin_altivec_vcmpgtsd_p(
__CR6_EQ, __b, __a);
11923 static int __ATTRS_o_ai vec_all_ge(vector
signed long long __a,
11924 vector
bool long long __b) {
11925 return __builtin_altivec_vcmpgtsd_p(
__CR6_EQ, (vector
signed long long)__b,
11929 static int __ATTRS_o_ai vec_all_ge(vector
unsigned long long __a,
11930 vector
unsigned long long __b) {
11931 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, __b, __a);
11934 static int __ATTRS_o_ai vec_all_ge(vector
unsigned long long __a,
11935 vector
bool long long __b) {
11936 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, (vector
unsigned long long)__b,
11940 static int __ATTRS_o_ai vec_all_ge(vector
bool long long __a,
11941 vector
signed long long __b) {
11942 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, (vector
unsigned long long)__b,
11943 (vector
unsigned long long)__a);
11946 static int __ATTRS_o_ai vec_all_ge(vector
bool long long __a,
11947 vector
unsigned long long __b) {
11948 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, __b,
11949 (vector
unsigned long long)__a);
11952 static int __ATTRS_o_ai vec_all_ge(vector
bool long long __a,
11953 vector
bool long long __b) {
11954 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, (vector
unsigned long long)__b,
11955 (vector
unsigned long long)__a);
11959 static int __ATTRS_o_ai vec_all_ge(vector
float __a, vector
float __b) {
11961 return __builtin_vsx_xvcmpgesp_p(
__CR6_LT, __a, __b);
11963 return __builtin_altivec_vcmpgefp_p(
__CR6_LT, __a, __b);
11968 static int __ATTRS_o_ai vec_all_ge(vector
double __a, vector
double __b) {
11969 return __builtin_vsx_xvcmpgedp_p(
__CR6_LT, __a, __b);
11975 static int __ATTRS_o_ai vec_all_gt(vector
signed char __a,
11976 vector
signed char __b) {
11977 return __builtin_altivec_vcmpgtsb_p(
__CR6_LT, __a, __b);
11980 static int __ATTRS_o_ai vec_all_gt(vector
signed char __a,
11981 vector
bool char __b) {
11982 return __builtin_altivec_vcmpgtsb_p(
__CR6_LT, __a, (vector
signed char)__b);
11985 static int __ATTRS_o_ai vec_all_gt(vector
unsigned char __a,
11986 vector
unsigned char __b) {
11987 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, __a, __b);
11990 static int __ATTRS_o_ai vec_all_gt(vector
unsigned char __a,
11991 vector
bool char __b) {
11992 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, __a, (vector
unsigned char)__b);
11995 static int __ATTRS_o_ai vec_all_gt(vector
bool char __a,
11996 vector
signed char __b) {
11997 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, (vector
unsigned char)__a,
11998 (vector
unsigned char)__b);
12001 static int __ATTRS_o_ai vec_all_gt(vector
bool char __a,
12002 vector
unsigned char __b) {
12003 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, (vector
unsigned char)__a, __b);
12006 static int __ATTRS_o_ai vec_all_gt(vector
bool char __a, vector
bool char __b) {
12007 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, (vector
unsigned char)__a,
12008 (vector
unsigned char)__b);
12011 static int __ATTRS_o_ai vec_all_gt(vector
short __a, vector
short __b) {
12012 return __builtin_altivec_vcmpgtsh_p(
__CR6_LT, __a, __b);
12015 static int __ATTRS_o_ai vec_all_gt(vector
short __a, vector
bool short __b) {
12016 return __builtin_altivec_vcmpgtsh_p(
__CR6_LT, __a, (vector
short)__b);
12019 static int __ATTRS_o_ai vec_all_gt(vector
unsigned short __a,
12020 vector
unsigned short __b) {
12021 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, __a, __b);
12024 static int __ATTRS_o_ai vec_all_gt(vector
unsigned short __a,
12025 vector
bool short __b) {
12026 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, __a,
12027 (vector
unsigned short)__b);
12030 static int __ATTRS_o_ai vec_all_gt(vector
bool short __a, vector
short __b) {
12031 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, (vector
unsigned short)__a,
12032 (vector
unsigned short)__b);
12035 static int __ATTRS_o_ai vec_all_gt(vector
bool short __a,
12036 vector
unsigned short __b) {
12037 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, (vector
unsigned short)__a,
12041 static int __ATTRS_o_ai vec_all_gt(vector
bool short __a,
12042 vector
bool short __b) {
12043 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, (vector
unsigned short)__a,
12044 (vector
unsigned short)__b);
12047 static int __ATTRS_o_ai vec_all_gt(vector
int __a, vector
int __b) {
12048 return __builtin_altivec_vcmpgtsw_p(
__CR6_LT, __a, __b);
12051 static int __ATTRS_o_ai vec_all_gt(vector
int __a, vector
bool int __b) {
12052 return __builtin_altivec_vcmpgtsw_p(
__CR6_LT, __a, (vector
int)__b);
12055 static int __ATTRS_o_ai vec_all_gt(vector
unsigned int __a,
12056 vector
unsigned int __b) {
12057 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, __a, __b);
12060 static int __ATTRS_o_ai vec_all_gt(vector
unsigned int __a,
12061 vector
bool int __b) {
12062 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, __a, (vector
unsigned int)__b);
12065 static int __ATTRS_o_ai vec_all_gt(vector
bool int __a, vector
int __b) {
12066 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, (vector
unsigned int)__a,
12067 (vector
unsigned int)__b);
12070 static int __ATTRS_o_ai vec_all_gt(vector
bool int __a,
12071 vector
unsigned int __b) {
12072 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, (vector
unsigned int)__a, __b);
12075 static int __ATTRS_o_ai vec_all_gt(vector
bool int __a, vector
bool int __b) {
12076 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, (vector
unsigned int)__a,
12077 (vector
unsigned int)__b);
12080 #ifdef __POWER8_VECTOR__
12081 static int __ATTRS_o_ai vec_all_gt(vector
signed long long __a,
12082 vector
signed long long __b) {
12083 return __builtin_altivec_vcmpgtsd_p(
__CR6_LT, __a, __b);
12085 static int __ATTRS_o_ai vec_all_gt(vector
signed long long __a,
12086 vector
bool long long __b) {
12087 return __builtin_altivec_vcmpgtsd_p(
__CR6_LT, __a,
12088 (vector
signed long long)__b);
12091 static int __ATTRS_o_ai vec_all_gt(vector
unsigned long long __a,
12092 vector
unsigned long long __b) {
12093 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, __a, __b);
12096 static int __ATTRS_o_ai vec_all_gt(vector
unsigned long long __a,
12097 vector
bool long long __b) {
12098 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, __a,
12099 (vector
unsigned long long)__b);
12102 static int __ATTRS_o_ai vec_all_gt(vector
bool long long __a,
12103 vector
signed long long __b) {
12104 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, (vector
unsigned long long)__a,
12105 (vector
unsigned long long)__b);
12108 static int __ATTRS_o_ai vec_all_gt(vector
bool long long __a,
12109 vector
unsigned long long __b) {
12110 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, (vector
unsigned long long)__a,
12114 static int __ATTRS_o_ai vec_all_gt(vector
bool long long __a,
12115 vector
bool long long __b) {
12116 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, (vector
unsigned long long)__a,
12117 (vector
unsigned long long)__b);
12121 static int __ATTRS_o_ai vec_all_gt(vector
float __a, vector
float __b) {
12123 return __builtin_vsx_xvcmpgtsp_p(
__CR6_LT, __a, __b);
12125 return __builtin_altivec_vcmpgtfp_p(
__CR6_LT, __a, __b);
12130 static int __ATTRS_o_ai vec_all_gt(vector
double __a, vector
double __b) {
12131 return __builtin_vsx_xvcmpgtdp_p(
__CR6_LT, __a, __b);
12138 vec_all_in(vector
float __a, vector
float __b) {
12139 return __builtin_altivec_vcmpbfp_p(
__CR6_EQ, __a, __b);
12144 static int __ATTRS_o_ai vec_all_le(vector
signed char __a,
12145 vector
signed char __b) {
12146 return __builtin_altivec_vcmpgtsb_p(
__CR6_EQ, __a, __b);
12149 static int __ATTRS_o_ai vec_all_le(vector
signed char __a,
12150 vector
bool char __b) {
12151 return __builtin_altivec_vcmpgtsb_p(
__CR6_EQ, __a, (vector
signed char)__b);
12154 static int __ATTRS_o_ai vec_all_le(vector
unsigned char __a,
12155 vector
unsigned char __b) {
12156 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, __a, __b);
12159 static int __ATTRS_o_ai vec_all_le(vector
unsigned char __a,
12160 vector
bool char __b) {
12161 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, __a, (vector
unsigned char)__b);
12164 static int __ATTRS_o_ai vec_all_le(vector
bool char __a,
12165 vector
signed char __b) {
12166 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, (vector
unsigned char)__a,
12167 (vector
unsigned char)__b);
12170 static int __ATTRS_o_ai vec_all_le(vector
bool char __a,
12171 vector
unsigned char __b) {
12172 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, (vector
unsigned char)__a, __b);
12175 static int __ATTRS_o_ai vec_all_le(vector
bool char __a, vector
bool char __b) {
12176 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ, (vector
unsigned char)__a,
12177 (vector
unsigned char)__b);
12180 static int __ATTRS_o_ai vec_all_le(vector
short __a, vector
short __b) {
12181 return __builtin_altivec_vcmpgtsh_p(
__CR6_EQ, __a, __b);
12184 static int __ATTRS_o_ai vec_all_le(vector
short __a, vector
bool short __b) {
12185 return __builtin_altivec_vcmpgtsh_p(
__CR6_EQ, __a, (vector
short)__b);
12188 static int __ATTRS_o_ai vec_all_le(vector
unsigned short __a,
12189 vector
unsigned short __b) {
12190 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, __a, __b);
12193 static int __ATTRS_o_ai vec_all_le(vector
unsigned short __a,
12194 vector
bool short __b) {
12195 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, __a,
12196 (vector
unsigned short)__b);
12199 static int __ATTRS_o_ai vec_all_le(vector
bool short __a, vector
short __b) {
12200 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, (vector
unsigned short)__a,
12201 (vector
unsigned short)__b);
12204 static int __ATTRS_o_ai vec_all_le(vector
bool short __a,
12205 vector
unsigned short __b) {
12206 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, (vector
unsigned short)__a,
12210 static int __ATTRS_o_ai vec_all_le(vector
bool short __a,
12211 vector
bool short __b) {
12212 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ, (vector
unsigned short)__a,
12213 (vector
unsigned short)__b);
12216 static int __ATTRS_o_ai vec_all_le(vector
int __a, vector
int __b) {
12217 return __builtin_altivec_vcmpgtsw_p(
__CR6_EQ, __a, __b);
12220 static int __ATTRS_o_ai vec_all_le(vector
int __a, vector
bool int __b) {
12221 return __builtin_altivec_vcmpgtsw_p(
__CR6_EQ, __a, (vector
int)__b);
12224 static int __ATTRS_o_ai vec_all_le(vector
unsigned int __a,
12225 vector
unsigned int __b) {
12226 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, __a, __b);
12229 static int __ATTRS_o_ai vec_all_le(vector
unsigned int __a,
12230 vector
bool int __b) {
12231 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, __a, (vector
unsigned int)__b);
12234 static int __ATTRS_o_ai vec_all_le(vector
bool int __a, vector
int __b) {
12235 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, (vector
unsigned int)__a,
12236 (vector
unsigned int)__b);
12239 static int __ATTRS_o_ai vec_all_le(vector
bool int __a,
12240 vector
unsigned int __b) {
12241 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, (vector
unsigned int)__a, __b);
12244 static int __ATTRS_o_ai vec_all_le(vector
bool int __a, vector
bool int __b) {
12245 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ, (vector
unsigned int)__a,
12246 (vector
unsigned int)__b);
12249 #ifdef __POWER8_VECTOR__
12250 static int __ATTRS_o_ai vec_all_le(vector
signed long long __a,
12251 vector
signed long long __b) {
12252 return __builtin_altivec_vcmpgtsd_p(
__CR6_EQ, __a, __b);
12255 static int __ATTRS_o_ai vec_all_le(vector
unsigned long long __a,
12256 vector
unsigned long long __b) {
12257 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, __a, __b);
12260 static int __ATTRS_o_ai vec_all_le(vector
signed long long __a,
12261 vector
bool long long __b) {
12262 return __builtin_altivec_vcmpgtsd_p(
__CR6_EQ, __a,
12263 (vector
signed long long)__b);
12266 static int __ATTRS_o_ai vec_all_le(vector
unsigned long long __a,
12267 vector
bool long long __b) {
12268 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, __a,
12269 (vector
unsigned long long)__b);
12272 static int __ATTRS_o_ai vec_all_le(vector
bool long long __a,
12273 vector
signed long long __b) {
12274 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, (vector
unsigned long long)__a,
12275 (vector
unsigned long long)__b);
12278 static int __ATTRS_o_ai vec_all_le(vector
bool long long __a,
12279 vector
unsigned long long __b) {
12280 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, (vector
unsigned long long)__a,
12284 static int __ATTRS_o_ai vec_all_le(vector
bool long long __a,
12285 vector
bool long long __b) {
12286 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ, (vector
unsigned long long)__a,
12287 (vector
unsigned long long)__b);
12291 static int __ATTRS_o_ai vec_all_le(vector
float __a, vector
float __b) {
12293 return __builtin_vsx_xvcmpgesp_p(
__CR6_LT, __b, __a);
12295 return __builtin_altivec_vcmpgefp_p(
__CR6_LT, __b, __a);
12300 static int __ATTRS_o_ai vec_all_le(vector
double __a, vector
double __b) {
12301 return __builtin_vsx_xvcmpgedp_p(
__CR6_LT, __b, __a);
12307 static int __ATTRS_o_ai vec_all_lt(vector
signed char __a,
12308 vector
signed char __b) {
12309 return __builtin_altivec_vcmpgtsb_p(
__CR6_LT, __b, __a);
12312 static int __ATTRS_o_ai vec_all_lt(vector
signed char __a,
12313 vector
bool char __b) {
12314 return __builtin_altivec_vcmpgtsb_p(
__CR6_LT, (vector
signed char)__b, __a);
12317 static int __ATTRS_o_ai vec_all_lt(vector
unsigned char __a,
12318 vector
unsigned char __b) {
12319 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, __b, __a);
12322 static int __ATTRS_o_ai vec_all_lt(vector
unsigned char __a,
12323 vector
bool char __b) {
12324 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, (vector
unsigned char)__b, __a);
12327 static int __ATTRS_o_ai vec_all_lt(vector
bool char __a,
12328 vector
signed char __b) {
12329 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, (vector
unsigned char)__b,
12330 (vector
unsigned char)__a);
12333 static int __ATTRS_o_ai vec_all_lt(vector
bool char __a,
12334 vector
unsigned char __b) {
12335 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, __b, (vector
unsigned char)__a);
12338 static int __ATTRS_o_ai vec_all_lt(vector
bool char __a, vector
bool char __b) {
12339 return __builtin_altivec_vcmpgtub_p(
__CR6_LT, (vector
unsigned char)__b,
12340 (vector
unsigned char)__a);
12343 static int __ATTRS_o_ai vec_all_lt(vector
short __a, vector
short __b) {
12344 return __builtin_altivec_vcmpgtsh_p(
__CR6_LT, __b, __a);
12347 static int __ATTRS_o_ai vec_all_lt(vector
short __a, vector
bool short __b) {
12348 return __builtin_altivec_vcmpgtsh_p(
__CR6_LT, (vector
short)__b, __a);
12351 static int __ATTRS_o_ai vec_all_lt(vector
unsigned short __a,
12352 vector
unsigned short __b) {
12353 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, __b, __a);
12356 static int __ATTRS_o_ai vec_all_lt(vector
unsigned short __a,
12357 vector
bool short __b) {
12358 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, (vector
unsigned short)__b,
12362 static int __ATTRS_o_ai vec_all_lt(vector
bool short __a, vector
short __b) {
12363 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, (vector
unsigned short)__b,
12364 (vector
unsigned short)__a);
12367 static int __ATTRS_o_ai vec_all_lt(vector
bool short __a,
12368 vector
unsigned short __b) {
12369 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, __b,
12370 (vector
unsigned short)__a);
12373 static int __ATTRS_o_ai vec_all_lt(vector
bool short __a,
12374 vector
bool short __b) {
12375 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT, (vector
unsigned short)__b,
12376 (vector
unsigned short)__a);
12379 static int __ATTRS_o_ai vec_all_lt(vector
int __a, vector
int __b) {
12380 return __builtin_altivec_vcmpgtsw_p(
__CR6_LT, __b, __a);
12383 static int __ATTRS_o_ai vec_all_lt(vector
int __a, vector
bool int __b) {
12384 return __builtin_altivec_vcmpgtsw_p(
__CR6_LT, (vector
int)__b, __a);
12387 static int __ATTRS_o_ai vec_all_lt(vector
unsigned int __a,
12388 vector
unsigned int __b) {
12389 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, __b, __a);
12392 static int __ATTRS_o_ai vec_all_lt(vector
unsigned int __a,
12393 vector
bool int __b) {
12394 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, (vector
unsigned int)__b, __a);
12397 static int __ATTRS_o_ai vec_all_lt(vector
bool int __a, vector
int __b) {
12398 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, (vector
unsigned int)__b,
12399 (vector
unsigned int)__a);
12402 static int __ATTRS_o_ai vec_all_lt(vector
bool int __a,
12403 vector
unsigned int __b) {
12404 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, __b, (vector
unsigned int)__a);
12407 static int __ATTRS_o_ai vec_all_lt(vector
bool int __a, vector
bool int __b) {
12408 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT, (vector
unsigned int)__b,
12409 (vector
unsigned int)__a);
12412 #ifdef __POWER8_VECTOR__
12413 static int __ATTRS_o_ai vec_all_lt(vector
signed long long __a,
12414 vector
signed long long __b) {
12415 return __builtin_altivec_vcmpgtsd_p(
__CR6_LT, __b, __a);
12418 static int __ATTRS_o_ai vec_all_lt(vector
unsigned long long __a,
12419 vector
unsigned long long __b) {
12420 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, __b, __a);
12423 static int __ATTRS_o_ai vec_all_lt(vector
signed long long __a,
12424 vector
bool long long __b) {
12425 return __builtin_altivec_vcmpgtsd_p(
__CR6_LT, (vector
signed long long)__b,
12429 static int __ATTRS_o_ai vec_all_lt(vector
unsigned long long __a,
12430 vector
bool long long __b) {
12431 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, (vector
unsigned long long)__b,
12435 static int __ATTRS_o_ai vec_all_lt(vector
bool long long __a,
12436 vector
signed long long __b) {
12437 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, (vector
unsigned long long)__b,
12438 (vector
unsigned long long)__a);
12441 static int __ATTRS_o_ai vec_all_lt(vector
bool long long __a,
12442 vector
unsigned long long __b) {
12443 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, __b,
12444 (vector
unsigned long long)__a);
12447 static int __ATTRS_o_ai vec_all_lt(vector
bool long long __a,
12448 vector
bool long long __b) {
12449 return __builtin_altivec_vcmpgtud_p(
__CR6_LT, (vector
unsigned long long)__b,
12450 (vector
unsigned long long)__a);
12454 static int __ATTRS_o_ai vec_all_lt(vector
float __a, vector
float __b) {
12456 return __builtin_vsx_xvcmpgtsp_p(
__CR6_LT, __b, __a);
12458 return __builtin_altivec_vcmpgtfp_p(
__CR6_LT, __b, __a);
12463 static int __ATTRS_o_ai vec_all_lt(vector
double __a, vector
double __b) {
12464 return __builtin_vsx_xvcmpgtdp_p(
__CR6_LT, __b, __a);
12470 static int __ATTRS_o_ai vec_all_nan(vector
float __a) {
12472 return __builtin_vsx_xvcmpeqsp_p(
__CR6_EQ, __a, __a);
12474 return __builtin_altivec_vcmpeqfp_p(
__CR6_EQ, __a, __a);
12479 static int __ATTRS_o_ai vec_all_nan(vector
double __a) {
12480 return __builtin_vsx_xvcmpeqdp_p(
__CR6_EQ, __a, __a);
12486 static int __ATTRS_o_ai vec_all_ne(vector
signed char __a,
12487 vector
signed char __b) {
12488 return __builtin_altivec_vcmpequb_p(
__CR6_EQ, (vector
char)__a,
12492 static int __ATTRS_o_ai vec_all_ne(vector
signed char __a,
12493 vector
bool char __b) {
12494 return __builtin_altivec_vcmpequb_p(
__CR6_EQ, (vector
char)__a,
12498 static int __ATTRS_o_ai vec_all_ne(vector
unsigned char __a,
12499 vector
unsigned char __b) {
12500 return __builtin_altivec_vcmpequb_p(
__CR6_EQ, (vector
char)__a,
12504 static int __ATTRS_o_ai vec_all_ne(vector
unsigned char __a,
12505 vector
bool char __b) {
12506 return __builtin_altivec_vcmpequb_p(
__CR6_EQ, (vector
char)__a,
12510 static int __ATTRS_o_ai vec_all_ne(vector
bool char __a,
12511 vector
signed char __b) {
12512 return __builtin_altivec_vcmpequb_p(
__CR6_EQ, (vector
char)__a,
12516 static int __ATTRS_o_ai vec_all_ne(vector
bool char __a,
12517 vector
unsigned char __b) {
12518 return __builtin_altivec_vcmpequb_p(
__CR6_EQ, (vector
char)__a,
12522 static int __ATTRS_o_ai vec_all_ne(vector
bool char __a, vector
bool char __b) {
12523 return __builtin_altivec_vcmpequb_p(
__CR6_EQ, (vector
char)__a,
12527 static int __ATTRS_o_ai vec_all_ne(vector
short __a, vector
short __b) {
12528 return __builtin_altivec_vcmpequh_p(
__CR6_EQ, __a, __b);
12531 static int __ATTRS_o_ai vec_all_ne(vector
short __a, vector
bool short __b) {
12532 return __builtin_altivec_vcmpequh_p(
__CR6_EQ, __a, (vector
short)__b);
12535 static int __ATTRS_o_ai vec_all_ne(vector
unsigned short __a,
12536 vector
unsigned short __b) {
12537 return __builtin_altivec_vcmpequh_p(
__CR6_EQ, (vector
short)__a,
12538 (vector
short)__b);
12541 static int __ATTRS_o_ai vec_all_ne(vector
unsigned short __a,
12542 vector
bool short __b) {
12543 return __builtin_altivec_vcmpequh_p(
__CR6_EQ, (vector
short)__a,
12544 (vector
short)__b);
12547 static int __ATTRS_o_ai vec_all_ne(vector
bool short __a, vector
short __b) {
12548 return __builtin_altivec_vcmpequh_p(
__CR6_EQ, (vector
short)__a,
12549 (vector
short)__b);
12552 static int __ATTRS_o_ai vec_all_ne(vector
bool short __a,
12553 vector
unsigned short __b) {
12554 return __builtin_altivec_vcmpequh_p(
__CR6_EQ, (vector
short)__a,
12555 (vector
short)__b);
12558 static int __ATTRS_o_ai vec_all_ne(vector
bool short __a,
12559 vector
bool short __b) {
12560 return __builtin_altivec_vcmpequh_p(
__CR6_EQ, (vector
short)__a,
12561 (vector
short)__b);
12564 static int __ATTRS_o_ai vec_all_ne(vector pixel __a, vector pixel __b) {
12565 return __builtin_altivec_vcmpequh_p(
__CR6_EQ, (vector
short)__a,
12566 (vector
short)__b);
12569 static int __ATTRS_o_ai vec_all_ne(vector
int __a, vector
int __b) {
12570 return __builtin_altivec_vcmpequw_p(
__CR6_EQ, __a, __b);
12573 static int __ATTRS_o_ai vec_all_ne(vector
int __a, vector
bool int __b) {
12574 return __builtin_altivec_vcmpequw_p(
__CR6_EQ, __a, (vector
int)__b);
12577 static int __ATTRS_o_ai vec_all_ne(vector
unsigned int __a,
12578 vector
unsigned int __b) {
12579 return __builtin_altivec_vcmpequw_p(
__CR6_EQ, (vector
int)__a,
12583 static int __ATTRS_o_ai vec_all_ne(vector
unsigned int __a,
12584 vector
bool int __b) {
12585 return __builtin_altivec_vcmpequw_p(
__CR6_EQ, (vector
int)__a,
12589 static int __ATTRS_o_ai vec_all_ne(vector
bool int __a, vector
int __b) {
12590 return __builtin_altivec_vcmpequw_p(
__CR6_EQ, (vector
int)__a,
12594 static int __ATTRS_o_ai vec_all_ne(vector
bool int __a,
12595 vector
unsigned int __b) {
12596 return __builtin_altivec_vcmpequw_p(
__CR6_EQ, (vector
int)__a,
12600 static int __ATTRS_o_ai vec_all_ne(vector
bool int __a, vector
bool int __b) {
12601 return __builtin_altivec_vcmpequw_p(
__CR6_EQ, (vector
int)__a,
12605 #ifdef __POWER8_VECTOR__
12606 static int __ATTRS_o_ai vec_all_ne(vector
signed long long __a,
12607 vector
signed long long __b) {
12608 return __builtin_altivec_vcmpequd_p(
__CR6_EQ, __a, __b);
12611 static int __ATTRS_o_ai vec_all_ne(vector
unsigned long long __a,
12612 vector
unsigned long long __b) {
12613 return __builtin_altivec_vcmpequd_p(
__CR6_EQ, (vector
long long)__a,
12614 (vector
long long)__b);
12617 static int __ATTRS_o_ai vec_all_ne(vector
signed long long __a,
12618 vector
bool long long __b) {
12619 return __builtin_altivec_vcmpequd_p(
__CR6_EQ, __a,
12620 (vector
signed long long)__b);
12623 static int __ATTRS_o_ai vec_all_ne(vector
unsigned long long __a,
12624 vector
bool long long __b) {
12625 return __builtin_altivec_vcmpequd_p(
__CR6_EQ, (vector
signed long long)__a,
12626 (vector
signed long long)__b);
12629 static int __ATTRS_o_ai vec_all_ne(vector
bool long long __a,
12630 vector
signed long long __b) {
12631 return __builtin_altivec_vcmpequd_p(
__CR6_EQ, (vector
signed long long)__a,
12632 (vector
signed long long)__b);
12635 static int __ATTRS_o_ai vec_all_ne(vector
bool long long __a,
12636 vector
unsigned long long __b) {
12637 return __builtin_altivec_vcmpequd_p(
__CR6_EQ, (vector
signed long long)__a,
12638 (vector
signed long long)__b);
12641 static int __ATTRS_o_ai vec_all_ne(vector
bool long long __a,
12642 vector
bool long long __b) {
12643 return __builtin_altivec_vcmpequd_p(
__CR6_EQ, (vector
signed long long)__a,
12644 (vector
signed long long)__b);
12648 static int __ATTRS_o_ai vec_all_ne(vector
float __a, vector
float __b) {
12650 return __builtin_vsx_xvcmpeqdp_p(
__CR6_EQ, __a, __b);
12652 return __builtin_altivec_vcmpeqfp_p(
__CR6_EQ, __a, __b);
12657 static int __ATTRS_o_ai vec_all_ne(vector
double __a, vector
double __b) {
12658 return __builtin_vsx_xvcmpeqdp_p(
__CR6_EQ, __a, __b);
12665 vec_all_nge(vector
float __a, vector
float __b) {
12667 return __builtin_vsx_xvcmpgesp_p(
__CR6_EQ, __a, __b);
12669 return __builtin_altivec_vcmpgefp_p(
__CR6_EQ, __a, __b);
12675 vec_all_nge(vector
double __a, vector
double __b) {
12676 return __builtin_vsx_xvcmpgedp_p(
__CR6_EQ, __a, __b);
12683 vec_all_ngt(vector
float __a, vector
float __b) {
12685 return __builtin_vsx_xvcmpgtsp_p(
__CR6_EQ, __a, __b);
12687 return __builtin_altivec_vcmpgtfp_p(
__CR6_EQ, __a, __b);
12693 vec_all_ngt(vector
double __a, vector
double __b) {
12694 return __builtin_vsx_xvcmpgtdp_p(
__CR6_EQ, __a, __b);
12701 vec_all_nle(vector
float __a, vector
float __b) {
12702 return __builtin_altivec_vcmpgefp_p(
__CR6_EQ, __b, __a);
12708 vec_all_nlt(vector
float __a, vector
float __b) {
12709 return __builtin_altivec_vcmpgtfp_p(
__CR6_EQ, __b, __a);
12715 vec_all_numeric(vector
float __a) {
12716 return __builtin_altivec_vcmpeqfp_p(
__CR6_LT, __a, __a);
12721 static int __ATTRS_o_ai vec_any_eq(vector
signed char __a,
12722 vector
signed char __b) {
12723 return __builtin_altivec_vcmpequb_p(
__CR6_EQ_REV, (vector
char)__a,
12727 static int __ATTRS_o_ai vec_any_eq(vector
signed char __a,
12728 vector
bool char __b) {
12729 return __builtin_altivec_vcmpequb_p(
__CR6_EQ_REV, (vector
char)__a,
12733 static int __ATTRS_o_ai vec_any_eq(vector
unsigned char __a,
12734 vector
unsigned char __b) {
12735 return __builtin_altivec_vcmpequb_p(
__CR6_EQ_REV, (vector
char)__a,
12739 static int __ATTRS_o_ai vec_any_eq(vector
unsigned char __a,
12740 vector
bool char __b) {
12741 return __builtin_altivec_vcmpequb_p(
__CR6_EQ_REV, (vector
char)__a,
12745 static int __ATTRS_o_ai vec_any_eq(vector
bool char __a,
12746 vector
signed char __b) {
12747 return __builtin_altivec_vcmpequb_p(
__CR6_EQ_REV, (vector
char)__a,
12751 static int __ATTRS_o_ai vec_any_eq(vector
bool char __a,
12752 vector
unsigned char __b) {
12753 return __builtin_altivec_vcmpequb_p(
__CR6_EQ_REV, (vector
char)__a,
12757 static int __ATTRS_o_ai vec_any_eq(vector
bool char __a, vector
bool char __b) {
12758 return __builtin_altivec_vcmpequb_p(
__CR6_EQ_REV, (vector
char)__a,
12762 static int __ATTRS_o_ai vec_any_eq(vector
short __a, vector
short __b) {
12763 return __builtin_altivec_vcmpequh_p(
__CR6_EQ_REV, __a, __b);
12766 static int __ATTRS_o_ai vec_any_eq(vector
short __a, vector
bool short __b) {
12767 return __builtin_altivec_vcmpequh_p(
__CR6_EQ_REV, __a, (vector
short)__b);
12770 static int __ATTRS_o_ai vec_any_eq(vector
unsigned short __a,
12771 vector
unsigned short __b) {
12772 return __builtin_altivec_vcmpequh_p(
__CR6_EQ_REV, (vector
short)__a,
12773 (vector
short)__b);
12776 static int __ATTRS_o_ai vec_any_eq(vector
unsigned short __a,
12777 vector
bool short __b) {
12778 return __builtin_altivec_vcmpequh_p(
__CR6_EQ_REV, (vector
short)__a,
12779 (vector
short)__b);
12782 static int __ATTRS_o_ai vec_any_eq(vector
bool short __a, vector
short __b) {
12783 return __builtin_altivec_vcmpequh_p(
__CR6_EQ_REV, (vector
short)__a,
12784 (vector
short)__b);
12787 static int __ATTRS_o_ai vec_any_eq(vector
bool short __a,
12788 vector
unsigned short __b) {
12789 return __builtin_altivec_vcmpequh_p(
__CR6_EQ_REV, (vector
short)__a,
12790 (vector
short)__b);
12793 static int __ATTRS_o_ai vec_any_eq(vector
bool short __a,
12794 vector
bool short __b) {
12795 return __builtin_altivec_vcmpequh_p(
__CR6_EQ_REV, (vector
short)__a,
12796 (vector
short)__b);
12799 static int __ATTRS_o_ai vec_any_eq(vector pixel __a, vector pixel __b) {
12800 return __builtin_altivec_vcmpequh_p(
__CR6_EQ_REV, (vector
short)__a,
12801 (vector
short)__b);
12804 static int __ATTRS_o_ai vec_any_eq(vector
int __a, vector
int __b) {
12805 return __builtin_altivec_vcmpequw_p(
__CR6_EQ_REV, __a, __b);
12808 static int __ATTRS_o_ai vec_any_eq(vector
int __a, vector
bool int __b) {
12809 return __builtin_altivec_vcmpequw_p(
__CR6_EQ_REV, __a, (vector
int)__b);
12812 static int __ATTRS_o_ai vec_any_eq(vector
unsigned int __a,
12813 vector
unsigned int __b) {
12814 return __builtin_altivec_vcmpequw_p(
__CR6_EQ_REV, (vector
int)__a,
12818 static int __ATTRS_o_ai vec_any_eq(vector
unsigned int __a,
12819 vector
bool int __b) {
12820 return __builtin_altivec_vcmpequw_p(
__CR6_EQ_REV, (vector
int)__a,
12824 static int __ATTRS_o_ai vec_any_eq(vector
bool int __a, vector
int __b) {
12825 return __builtin_altivec_vcmpequw_p(
__CR6_EQ_REV, (vector
int)__a,
12829 static int __ATTRS_o_ai vec_any_eq(vector
bool int __a,
12830 vector
unsigned int __b) {
12831 return __builtin_altivec_vcmpequw_p(
__CR6_EQ_REV, (vector
int)__a,
12835 static int __ATTRS_o_ai vec_any_eq(vector
bool int __a, vector
bool int __b) {
12836 return __builtin_altivec_vcmpequw_p(
__CR6_EQ_REV, (vector
int)__a,
12840 #ifdef __POWER8_VECTOR__
12841 static int __ATTRS_o_ai vec_any_eq(vector
signed long long __a,
12842 vector
signed long long __b) {
12843 return __builtin_altivec_vcmpequd_p(
__CR6_EQ_REV, __a, __b);
12846 static int __ATTRS_o_ai vec_any_eq(vector
unsigned long long __a,
12847 vector
unsigned long long __b) {
12848 return __builtin_altivec_vcmpequd_p(
__CR6_EQ_REV, (vector
long long)__a,
12849 (vector
long long)__b);
12852 static int __ATTRS_o_ai vec_any_eq(vector
signed long long __a,
12853 vector
bool long long __b) {
12854 return __builtin_altivec_vcmpequd_p(
__CR6_EQ_REV, __a,
12855 (vector
signed long long)__b);
12858 static int __ATTRS_o_ai vec_any_eq(vector
unsigned long long __a,
12859 vector
bool long long __b) {
12860 return __builtin_altivec_vcmpequd_p(
12861 __CR6_EQ_REV, (vector
signed long long)__a, (vector
signed long long)__b);
12864 static int __ATTRS_o_ai vec_any_eq(vector
bool long long __a,
12865 vector
signed long long __b) {
12866 return __builtin_altivec_vcmpequd_p(
12867 __CR6_EQ_REV, (vector
signed long long)__a, (vector
signed long long)__b);
12870 static int __ATTRS_o_ai vec_any_eq(vector
bool long long __a,
12871 vector
unsigned long long __b) {
12872 return __builtin_altivec_vcmpequd_p(
12873 __CR6_EQ_REV, (vector
signed long long)__a, (vector
signed long long)__b);
12876 static int __ATTRS_o_ai vec_any_eq(vector
bool long long __a,
12877 vector
bool long long __b) {
12878 return __builtin_altivec_vcmpequd_p(
12879 __CR6_EQ_REV, (vector
signed long long)__a, (vector
signed long long)__b);
12883 static int __ATTRS_o_ai vec_any_eq(vector
float __a, vector
float __b) {
12885 return __builtin_vsx_xvcmpeqsp_p(
__CR6_EQ_REV, __a, __b);
12887 return __builtin_altivec_vcmpeqfp_p(
__CR6_EQ_REV, __a, __b);
12892 static int __ATTRS_o_ai vec_any_eq(vector
double __a, vector
double __b) {
12893 return __builtin_vsx_xvcmpeqdp_p(
__CR6_EQ_REV, __a, __b);
12899 static int __ATTRS_o_ai vec_any_ge(vector
signed char __a,
12900 vector
signed char __b) {
12901 return __builtin_altivec_vcmpgtsb_p(
__CR6_LT_REV, __b, __a);
12904 static int __ATTRS_o_ai vec_any_ge(vector
signed char __a,
12905 vector
bool char __b) {
12906 return __builtin_altivec_vcmpgtsb_p(
__CR6_LT_REV, (vector
signed char)__b,
12910 static int __ATTRS_o_ai vec_any_ge(vector
unsigned char __a,
12911 vector
unsigned char __b) {
12912 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, __b, __a);
12915 static int __ATTRS_o_ai vec_any_ge(vector
unsigned char __a,
12916 vector
bool char __b) {
12917 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, (vector
unsigned char)__b,
12921 static int __ATTRS_o_ai vec_any_ge(vector
bool char __a,
12922 vector
signed char __b) {
12923 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, (vector
unsigned char)__b,
12924 (vector
unsigned char)__a);
12927 static int __ATTRS_o_ai vec_any_ge(vector
bool char __a,
12928 vector
unsigned char __b) {
12929 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, __b,
12930 (vector
unsigned char)__a);
12933 static int __ATTRS_o_ai vec_any_ge(vector
bool char __a, vector
bool char __b) {
12934 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, (vector
unsigned char)__b,
12935 (vector
unsigned char)__a);
12938 static int __ATTRS_o_ai vec_any_ge(vector
short __a, vector
short __b) {
12939 return __builtin_altivec_vcmpgtsh_p(
__CR6_LT_REV, __b, __a);
12942 static int __ATTRS_o_ai vec_any_ge(vector
short __a, vector
bool short __b) {
12943 return __builtin_altivec_vcmpgtsh_p(
__CR6_LT_REV, (vector
short)__b, __a);
12946 static int __ATTRS_o_ai vec_any_ge(vector
unsigned short __a,
12947 vector
unsigned short __b) {
12948 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, __b, __a);
12951 static int __ATTRS_o_ai vec_any_ge(vector
unsigned short __a,
12952 vector
bool short __b) {
12953 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, (vector
unsigned short)__b,
12957 static int __ATTRS_o_ai vec_any_ge(vector
bool short __a, vector
short __b) {
12958 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, (vector
unsigned short)__b,
12959 (vector
unsigned short)__a);
12962 static int __ATTRS_o_ai vec_any_ge(vector
bool short __a,
12963 vector
unsigned short __b) {
12964 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, __b,
12965 (vector
unsigned short)__a);
12968 static int __ATTRS_o_ai vec_any_ge(vector
bool short __a,
12969 vector
bool short __b) {
12970 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, (vector
unsigned short)__b,
12971 (vector
unsigned short)__a);
12974 static int __ATTRS_o_ai vec_any_ge(vector
int __a, vector
int __b) {
12975 return __builtin_altivec_vcmpgtsw_p(
__CR6_LT_REV, __b, __a);
12978 static int __ATTRS_o_ai vec_any_ge(vector
int __a, vector
bool int __b) {
12979 return __builtin_altivec_vcmpgtsw_p(
__CR6_LT_REV, (vector
int)__b, __a);
12982 static int __ATTRS_o_ai vec_any_ge(vector
unsigned int __a,
12983 vector
unsigned int __b) {
12984 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, __b, __a);
12987 static int __ATTRS_o_ai vec_any_ge(vector
unsigned int __a,
12988 vector
bool int __b) {
12989 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, (vector
unsigned int)__b,
12993 static int __ATTRS_o_ai vec_any_ge(vector
bool int __a, vector
int __b) {
12994 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, (vector
unsigned int)__b,
12995 (vector
unsigned int)__a);
12998 static int __ATTRS_o_ai vec_any_ge(vector
bool int __a,
12999 vector
unsigned int __b) {
13000 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, __b,
13001 (vector
unsigned int)__a);
13004 static int __ATTRS_o_ai vec_any_ge(vector
bool int __a, vector
bool int __b) {
13005 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, (vector
unsigned int)__b,
13006 (vector
unsigned int)__a);
13009 #ifdef __POWER8_VECTOR__
13010 static int __ATTRS_o_ai vec_any_ge(vector
signed long long __a,
13011 vector
signed long long __b) {
13012 return __builtin_altivec_vcmpgtsd_p(
__CR6_LT_REV, __b, __a);
13015 static int __ATTRS_o_ai vec_any_ge(vector
unsigned long long __a,
13016 vector
unsigned long long __b) {
13017 return __builtin_altivec_vcmpgtud_p(
__CR6_LT_REV, __b, __a);
13020 static int __ATTRS_o_ai vec_any_ge(vector
signed long long __a,
13021 vector
bool long long __b) {
13023 (vector
signed long long)__b, __a);
13026 static int __ATTRS_o_ai vec_any_ge(vector
unsigned long long __a,
13027 vector
bool long long __b) {
13029 (vector
unsigned long long)__b, __a);
13032 static int __ATTRS_o_ai vec_any_ge(vector
bool long long __a,
13033 vector
signed long long __b) {
13035 (vector
unsigned long long)__b,
13036 (vector
unsigned long long)__a);
13039 static int __ATTRS_o_ai vec_any_ge(vector
bool long long __a,
13040 vector
unsigned long long __b) {
13041 return __builtin_altivec_vcmpgtud_p(
__CR6_LT_REV, __b,
13042 (vector
unsigned long long)__a);
13045 static int __ATTRS_o_ai vec_any_ge(vector
bool long long __a,
13046 vector
bool long long __b) {
13048 (vector
unsigned long long)__b,
13049 (vector
unsigned long long)__a);
13053 static int __ATTRS_o_ai vec_any_ge(vector
float __a, vector
float __b) {
13055 return __builtin_vsx_xvcmpgesp_p(
__CR6_EQ_REV, __a, __b);
13057 return __builtin_altivec_vcmpgefp_p(
__CR6_EQ_REV, __a, __b);
13062 static int __ATTRS_o_ai vec_any_ge(vector
double __a, vector
double __b) {
13063 return __builtin_vsx_xvcmpgedp_p(
__CR6_EQ_REV, __a, __b);
13069 static int __ATTRS_o_ai vec_any_gt(vector
signed char __a,
13070 vector
signed char __b) {
13071 return __builtin_altivec_vcmpgtsb_p(
__CR6_EQ_REV, __a, __b);
13074 static int __ATTRS_o_ai vec_any_gt(vector
signed char __a,
13075 vector
bool char __b) {
13076 return __builtin_altivec_vcmpgtsb_p(
__CR6_EQ_REV, __a,
13077 (vector
signed char)__b);
13080 static int __ATTRS_o_ai vec_any_gt(vector
unsigned char __a,
13081 vector
unsigned char __b) {
13082 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, __a, __b);
13085 static int __ATTRS_o_ai vec_any_gt(vector
unsigned char __a,
13086 vector
bool char __b) {
13087 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, __a,
13088 (vector
unsigned char)__b);
13091 static int __ATTRS_o_ai vec_any_gt(vector
bool char __a,
13092 vector
signed char __b) {
13093 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, (vector
unsigned char)__a,
13094 (vector
unsigned char)__b);
13097 static int __ATTRS_o_ai vec_any_gt(vector
bool char __a,
13098 vector
unsigned char __b) {
13099 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, (vector
unsigned char)__a,
13103 static int __ATTRS_o_ai vec_any_gt(vector
bool char __a, vector
bool char __b) {
13104 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, (vector
unsigned char)__a,
13105 (vector
unsigned char)__b);
13108 static int __ATTRS_o_ai vec_any_gt(vector
short __a, vector
short __b) {
13109 return __builtin_altivec_vcmpgtsh_p(
__CR6_EQ_REV, __a, __b);
13112 static int __ATTRS_o_ai vec_any_gt(vector
short __a, vector
bool short __b) {
13113 return __builtin_altivec_vcmpgtsh_p(
__CR6_EQ_REV, __a, (vector
short)__b);
13116 static int __ATTRS_o_ai vec_any_gt(vector
unsigned short __a,
13117 vector
unsigned short __b) {
13118 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, __a, __b);
13121 static int __ATTRS_o_ai vec_any_gt(vector
unsigned short __a,
13122 vector
bool short __b) {
13123 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, __a,
13124 (vector
unsigned short)__b);
13127 static int __ATTRS_o_ai vec_any_gt(vector
bool short __a, vector
short __b) {
13128 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, (vector
unsigned short)__a,
13129 (vector
unsigned short)__b);
13132 static int __ATTRS_o_ai vec_any_gt(vector
bool short __a,
13133 vector
unsigned short __b) {
13134 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, (vector
unsigned short)__a,
13138 static int __ATTRS_o_ai vec_any_gt(vector
bool short __a,
13139 vector
bool short __b) {
13140 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, (vector
unsigned short)__a,
13141 (vector
unsigned short)__b);
13144 static int __ATTRS_o_ai vec_any_gt(vector
int __a, vector
int __b) {
13145 return __builtin_altivec_vcmpgtsw_p(
__CR6_EQ_REV, __a, __b);
13148 static int __ATTRS_o_ai vec_any_gt(vector
int __a, vector
bool int __b) {
13149 return __builtin_altivec_vcmpgtsw_p(
__CR6_EQ_REV, __a, (vector
int)__b);
13152 static int __ATTRS_o_ai vec_any_gt(vector
unsigned int __a,
13153 vector
unsigned int __b) {
13154 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, __a, __b);
13157 static int __ATTRS_o_ai vec_any_gt(vector
unsigned int __a,
13158 vector
bool int __b) {
13159 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, __a,
13160 (vector
unsigned int)__b);
13163 static int __ATTRS_o_ai vec_any_gt(vector
bool int __a, vector
int __b) {
13164 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, (vector
unsigned int)__a,
13165 (vector
unsigned int)__b);
13168 static int __ATTRS_o_ai vec_any_gt(vector
bool int __a,
13169 vector
unsigned int __b) {
13170 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, (vector
unsigned int)__a,
13174 static int __ATTRS_o_ai vec_any_gt(vector
bool int __a, vector
bool int __b) {
13175 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, (vector
unsigned int)__a,
13176 (vector
unsigned int)__b);
13179 #ifdef __POWER8_VECTOR__
13180 static int __ATTRS_o_ai vec_any_gt(vector
signed long long __a,
13181 vector
signed long long __b) {
13182 return __builtin_altivec_vcmpgtsd_p(
__CR6_EQ_REV, __a, __b);
13185 static int __ATTRS_o_ai vec_any_gt(vector
unsigned long long __a,
13186 vector
unsigned long long __b) {
13187 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ_REV, __a, __b);
13190 static int __ATTRS_o_ai vec_any_gt(vector
signed long long __a,
13191 vector
bool long long __b) {
13192 return __builtin_altivec_vcmpgtsd_p(
__CR6_EQ_REV, __a,
13193 (vector
signed long long)__b);
13196 static int __ATTRS_o_ai vec_any_gt(vector
unsigned long long __a,
13197 vector
bool long long __b) {
13198 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ_REV, __a,
13199 (vector
unsigned long long)__b);
13202 static int __ATTRS_o_ai vec_any_gt(vector
bool long long __a,
13203 vector
signed long long __b) {
13205 (vector
unsigned long long)__a,
13206 (vector
unsigned long long)__b);
13209 static int __ATTRS_o_ai vec_any_gt(vector
bool long long __a,
13210 vector
unsigned long long __b) {
13212 (vector
unsigned long long)__a, __b);
13215 static int __ATTRS_o_ai vec_any_gt(vector
bool long long __a,
13216 vector
bool long long __b) {
13218 (vector
unsigned long long)__a,
13219 (vector
unsigned long long)__b);
13223 static int __ATTRS_o_ai vec_any_gt(vector
float __a, vector
float __b) {
13225 return __builtin_vsx_xvcmpgtsp_p(
__CR6_EQ_REV, __a, __b);
13227 return __builtin_altivec_vcmpgtfp_p(
__CR6_EQ_REV, __a, __b);
13232 static int __ATTRS_o_ai vec_any_gt(vector
double __a, vector
double __b) {
13233 return __builtin_vsx_xvcmpgtdp_p(
__CR6_EQ_REV, __a, __b);
13239 static int __ATTRS_o_ai vec_any_le(vector
signed char __a,
13240 vector
signed char __b) {
13241 return __builtin_altivec_vcmpgtsb_p(
__CR6_LT_REV, __a, __b);
13244 static int __ATTRS_o_ai vec_any_le(vector
signed char __a,
13245 vector
bool char __b) {
13246 return __builtin_altivec_vcmpgtsb_p(
__CR6_LT_REV, __a,
13247 (vector
signed char)__b);
13250 static int __ATTRS_o_ai vec_any_le(vector
unsigned char __a,
13251 vector
unsigned char __b) {
13252 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, __a, __b);
13255 static int __ATTRS_o_ai vec_any_le(vector
unsigned char __a,
13256 vector
bool char __b) {
13257 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, __a,
13258 (vector
unsigned char)__b);
13261 static int __ATTRS_o_ai vec_any_le(vector
bool char __a,
13262 vector
signed char __b) {
13263 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, (vector
unsigned char)__a,
13264 (vector
unsigned char)__b);
13267 static int __ATTRS_o_ai vec_any_le(vector
bool char __a,
13268 vector
unsigned char __b) {
13269 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, (vector
unsigned char)__a,
13273 static int __ATTRS_o_ai vec_any_le(vector
bool char __a, vector
bool char __b) {
13274 return __builtin_altivec_vcmpgtub_p(
__CR6_LT_REV, (vector
unsigned char)__a,
13275 (vector
unsigned char)__b);
13278 static int __ATTRS_o_ai vec_any_le(vector
short __a, vector
short __b) {
13279 return __builtin_altivec_vcmpgtsh_p(
__CR6_LT_REV, __a, __b);
13282 static int __ATTRS_o_ai vec_any_le(vector
short __a, vector
bool short __b) {
13283 return __builtin_altivec_vcmpgtsh_p(
__CR6_LT_REV, __a, (vector
short)__b);
13286 static int __ATTRS_o_ai vec_any_le(vector
unsigned short __a,
13287 vector
unsigned short __b) {
13288 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, __a, __b);
13291 static int __ATTRS_o_ai vec_any_le(vector
unsigned short __a,
13292 vector
bool short __b) {
13293 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, __a,
13294 (vector
unsigned short)__b);
13297 static int __ATTRS_o_ai vec_any_le(vector
bool short __a, vector
short __b) {
13298 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, (vector
unsigned short)__a,
13299 (vector
unsigned short)__b);
13302 static int __ATTRS_o_ai vec_any_le(vector
bool short __a,
13303 vector
unsigned short __b) {
13304 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, (vector
unsigned short)__a,
13308 static int __ATTRS_o_ai vec_any_le(vector
bool short __a,
13309 vector
bool short __b) {
13310 return __builtin_altivec_vcmpgtuh_p(
__CR6_LT_REV, (vector
unsigned short)__a,
13311 (vector
unsigned short)__b);
13314 static int __ATTRS_o_ai vec_any_le(vector
int __a, vector
int __b) {
13315 return __builtin_altivec_vcmpgtsw_p(
__CR6_LT_REV, __a, __b);
13318 static int __ATTRS_o_ai vec_any_le(vector
int __a, vector
bool int __b) {
13319 return __builtin_altivec_vcmpgtsw_p(
__CR6_LT_REV, __a, (vector
int)__b);
13322 static int __ATTRS_o_ai vec_any_le(vector
unsigned int __a,
13323 vector
unsigned int __b) {
13324 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, __a, __b);
13327 static int __ATTRS_o_ai vec_any_le(vector
unsigned int __a,
13328 vector
bool int __b) {
13329 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, __a,
13330 (vector
unsigned int)__b);
13333 static int __ATTRS_o_ai vec_any_le(vector
bool int __a, vector
int __b) {
13334 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, (vector
unsigned int)__a,
13335 (vector
unsigned int)__b);
13338 static int __ATTRS_o_ai vec_any_le(vector
bool int __a,
13339 vector
unsigned int __b) {
13340 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, (vector
unsigned int)__a,
13344 static int __ATTRS_o_ai vec_any_le(vector
bool int __a, vector
bool int __b) {
13345 return __builtin_altivec_vcmpgtuw_p(
__CR6_LT_REV, (vector
unsigned int)__a,
13346 (vector
unsigned int)__b);
13349 #ifdef __POWER8_VECTOR__
13350 static int __ATTRS_o_ai vec_any_le(vector
signed long long __a,
13351 vector
signed long long __b) {
13352 return __builtin_altivec_vcmpgtsd_p(
__CR6_LT_REV, __a, __b);
13355 static int __ATTRS_o_ai vec_any_le(vector
unsigned long long __a,
13356 vector
unsigned long long __b) {
13357 return __builtin_altivec_vcmpgtud_p(
__CR6_LT_REV, __a, __b);
13360 static int __ATTRS_o_ai vec_any_le(vector
signed long long __a,
13361 vector
bool long long __b) {
13362 return __builtin_altivec_vcmpgtsd_p(
__CR6_LT_REV, __a,
13363 (vector
signed long long)__b);
13366 static int __ATTRS_o_ai vec_any_le(vector
unsigned long long __a,
13367 vector
bool long long __b) {
13368 return __builtin_altivec_vcmpgtud_p(
__CR6_LT_REV, __a,
13369 (vector
unsigned long long)__b);
13372 static int __ATTRS_o_ai vec_any_le(vector
bool long long __a,
13373 vector
signed long long __b) {
13375 (vector
unsigned long long)__a,
13376 (vector
unsigned long long)__b);
13379 static int __ATTRS_o_ai vec_any_le(vector
bool long long __a,
13380 vector
unsigned long long __b) {
13382 (vector
unsigned long long)__a, __b);
13385 static int __ATTRS_o_ai vec_any_le(vector
bool long long __a,
13386 vector
bool long long __b) {
13388 (vector
unsigned long long)__a,
13389 (vector
unsigned long long)__b);
13393 static int __ATTRS_o_ai vec_any_le(vector
float __a, vector
float __b) {
13395 return __builtin_vsx_xvcmpgesp_p(
__CR6_EQ_REV, __b, __a);
13397 return __builtin_altivec_vcmpgefp_p(
__CR6_EQ_REV, __b, __a);
13402 static int __ATTRS_o_ai vec_any_le(vector
double __a, vector
double __b) {
13403 return __builtin_vsx_xvcmpgedp_p(
__CR6_EQ_REV, __b, __a);
13409 static int __ATTRS_o_ai vec_any_lt(vector
signed char __a,
13410 vector
signed char __b) {
13411 return __builtin_altivec_vcmpgtsb_p(
__CR6_EQ_REV, __b, __a);
13414 static int __ATTRS_o_ai vec_any_lt(vector
signed char __a,
13415 vector
bool char __b) {
13416 return __builtin_altivec_vcmpgtsb_p(
__CR6_EQ_REV, (vector
signed char)__b,
13420 static int __ATTRS_o_ai vec_any_lt(vector
unsigned char __a,
13421 vector
unsigned char __b) {
13422 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, __b, __a);
13425 static int __ATTRS_o_ai vec_any_lt(vector
unsigned char __a,
13426 vector
bool char __b) {
13427 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, (vector
unsigned char)__b,
13431 static int __ATTRS_o_ai vec_any_lt(vector
bool char __a,
13432 vector
signed char __b) {
13433 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, (vector
unsigned char)__b,
13434 (vector
unsigned char)__a);
13437 static int __ATTRS_o_ai vec_any_lt(vector
bool char __a,
13438 vector
unsigned char __b) {
13439 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, __b,
13440 (vector
unsigned char)__a);
13443 static int __ATTRS_o_ai vec_any_lt(vector
bool char __a, vector
bool char __b) {
13444 return __builtin_altivec_vcmpgtub_p(
__CR6_EQ_REV, (vector
unsigned char)__b,
13445 (vector
unsigned char)__a);
13448 static int __ATTRS_o_ai vec_any_lt(vector
short __a, vector
short __b) {
13449 return __builtin_altivec_vcmpgtsh_p(
__CR6_EQ_REV, __b, __a);
13452 static int __ATTRS_o_ai vec_any_lt(vector
short __a, vector
bool short __b) {
13453 return __builtin_altivec_vcmpgtsh_p(
__CR6_EQ_REV, (vector
short)__b, __a);
13456 static int __ATTRS_o_ai vec_any_lt(vector
unsigned short __a,
13457 vector
unsigned short __b) {
13458 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, __b, __a);
13461 static int __ATTRS_o_ai vec_any_lt(vector
unsigned short __a,
13462 vector
bool short __b) {
13463 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, (vector
unsigned short)__b,
13467 static int __ATTRS_o_ai vec_any_lt(vector
bool short __a, vector
short __b) {
13468 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, (vector
unsigned short)__b,
13469 (vector
unsigned short)__a);
13472 static int __ATTRS_o_ai vec_any_lt(vector
bool short __a,
13473 vector
unsigned short __b) {
13474 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, __b,
13475 (vector
unsigned short)__a);
13478 static int __ATTRS_o_ai vec_any_lt(vector
bool short __a,
13479 vector
bool short __b) {
13480 return __builtin_altivec_vcmpgtuh_p(
__CR6_EQ_REV, (vector
unsigned short)__b,
13481 (vector
unsigned short)__a);
13484 static int __ATTRS_o_ai vec_any_lt(vector
int __a, vector
int __b) {
13485 return __builtin_altivec_vcmpgtsw_p(
__CR6_EQ_REV, __b, __a);
13488 static int __ATTRS_o_ai vec_any_lt(vector
int __a, vector
bool int __b) {
13489 return __builtin_altivec_vcmpgtsw_p(
__CR6_EQ_REV, (vector
int)__b, __a);
13492 static int __ATTRS_o_ai vec_any_lt(vector
unsigned int __a,
13493 vector
unsigned int __b) {
13494 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, __b, __a);
13497 static int __ATTRS_o_ai vec_any_lt(vector
unsigned int __a,
13498 vector
bool int __b) {
13499 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, (vector
unsigned int)__b,
13503 static int __ATTRS_o_ai vec_any_lt(vector
bool int __a, vector
int __b) {
13504 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, (vector
unsigned int)__b,
13505 (vector
unsigned int)__a);
13508 static int __ATTRS_o_ai vec_any_lt(vector
bool int __a,
13509 vector
unsigned int __b) {
13510 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, __b,
13511 (vector
unsigned int)__a);
13514 static int __ATTRS_o_ai vec_any_lt(vector
bool int __a, vector
bool int __b) {
13515 return __builtin_altivec_vcmpgtuw_p(
__CR6_EQ_REV, (vector
unsigned int)__b,
13516 (vector
unsigned int)__a);
13519 #ifdef __POWER8_VECTOR__
13520 static int __ATTRS_o_ai vec_any_lt(vector
signed long long __a,
13521 vector
signed long long __b) {
13522 return __builtin_altivec_vcmpgtsd_p(
__CR6_EQ_REV, __b, __a);
13525 static int __ATTRS_o_ai vec_any_lt(vector
unsigned long long __a,
13526 vector
unsigned long long __b) {
13527 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ_REV, __b, __a);
13530 static int __ATTRS_o_ai vec_any_lt(vector
signed long long __a,
13531 vector
bool long long __b) {
13533 (vector
signed long long)__b, __a);
13536 static int __ATTRS_o_ai vec_any_lt(vector
unsigned long long __a,
13537 vector
bool long long __b) {
13539 (vector
unsigned long long)__b, __a);
13542 static int __ATTRS_o_ai vec_any_lt(vector
bool long long __a,
13543 vector
signed long long __b) {
13545 (vector
unsigned long long)__b,
13546 (vector
unsigned long long)__a);
13549 static int __ATTRS_o_ai vec_any_lt(vector
bool long long __a,
13550 vector
unsigned long long __b) {
13551 return __builtin_altivec_vcmpgtud_p(
__CR6_EQ_REV, __b,
13552 (vector
unsigned long long)__a);
13555 static int __ATTRS_o_ai vec_any_lt(vector
bool long long __a,
13556 vector
bool long long __b) {
13558 (vector
unsigned long long)__b,
13559 (vector
unsigned long long)__a);
13563 static int __ATTRS_o_ai vec_any_lt(vector
float __a, vector
float __b) {
13565 return __builtin_vsx_xvcmpgtsp_p(
__CR6_EQ_REV, __b, __a);
13567 return __builtin_altivec_vcmpgtfp_p(
__CR6_EQ_REV, __b, __a);
13572 static int __ATTRS_o_ai vec_any_lt(vector
double __a, vector
double __b) {
13573 return __builtin_vsx_xvcmpgtdp_p(
__CR6_EQ_REV, __b, __a);
13579 static int __attribute__((__always_inline__)) vec_any_nan(vector
float __a) {
13580 return __builtin_altivec_vcmpeqfp_p(
__CR6_LT_REV, __a, __a);
13585 static int __ATTRS_o_ai vec_any_ne(vector
signed char __a,
13586 vector
signed char __b) {
13587 return __builtin_altivec_vcmpequb_p(
__CR6_LT_REV, (vector
char)__a,
13591 static int __ATTRS_o_ai vec_any_ne(vector
signed char __a,
13592 vector
bool char __b) {
13593 return __builtin_altivec_vcmpequb_p(
__CR6_LT_REV, (vector
char)__a,
13597 static int __ATTRS_o_ai vec_any_ne(vector
unsigned char __a,
13598 vector
unsigned char __b) {
13599 return __builtin_altivec_vcmpequb_p(
__CR6_LT_REV, (vector
char)__a,
13603 static int __ATTRS_o_ai vec_any_ne(vector
unsigned char __a,
13604 vector
bool char __b) {
13605 return __builtin_altivec_vcmpequb_p(
__CR6_LT_REV, (vector
char)__a,
13609 static int __ATTRS_o_ai vec_any_ne(vector
bool char __a,
13610 vector
signed char __b) {
13611 return __builtin_altivec_vcmpequb_p(
__CR6_LT_REV, (vector
char)__a,
13615 static int __ATTRS_o_ai vec_any_ne(vector
bool char __a,
13616 vector
unsigned char __b) {
13617 return __builtin_altivec_vcmpequb_p(
__CR6_LT_REV, (vector
char)__a,
13621 static int __ATTRS_o_ai vec_any_ne(vector
bool char __a, vector
bool char __b) {
13622 return __builtin_altivec_vcmpequb_p(
__CR6_LT_REV, (vector
char)__a,
13626 static int __ATTRS_o_ai vec_any_ne(vector
short __a, vector
short __b) {
13627 return __builtin_altivec_vcmpequh_p(
__CR6_LT_REV, __a, __b);
13630 static int __ATTRS_o_ai vec_any_ne(vector
short __a, vector
bool short __b) {
13631 return __builtin_altivec_vcmpequh_p(
__CR6_LT_REV, __a, (vector
short)__b);
13634 static int __ATTRS_o_ai vec_any_ne(vector
unsigned short __a,
13635 vector
unsigned short __b) {
13636 return __builtin_altivec_vcmpequh_p(
__CR6_LT_REV, (vector
short)__a,
13637 (vector
short)__b);
13640 static int __ATTRS_o_ai vec_any_ne(vector
unsigned short __a,
13641 vector
bool short __b) {
13642 return __builtin_altivec_vcmpequh_p(
__CR6_LT_REV, (vector
short)__a,
13643 (vector
short)__b);
13646 static int __ATTRS_o_ai vec_any_ne(vector
bool short __a, vector
short __b) {
13647 return __builtin_altivec_vcmpequh_p(
__CR6_LT_REV, (vector
short)__a,
13648 (vector
short)__b);
13651 static int __ATTRS_o_ai vec_any_ne(vector
bool short __a,
13652 vector
unsigned short __b) {
13653 return __builtin_altivec_vcmpequh_p(
__CR6_LT_REV, (vector
short)__a,
13654 (vector
short)__b);
13657 static int __ATTRS_o_ai vec_any_ne(vector
bool short __a,
13658 vector
bool short __b) {
13659 return __builtin_altivec_vcmpequh_p(
__CR6_LT_REV, (vector
short)__a,
13660 (vector
short)__b);
13663 static int __ATTRS_o_ai vec_any_ne(vector pixel __a, vector pixel __b) {
13664 return __builtin_altivec_vcmpequh_p(
__CR6_LT_REV, (vector
short)__a,
13665 (vector
short)__b);
13668 static int __ATTRS_o_ai vec_any_ne(vector
int __a, vector
int __b) {
13669 return __builtin_altivec_vcmpequw_p(
__CR6_LT_REV, __a, __b);
13672 static int __ATTRS_o_ai vec_any_ne(vector
int __a, vector
bool int __b) {
13673 return __builtin_altivec_vcmpequw_p(
__CR6_LT_REV, __a, (vector
int)__b);
13676 static int __ATTRS_o_ai vec_any_ne(vector
unsigned int __a,
13677 vector
unsigned int __b) {
13678 return __builtin_altivec_vcmpequw_p(
__CR6_LT_REV, (vector
int)__a,
13682 static int __ATTRS_o_ai vec_any_ne(vector
unsigned int __a,
13683 vector
bool int __b) {
13684 return __builtin_altivec_vcmpequw_p(
__CR6_LT_REV, (vector
int)__a,
13688 static int __ATTRS_o_ai vec_any_ne(vector
bool int __a, vector
int __b) {
13689 return __builtin_altivec_vcmpequw_p(
__CR6_LT_REV, (vector
int)__a,
13693 static int __ATTRS_o_ai vec_any_ne(vector
bool int __a,
13694 vector
unsigned int __b) {
13695 return __builtin_altivec_vcmpequw_p(
__CR6_LT_REV, (vector
int)__a,
13699 static int __ATTRS_o_ai vec_any_ne(vector
bool int __a, vector
bool int __b) {
13700 return __builtin_altivec_vcmpequw_p(
__CR6_LT_REV, (vector
int)__a,
13704 #ifdef __POWER8_VECTOR__
13705 static int __ATTRS_o_ai vec_any_ne(vector
signed long long __a,
13706 vector
signed long long __b) {
13707 return __builtin_altivec_vcmpequd_p(
__CR6_LT_REV, __a, __b);
13710 static int __ATTRS_o_ai vec_any_ne(vector
unsigned long long __a,
13711 vector
unsigned long long __b) {
13712 return __builtin_altivec_vcmpequd_p(
__CR6_LT_REV, (vector
long long)__a,
13713 (vector
long long)__b);
13716 static int __ATTRS_o_ai vec_any_ne(vector
signed long long __a,
13717 vector
bool long long __b) {
13718 return __builtin_altivec_vcmpequd_p(
__CR6_LT_REV, __a,
13719 (vector
signed long long)__b);
13722 static int __ATTRS_o_ai vec_any_ne(vector
unsigned long long __a,
13723 vector
bool long long __b) {
13724 return __builtin_altivec_vcmpequd_p(
13725 __CR6_LT_REV, (vector
signed long long)__a, (vector
signed long long)__b);
13728 static int __ATTRS_o_ai vec_any_ne(vector
bool long long __a,
13729 vector
signed long long __b) {
13730 return __builtin_altivec_vcmpequd_p(
13731 __CR6_LT_REV, (vector
signed long long)__a, (vector
signed long long)__b);
13734 static int __ATTRS_o_ai vec_any_ne(vector
bool long long __a,
13735 vector
unsigned long long __b) {
13736 return __builtin_altivec_vcmpequd_p(
13737 __CR6_LT_REV, (vector
signed long long)__a, (vector
signed long long)__b);
13740 static int __ATTRS_o_ai vec_any_ne(vector
bool long long __a,
13741 vector
bool long long __b) {
13742 return __builtin_altivec_vcmpequd_p(
13743 __CR6_LT_REV, (vector
signed long long)__a, (vector
signed long long)__b);
13747 static int __ATTRS_o_ai vec_any_ne(vector
float __a, vector
float __b) {
13749 return __builtin_vsx_xvcmpeqsp_p(
__CR6_LT_REV, __a, __b);
13751 return __builtin_altivec_vcmpeqfp_p(
__CR6_LT_REV, __a, __b);
13756 static int __ATTRS_o_ai vec_any_ne(vector
double __a, vector
double __b) {
13757 return __builtin_vsx_xvcmpeqdp_p(
__CR6_LT_REV, __a, __b);
13764 vec_any_nge(vector
float __a, vector
float __b) {
13765 return __builtin_altivec_vcmpgefp_p(
__CR6_LT_REV, __a, __b);
13771 vec_any_ngt(vector
float __a, vector
float __b) {
13772 return __builtin_altivec_vcmpgtfp_p(
__CR6_LT_REV, __a, __b);
13778 vec_any_nle(vector
float __a, vector
float __b) {
13779 return __builtin_altivec_vcmpgefp_p(
__CR6_LT_REV, __b, __a);
13785 vec_any_nlt(vector
float __a, vector
float __b) {
13786 return __builtin_altivec_vcmpgtfp_p(
__CR6_LT_REV, __b, __a);
13792 vec_any_numeric(vector
float __a) {
13793 return __builtin_altivec_vcmpeqfp_p(
__CR6_EQ_REV, __a, __a);
13799 vec_any_out(vector
float __a, vector
float __b) {
13800 return __builtin_altivec_vcmpbfp_p(
__CR6_EQ_REV, __a, __b);
13817 #define vec_sbox_be __builtin_altivec_crypto_vsbox
13818 #define vec_cipher_be __builtin_altivec_crypto_vcipher
13819 #define vec_cipherlast_be __builtin_altivec_crypto_vcipherlast
13820 #define vec_ncipher_be __builtin_altivec_crypto_vncipher
13821 #define vec_ncipherlast_be __builtin_altivec_crypto_vncipherlast
13823 static vector
unsigned long long __attribute__((__always_inline__))
13824 __builtin_crypto_vsbox(vector
unsigned long long __a) {
13825 return __builtin_altivec_crypto_vsbox(__a);
13828 static vector
unsigned long long __attribute__((__always_inline__))
13829 __builtin_crypto_vcipher(vector
unsigned long long __a,
13830 vector
unsigned long long __b) {
13831 return __builtin_altivec_crypto_vcipher(__a, __b);
13834 static vector
unsigned long long __attribute__((__always_inline__))
13835 __builtin_crypto_vcipherlast(vector
unsigned long long __a,
13836 vector
unsigned long long __b) {
13837 return __builtin_altivec_crypto_vcipherlast(__a, __b);
13840 static vector
unsigned long long __attribute__((__always_inline__))
13841 __builtin_crypto_vncipher(vector
unsigned long long __a,
13842 vector
unsigned long long __b) {
13843 return __builtin_altivec_crypto_vncipher(__a, __b);
13846 static vector
unsigned long long __attribute__((__always_inline__))
13847 __builtin_crypto_vncipherlast(vector
unsigned long long __a,
13848 vector
unsigned long long __b) {
13849 return __builtin_altivec_crypto_vncipherlast(__a, __b);
13852 #define __builtin_crypto_vshasigmad __builtin_altivec_crypto_vshasigmad
13853 #define __builtin_crypto_vshasigmaw __builtin_altivec_crypto_vshasigmaw
13855 #define vec_shasigma_be(X, Y, Z) \
13856 _Generic((X), vector unsigned int: __builtin_crypto_vshasigmaw, \
13857 vector unsigned long long: __builtin_crypto_vshasigmad) \
13861 #ifdef __POWER8_VECTOR__
13863 __builtin_crypto_vpermxor(vector
unsigned char __a, vector
unsigned char __b,
13864 vector
unsigned char __c) {
13865 return __builtin_altivec_crypto_vpermxor(__a, __b, __c);
13869 __builtin_crypto_vpermxor(vector
unsigned short __a, vector
unsigned short __b,
13870 vector
unsigned short __c) {
13871 return (vector
unsigned short)__builtin_altivec_crypto_vpermxor(
13872 (vector
unsigned char)__a, (vector
unsigned char)__b,
13873 (vector
unsigned char)__c);
13876 static vector
unsigned int __ATTRS_o_ai __builtin_crypto_vpermxor(
13877 vector
unsigned int __a, vector
unsigned int __b, vector
unsigned int __c) {
13878 return (vector
unsigned int)__builtin_altivec_crypto_vpermxor(
13879 (vector
unsigned char)__a, (vector
unsigned char)__b,
13880 (vector
unsigned char)__c);
13883 static vector
unsigned long long __ATTRS_o_ai __builtin_crypto_vpermxor(
13884 vector
unsigned long long __a, vector
unsigned long long __b,
13885 vector
unsigned long long __c) {
13886 return (vector
unsigned long long)__builtin_altivec_crypto_vpermxor(
13887 (vector
unsigned char)__a, (vector
unsigned char)__b,
13888 (vector
unsigned char)__c);
13892 __builtin_crypto_vpmsumb(vector
unsigned char __a, vector
unsigned char __b) {
13893 return __builtin_altivec_crypto_vpmsumb(__a, __b);
13897 __builtin_crypto_vpmsumb(vector
unsigned short __a, vector
unsigned short __b) {
13898 return __builtin_altivec_crypto_vpmsumh(__a, __b);
13902 __builtin_crypto_vpmsumb(vector
unsigned int __a, vector
unsigned int __b) {
13903 return __builtin_altivec_crypto_vpmsumw(__a, __b);
13907 __builtin_crypto_vpmsumb(vector
unsigned long long __a,
13908 vector
unsigned long long __b) {
13909 return __builtin_altivec_crypto_vpmsumd(__a, __b);
13912 static vector
signed char __ATTRS_o_ai vec_vgbbd (vector
signed char __a)
13914 return __builtin_altivec_vgbbd((vector
unsigned char) __a);
13917 #define vec_pmsum_be __builtin_crypto_vpmsumb
13918 #define vec_gb __builtin_altivec_vgbbd
13920 static vector
unsigned char __ATTRS_o_ai vec_vgbbd (vector
unsigned char __a)
13922 return __builtin_altivec_vgbbd(__a);
13926 vec_vbpermq (vector
signed char __a, vector
signed char __b)
13928 return __builtin_altivec_vbpermq((vector
unsigned char) __a,
13929 (vector
unsigned char) __b);
13933 vec_vbpermq (vector
unsigned char __a, vector
unsigned char __b)
13935 return __builtin_altivec_vbpermq(__a, __b);
13938 #ifdef __powerpc64__
13939 static vector
unsigned long long __attribute__((__always_inline__))
13940 vec_bperm (vector
unsigned __int128 __a, vector
unsigned char __b) {
13941 return __builtin_altivec_vbpermq((vector
unsigned char) __a,
13942 (vector
unsigned char) __b);
13947 #undef __ATTRS_o_ai
#define __CR6_LT_REV
Definition: altivec.h:35
#define __CR6_EQ_REV
Definition: altivec.h:33
#define __CR6_LT
Definition: altivec.h:34
static vector float vector float __b
Definition: altivec.h:419
char __v64qi __attribute__((__vector_size__(64)))
Definition: avx512bwintrin.h:33
#define __CR6_EQ
Definition: altivec.h:32
#define __ATTRS_o_ai
Definition: altivec.h:37
static void int int __c
Definition: altivec.h:2051