1 /*===---- altivec.h - Standard header for type generic math ---------------===*\
3 * Permission is hereby granted, free of charge, to any person obtaining a copy
4 * of this software and associated documentation files (the "Software"), to deal
5 * in the Software without restriction, including without limitation the rights
6 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 * copies of the Software, and to permit persons to whom the Software is
8 * furnished to do so, subject to the following conditions:
10 * The above copyright notice and this permission notice shall be included in
11 * all copies or substantial portions of the Software.
13 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 \*===----------------------------------------------------------------------===*/
27 #error "AltiVec support not enabled"
30 /* constants for mapping CR6 bits to predicate result. */
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
40 vec_perm(vector signed char __a, vector signed char __b, vector unsigned char __c);
42 static vector unsigned char __ATTRS_o_ai
43 vec_perm(vector unsigned char __a,
44 vector unsigned char __b,
45 vector unsigned char __c);
47 static vector bool char __ATTRS_o_ai
48 vec_perm(vector bool char __a, vector bool char __b, vector unsigned char __c);
50 static vector short __ATTRS_o_ai
51 vec_perm(vector short __a, vector short __b, vector unsigned char __c);
53 static vector unsigned short __ATTRS_o_ai
54 vec_perm(vector unsigned short __a,
55 vector unsigned short __b,
56 vector unsigned char __c);
58 static vector bool short __ATTRS_o_ai
59 vec_perm(vector bool short __a, vector bool short __b, vector unsigned char __c);
61 static vector pixel __ATTRS_o_ai
62 vec_perm(vector pixel __a, vector pixel __b, vector unsigned char __c);
64 static vector int __ATTRS_o_ai
65 vec_perm(vector int __a, vector int __b, vector unsigned char __c);
67 static vector unsigned int __ATTRS_o_ai
68 vec_perm(vector unsigned int __a, vector unsigned int __b, vector unsigned char __c);
70 static vector bool int __ATTRS_o_ai
71 vec_perm(vector bool int __a, vector bool int __b, vector unsigned char __c);
73 static vector float __ATTRS_o_ai
74 vec_perm(vector float __a, vector float __b, vector unsigned char __c);
78 #define __builtin_altivec_abs_v16qi vec_abs
79 #define __builtin_altivec_abs_v8hi vec_abs
80 #define __builtin_altivec_abs_v4si vec_abs
82 static vector signed char __ATTRS_o_ai
83 vec_abs(vector signed char __a)
85 return __builtin_altivec_vmaxsb(__a, -__a);
88 static vector signed short __ATTRS_o_ai
89 vec_abs(vector signed short __a)
91 return __builtin_altivec_vmaxsh(__a, -__a);
94 static vector signed int __ATTRS_o_ai
95 vec_abs(vector signed int __a)
97 return __builtin_altivec_vmaxsw(__a, -__a);
100 static vector float __ATTRS_o_ai
101 vec_abs(vector float __a)
103 vector unsigned int __res = (vector unsigned int)__a
104 & (vector unsigned int)(0x7FFFFFFF);
105 return (vector float)__res;
110 #define __builtin_altivec_abss_v16qi vec_abss
111 #define __builtin_altivec_abss_v8hi vec_abss
112 #define __builtin_altivec_abss_v4si vec_abss
114 static vector signed char __ATTRS_o_ai
115 vec_abss(vector signed char __a)
117 return __builtin_altivec_vmaxsb
118 (__a, __builtin_altivec_vsubsbs((vector signed char)(0), __a));
121 static vector signed short __ATTRS_o_ai
122 vec_abss(vector signed short __a)
124 return __builtin_altivec_vmaxsh
125 (__a, __builtin_altivec_vsubshs((vector signed short)(0), __a));
128 static vector signed int __ATTRS_o_ai
129 vec_abss(vector signed int __a)
131 return __builtin_altivec_vmaxsw
132 (__a, __builtin_altivec_vsubsws((vector signed int)(0), __a));
137 static vector signed char __ATTRS_o_ai
138 vec_add(vector signed char __a, vector signed char __b)
143 static vector signed char __ATTRS_o_ai
144 vec_add(vector bool char __a, vector signed char __b)
146 return (vector signed char)__a + __b;
149 static vector signed char __ATTRS_o_ai
150 vec_add(vector signed char __a, vector bool char __b)
152 return __a + (vector signed char)__b;
155 static vector unsigned char __ATTRS_o_ai
156 vec_add(vector unsigned char __a, vector unsigned char __b)
161 static vector unsigned char __ATTRS_o_ai
162 vec_add(vector bool char __a, vector unsigned char __b)
164 return (vector unsigned char)__a + __b;
167 static vector unsigned char __ATTRS_o_ai
168 vec_add(vector unsigned char __a, vector bool char __b)
170 return __a + (vector unsigned char)__b;
173 static vector short __ATTRS_o_ai
174 vec_add(vector short __a, vector short __b)
179 static vector short __ATTRS_o_ai
180 vec_add(vector bool short __a, vector short __b)
182 return (vector short)__a + __b;
185 static vector short __ATTRS_o_ai
186 vec_add(vector short __a, vector bool short __b)
188 return __a + (vector short)__b;
191 static vector unsigned short __ATTRS_o_ai
192 vec_add(vector unsigned short __a, vector unsigned short __b)
197 static vector unsigned short __ATTRS_o_ai
198 vec_add(vector bool short __a, vector unsigned short __b)
200 return (vector unsigned short)__a + __b;
203 static vector unsigned short __ATTRS_o_ai
204 vec_add(vector unsigned short __a, vector bool short __b)
206 return __a + (vector unsigned short)__b;
209 static vector int __ATTRS_o_ai
210 vec_add(vector int __a, vector int __b)
215 static vector int __ATTRS_o_ai
216 vec_add(vector bool int __a, vector int __b)
218 return (vector int)__a + __b;
221 static vector int __ATTRS_o_ai
222 vec_add(vector int __a, vector bool int __b)
224 return __a + (vector int)__b;
227 static vector unsigned int __ATTRS_o_ai
228 vec_add(vector unsigned int __a, vector unsigned int __b)
233 static vector unsigned int __ATTRS_o_ai
234 vec_add(vector bool int __a, vector unsigned int __b)
236 return (vector unsigned int)__a + __b;
239 static vector unsigned int __ATTRS_o_ai
240 vec_add(vector unsigned int __a, vector bool int __b)
242 return __a + (vector unsigned int)__b;
245 static vector float __ATTRS_o_ai
246 vec_add(vector float __a, vector float __b)
253 #define __builtin_altivec_vaddubm vec_vaddubm
255 static vector signed char __ATTRS_o_ai
256 vec_vaddubm(vector signed char __a, vector signed char __b)
261 static vector signed char __ATTRS_o_ai
262 vec_vaddubm(vector bool char __a, vector signed char __b)
264 return (vector signed char)__a + __b;
267 static vector signed char __ATTRS_o_ai
268 vec_vaddubm(vector signed char __a, vector bool char __b)
270 return __a + (vector signed char)__b;
273 static vector unsigned char __ATTRS_o_ai
274 vec_vaddubm(vector unsigned char __a, vector unsigned char __b)
279 static vector unsigned char __ATTRS_o_ai
280 vec_vaddubm(vector bool char __a, vector unsigned char __b)
282 return (vector unsigned char)__a + __b;
285 static vector unsigned char __ATTRS_o_ai
286 vec_vaddubm(vector unsigned char __a, vector bool char __b)
288 return __a + (vector unsigned char)__b;
293 #define __builtin_altivec_vadduhm vec_vadduhm
295 static vector short __ATTRS_o_ai
296 vec_vadduhm(vector short __a, vector short __b)
301 static vector short __ATTRS_o_ai
302 vec_vadduhm(vector bool short __a, vector short __b)
304 return (vector short)__a + __b;
307 static vector short __ATTRS_o_ai
308 vec_vadduhm(vector short __a, vector bool short __b)
310 return __a + (vector short)__b;
313 static vector unsigned short __ATTRS_o_ai
314 vec_vadduhm(vector unsigned short __a, vector unsigned short __b)
319 static vector unsigned short __ATTRS_o_ai
320 vec_vadduhm(vector bool short __a, vector unsigned short __b)
322 return (vector unsigned short)__a + __b;
325 static vector unsigned short __ATTRS_o_ai
326 vec_vadduhm(vector unsigned short __a, vector bool short __b)
328 return __a + (vector unsigned short)__b;
333 #define __builtin_altivec_vadduwm vec_vadduwm
335 static vector int __ATTRS_o_ai
336 vec_vadduwm(vector int __a, vector int __b)
341 static vector int __ATTRS_o_ai
342 vec_vadduwm(vector bool int __a, vector int __b)
344 return (vector int)__a + __b;
347 static vector int __ATTRS_o_ai
348 vec_vadduwm(vector int __a, vector bool int __b)
350 return __a + (vector int)__b;
353 static vector unsigned int __ATTRS_o_ai
354 vec_vadduwm(vector unsigned int __a, vector unsigned int __b)
359 static vector unsigned int __ATTRS_o_ai
360 vec_vadduwm(vector bool int __a, vector unsigned int __b)
362 return (vector unsigned int)__a + __b;
365 static vector unsigned int __ATTRS_o_ai
366 vec_vadduwm(vector unsigned int __a, vector bool int __b)
368 return __a + (vector unsigned int)__b;
373 #define __builtin_altivec_vaddfp vec_vaddfp
375 static vector float __attribute__((__always_inline__))
376 vec_vaddfp(vector float __a, vector float __b)
383 static vector unsigned int __attribute__((__always_inline__))
384 vec_addc(vector unsigned int __a, vector unsigned int __b)
386 return __builtin_altivec_vaddcuw(__a, __b);
391 static vector unsigned int __attribute__((__always_inline__))
392 vec_vaddcuw(vector unsigned int __a, vector unsigned int __b)
394 return __builtin_altivec_vaddcuw(__a, __b);
399 static vector signed char __ATTRS_o_ai
400 vec_adds(vector signed char __a, vector signed char __b)
402 return __builtin_altivec_vaddsbs(__a, __b);
405 static vector signed char __ATTRS_o_ai
406 vec_adds(vector bool char __a, vector signed char __b)
408 return __builtin_altivec_vaddsbs((vector signed char)__a, __b);
411 static vector signed char __ATTRS_o_ai
412 vec_adds(vector signed char __a, vector bool char __b)
414 return __builtin_altivec_vaddsbs(__a, (vector signed char)__b);
417 static vector unsigned char __ATTRS_o_ai
418 vec_adds(vector unsigned char __a, vector unsigned char __b)
420 return __builtin_altivec_vaddubs(__a, __b);
423 static vector unsigned char __ATTRS_o_ai
424 vec_adds(vector bool char __a, vector unsigned char __b)
426 return __builtin_altivec_vaddubs((vector unsigned char)__a, __b);
429 static vector unsigned char __ATTRS_o_ai
430 vec_adds(vector unsigned char __a, vector bool char __b)
432 return __builtin_altivec_vaddubs(__a, (vector unsigned char)__b);
435 static vector short __ATTRS_o_ai
436 vec_adds(vector short __a, vector short __b)
438 return __builtin_altivec_vaddshs(__a, __b);
441 static vector short __ATTRS_o_ai
442 vec_adds(vector bool short __a, vector short __b)
444 return __builtin_altivec_vaddshs((vector short)__a, __b);
447 static vector short __ATTRS_o_ai
448 vec_adds(vector short __a, vector bool short __b)
450 return __builtin_altivec_vaddshs(__a, (vector short)__b);
453 static vector unsigned short __ATTRS_o_ai
454 vec_adds(vector unsigned short __a, vector unsigned short __b)
456 return __builtin_altivec_vadduhs(__a, __b);
459 static vector unsigned short __ATTRS_o_ai
460 vec_adds(vector bool short __a, vector unsigned short __b)
462 return __builtin_altivec_vadduhs((vector unsigned short)__a, __b);
465 static vector unsigned short __ATTRS_o_ai
466 vec_adds(vector unsigned short __a, vector bool short __b)
468 return __builtin_altivec_vadduhs(__a, (vector unsigned short)__b);
471 static vector int __ATTRS_o_ai
472 vec_adds(vector int __a, vector int __b)
474 return __builtin_altivec_vaddsws(__a, __b);
477 static vector int __ATTRS_o_ai
478 vec_adds(vector bool int __a, vector int __b)
480 return __builtin_altivec_vaddsws((vector int)__a, __b);
483 static vector int __ATTRS_o_ai
484 vec_adds(vector int __a, vector bool int __b)
486 return __builtin_altivec_vaddsws(__a, (vector int)__b);
489 static vector unsigned int __ATTRS_o_ai
490 vec_adds(vector unsigned int __a, vector unsigned int __b)
492 return __builtin_altivec_vadduws(__a, __b);
495 static vector unsigned int __ATTRS_o_ai
496 vec_adds(vector bool int __a, vector unsigned int __b)
498 return __builtin_altivec_vadduws((vector unsigned int)__a, __b);
501 static vector unsigned int __ATTRS_o_ai
502 vec_adds(vector unsigned int __a, vector bool int __b)
504 return __builtin_altivec_vadduws(__a, (vector unsigned int)__b);
509 static vector signed char __ATTRS_o_ai
510 vec_vaddsbs(vector signed char __a, vector signed char __b)
512 return __builtin_altivec_vaddsbs(__a, __b);
515 static vector signed char __ATTRS_o_ai
516 vec_vaddsbs(vector bool char __a, vector signed char __b)
518 return __builtin_altivec_vaddsbs((vector signed char)__a, __b);
521 static vector signed char __ATTRS_o_ai
522 vec_vaddsbs(vector signed char __a, vector bool char __b)
524 return __builtin_altivec_vaddsbs(__a, (vector signed char)__b);
529 static vector unsigned char __ATTRS_o_ai
530 vec_vaddubs(vector unsigned char __a, vector unsigned char __b)
532 return __builtin_altivec_vaddubs(__a, __b);
535 static vector unsigned char __ATTRS_o_ai
536 vec_vaddubs(vector bool char __a, vector unsigned char __b)
538 return __builtin_altivec_vaddubs((vector unsigned char)__a, __b);
541 static vector unsigned char __ATTRS_o_ai
542 vec_vaddubs(vector unsigned char __a, vector bool char __b)
544 return __builtin_altivec_vaddubs(__a, (vector unsigned char)__b);
549 static vector short __ATTRS_o_ai
550 vec_vaddshs(vector short __a, vector short __b)
552 return __builtin_altivec_vaddshs(__a, __b);
555 static vector short __ATTRS_o_ai
556 vec_vaddshs(vector bool short __a, vector short __b)
558 return __builtin_altivec_vaddshs((vector short)__a, __b);
561 static vector short __ATTRS_o_ai
562 vec_vaddshs(vector short __a, vector bool short __b)
564 return __builtin_altivec_vaddshs(__a, (vector short)__b);
569 static vector unsigned short __ATTRS_o_ai
570 vec_vadduhs(vector unsigned short __a, vector unsigned short __b)
572 return __builtin_altivec_vadduhs(__a, __b);
575 static vector unsigned short __ATTRS_o_ai
576 vec_vadduhs(vector bool short __a, vector unsigned short __b)
578 return __builtin_altivec_vadduhs((vector unsigned short)__a, __b);
581 static vector unsigned short __ATTRS_o_ai
582 vec_vadduhs(vector unsigned short __a, vector bool short __b)
584 return __builtin_altivec_vadduhs(__a, (vector unsigned short)__b);
589 static vector int __ATTRS_o_ai
590 vec_vaddsws(vector int __a, vector int __b)
592 return __builtin_altivec_vaddsws(__a, __b);
595 static vector int __ATTRS_o_ai
596 vec_vaddsws(vector bool int __a, vector int __b)
598 return __builtin_altivec_vaddsws((vector int)__a, __b);
601 static vector int __ATTRS_o_ai
602 vec_vaddsws(vector int __a, vector bool int __b)
604 return __builtin_altivec_vaddsws(__a, (vector int)__b);
609 static vector unsigned int __ATTRS_o_ai
610 vec_vadduws(vector unsigned int __a, vector unsigned int __b)
612 return __builtin_altivec_vadduws(__a, __b);
615 static vector unsigned int __ATTRS_o_ai
616 vec_vadduws(vector bool int __a, vector unsigned int __b)
618 return __builtin_altivec_vadduws((vector unsigned int)__a, __b);
621 static vector unsigned int __ATTRS_o_ai
622 vec_vadduws(vector unsigned int __a, vector bool int __b)
624 return __builtin_altivec_vadduws(__a, (vector unsigned int)__b);
629 #define __builtin_altivec_vand vec_and
631 static vector signed char __ATTRS_o_ai
632 vec_and(vector signed char __a, vector signed char __b)
637 static vector signed char __ATTRS_o_ai
638 vec_and(vector bool char __a, vector signed char __b)
640 return (vector signed char)__a & __b;
643 static vector signed char __ATTRS_o_ai
644 vec_and(vector signed char __a, vector bool char __b)
646 return __a & (vector signed char)__b;
649 static vector unsigned char __ATTRS_o_ai
650 vec_and(vector unsigned char __a, vector unsigned char __b)
655 static vector unsigned char __ATTRS_o_ai
656 vec_and(vector bool char __a, vector unsigned char __b)
658 return (vector unsigned char)__a & __b;
661 static vector unsigned char __ATTRS_o_ai
662 vec_and(vector unsigned char __a, vector bool char __b)
664 return __a & (vector unsigned char)__b;
667 static vector bool char __ATTRS_o_ai
668 vec_and(vector bool char __a, vector bool char __b)
673 static vector short __ATTRS_o_ai
674 vec_and(vector short __a, vector short __b)
679 static vector short __ATTRS_o_ai
680 vec_and(vector bool short __a, vector short __b)
682 return (vector short)__a & __b;
685 static vector short __ATTRS_o_ai
686 vec_and(vector short __a, vector bool short __b)
688 return __a & (vector short)__b;
691 static vector unsigned short __ATTRS_o_ai
692 vec_and(vector unsigned short __a, vector unsigned short __b)
697 static vector unsigned short __ATTRS_o_ai
698 vec_and(vector bool short __a, vector unsigned short __b)
700 return (vector unsigned short)__a & __b;
703 static vector unsigned short __ATTRS_o_ai
704 vec_and(vector unsigned short __a, vector bool short __b)
706 return __a & (vector unsigned short)__b;
709 static vector bool short __ATTRS_o_ai
710 vec_and(vector bool short __a, vector bool short __b)
715 static vector int __ATTRS_o_ai
716 vec_and(vector int __a, vector int __b)
721 static vector int __ATTRS_o_ai
722 vec_and(vector bool int __a, vector int __b)
724 return (vector int)__a & __b;
727 static vector int __ATTRS_o_ai
728 vec_and(vector int __a, vector bool int __b)
730 return __a & (vector int)__b;
733 static vector unsigned int __ATTRS_o_ai
734 vec_and(vector unsigned int __a, vector unsigned int __b)
739 static vector unsigned int __ATTRS_o_ai
740 vec_and(vector bool int __a, vector unsigned int __b)
742 return (vector unsigned int)__a & __b;
745 static vector unsigned int __ATTRS_o_ai
746 vec_and(vector unsigned int __a, vector bool int __b)
748 return __a & (vector unsigned int)__b;
751 static vector bool int __ATTRS_o_ai
752 vec_and(vector bool int __a, vector bool int __b)
757 static vector float __ATTRS_o_ai
758 vec_and(vector float __a, vector float __b)
760 vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b;
761 return (vector float)__res;
764 static vector float __ATTRS_o_ai
765 vec_and(vector bool int __a, vector float __b)
767 vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b;
768 return (vector float)__res;
771 static vector float __ATTRS_o_ai
772 vec_and(vector float __a, vector bool int __b)
774 vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b;
775 return (vector float)__res;
780 static vector signed char __ATTRS_o_ai
781 vec_vand(vector signed char __a, vector signed char __b)
786 static vector signed char __ATTRS_o_ai
787 vec_vand(vector bool char __a, vector signed char __b)
789 return (vector signed char)__a & __b;
792 static vector signed char __ATTRS_o_ai
793 vec_vand(vector signed char __a, vector bool char __b)
795 return __a & (vector signed char)__b;
798 static vector unsigned char __ATTRS_o_ai
799 vec_vand(vector unsigned char __a, vector unsigned char __b)
804 static vector unsigned char __ATTRS_o_ai
805 vec_vand(vector bool char __a, vector unsigned char __b)
807 return (vector unsigned char)__a & __b;
810 static vector unsigned char __ATTRS_o_ai
811 vec_vand(vector unsigned char __a, vector bool char __b)
813 return __a & (vector unsigned char)__b;
816 static vector bool char __ATTRS_o_ai
817 vec_vand(vector bool char __a, vector bool char __b)
822 static vector short __ATTRS_o_ai
823 vec_vand(vector short __a, vector short __b)
828 static vector short __ATTRS_o_ai
829 vec_vand(vector bool short __a, vector short __b)
831 return (vector short)__a & __b;
834 static vector short __ATTRS_o_ai
835 vec_vand(vector short __a, vector bool short __b)
837 return __a & (vector short)__b;
840 static vector unsigned short __ATTRS_o_ai
841 vec_vand(vector unsigned short __a, vector unsigned short __b)
846 static vector unsigned short __ATTRS_o_ai
847 vec_vand(vector bool short __a, vector unsigned short __b)
849 return (vector unsigned short)__a & __b;
852 static vector unsigned short __ATTRS_o_ai
853 vec_vand(vector unsigned short __a, vector bool short __b)
855 return __a & (vector unsigned short)__b;
858 static vector bool short __ATTRS_o_ai
859 vec_vand(vector bool short __a, vector bool short __b)
864 static vector int __ATTRS_o_ai
865 vec_vand(vector int __a, vector int __b)
870 static vector int __ATTRS_o_ai
871 vec_vand(vector bool int __a, vector int __b)
873 return (vector int)__a & __b;
876 static vector int __ATTRS_o_ai
877 vec_vand(vector int __a, vector bool int __b)
879 return __a & (vector int)__b;
882 static vector unsigned int __ATTRS_o_ai
883 vec_vand(vector unsigned int __a, vector unsigned int __b)
888 static vector unsigned int __ATTRS_o_ai
889 vec_vand(vector bool int __a, vector unsigned int __b)
891 return (vector unsigned int)__a & __b;
894 static vector unsigned int __ATTRS_o_ai
895 vec_vand(vector unsigned int __a, vector bool int __b)
897 return __a & (vector unsigned int)__b;
900 static vector bool int __ATTRS_o_ai
901 vec_vand(vector bool int __a, vector bool int __b)
906 static vector float __ATTRS_o_ai
907 vec_vand(vector float __a, vector float __b)
909 vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b;
910 return (vector float)__res;
913 static vector float __ATTRS_o_ai
914 vec_vand(vector bool int __a, vector float __b)
916 vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b;
917 return (vector float)__res;
920 static vector float __ATTRS_o_ai
921 vec_vand(vector float __a, vector bool int __b)
923 vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b;
924 return (vector float)__res;
929 #define __builtin_altivec_vandc vec_andc
931 static vector signed char __ATTRS_o_ai
932 vec_andc(vector signed char __a, vector signed char __b)
937 static vector signed char __ATTRS_o_ai
938 vec_andc(vector bool char __a, vector signed char __b)
940 return (vector signed char)__a & ~__b;
943 static vector signed char __ATTRS_o_ai
944 vec_andc(vector signed char __a, vector bool char __b)
946 return __a & ~(vector signed char)__b;
949 static vector unsigned char __ATTRS_o_ai
950 vec_andc(vector unsigned char __a, vector unsigned char __b)
955 static vector unsigned char __ATTRS_o_ai
956 vec_andc(vector bool char __a, vector unsigned char __b)
958 return (vector unsigned char)__a & ~__b;
961 static vector unsigned char __ATTRS_o_ai
962 vec_andc(vector unsigned char __a, vector bool char __b)
964 return __a & ~(vector unsigned char)__b;
967 static vector bool char __ATTRS_o_ai
968 vec_andc(vector bool char __a, vector bool char __b)
973 static vector short __ATTRS_o_ai
974 vec_andc(vector short __a, vector short __b)
979 static vector short __ATTRS_o_ai
980 vec_andc(vector bool short __a, vector short __b)
982 return (vector short)__a & ~__b;
985 static vector short __ATTRS_o_ai
986 vec_andc(vector short __a, vector bool short __b)
988 return __a & ~(vector short)__b;
991 static vector unsigned short __ATTRS_o_ai
992 vec_andc(vector unsigned short __a, vector unsigned short __b)
997 static vector unsigned short __ATTRS_o_ai
998 vec_andc(vector bool short __a, vector unsigned short __b)
1000 return (vector unsigned short)__a & ~__b;
1003 static vector unsigned short __ATTRS_o_ai
1004 vec_andc(vector unsigned short __a, vector bool short __b)
1006 return __a & ~(vector unsigned short)__b;
1009 static vector bool short __ATTRS_o_ai
1010 vec_andc(vector bool short __a, vector bool short __b)
1015 static vector int __ATTRS_o_ai
1016 vec_andc(vector int __a, vector int __b)
1021 static vector int __ATTRS_o_ai
1022 vec_andc(vector bool int __a, vector int __b)
1024 return (vector int)__a & ~__b;
1027 static vector int __ATTRS_o_ai
1028 vec_andc(vector int __a, vector bool int __b)
1030 return __a & ~(vector int)__b;
1033 static vector unsigned int __ATTRS_o_ai
1034 vec_andc(vector unsigned int __a, vector unsigned int __b)
1039 static vector unsigned int __ATTRS_o_ai
1040 vec_andc(vector bool int __a, vector unsigned int __b)
1042 return (vector unsigned int)__a & ~__b;
1045 static vector unsigned int __ATTRS_o_ai
1046 vec_andc(vector unsigned int __a, vector bool int __b)
1048 return __a & ~(vector unsigned int)__b;
1051 static vector bool int __ATTRS_o_ai
1052 vec_andc(vector bool int __a, vector bool int __b)
1057 static vector float __ATTRS_o_ai
1058 vec_andc(vector float __a, vector float __b)
1060 vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b;
1061 return (vector float)__res;
1064 static vector float __ATTRS_o_ai
1065 vec_andc(vector bool int __a, vector float __b)
1067 vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b;
1068 return (vector float)__res;
1071 static vector float __ATTRS_o_ai
1072 vec_andc(vector float __a, vector bool int __b)
1074 vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b;
1075 return (vector float)__res;
1080 static vector signed char __ATTRS_o_ai
1081 vec_vandc(vector signed char __a, vector signed char __b)
1086 static vector signed char __ATTRS_o_ai
1087 vec_vandc(vector bool char __a, vector signed char __b)
1089 return (vector signed char)__a & ~__b;
1092 static vector signed char __ATTRS_o_ai
1093 vec_vandc(vector signed char __a, vector bool char __b)
1095 return __a & ~(vector signed char)__b;
1098 static vector unsigned char __ATTRS_o_ai
1099 vec_vandc(vector unsigned char __a, vector unsigned char __b)
1104 static vector unsigned char __ATTRS_o_ai
1105 vec_vandc(vector bool char __a, vector unsigned char __b)
1107 return (vector unsigned char)__a & ~__b;
1110 static vector unsigned char __ATTRS_o_ai
1111 vec_vandc(vector unsigned char __a, vector bool char __b)
1113 return __a & ~(vector unsigned char)__b;
1116 static vector bool char __ATTRS_o_ai
1117 vec_vandc(vector bool char __a, vector bool char __b)
1122 static vector short __ATTRS_o_ai
1123 vec_vandc(vector short __a, vector short __b)
1128 static vector short __ATTRS_o_ai
1129 vec_vandc(vector bool short __a, vector short __b)
1131 return (vector short)__a & ~__b;
1134 static vector short __ATTRS_o_ai
1135 vec_vandc(vector short __a, vector bool short __b)
1137 return __a & ~(vector short)__b;
1140 static vector unsigned short __ATTRS_o_ai
1141 vec_vandc(vector unsigned short __a, vector unsigned short __b)
1146 static vector unsigned short __ATTRS_o_ai
1147 vec_vandc(vector bool short __a, vector unsigned short __b)
1149 return (vector unsigned short)__a & ~__b;
1152 static vector unsigned short __ATTRS_o_ai
1153 vec_vandc(vector unsigned short __a, vector bool short __b)
1155 return __a & ~(vector unsigned short)__b;
1158 static vector bool short __ATTRS_o_ai
1159 vec_vandc(vector bool short __a, vector bool short __b)
1164 static vector int __ATTRS_o_ai
1165 vec_vandc(vector int __a, vector int __b)
1170 static vector int __ATTRS_o_ai
1171 vec_vandc(vector bool int __a, vector int __b)
1173 return (vector int)__a & ~__b;
1176 static vector int __ATTRS_o_ai
1177 vec_vandc(vector int __a, vector bool int __b)
1179 return __a & ~(vector int)__b;
1182 static vector unsigned int __ATTRS_o_ai
1183 vec_vandc(vector unsigned int __a, vector unsigned int __b)
1188 static vector unsigned int __ATTRS_o_ai
1189 vec_vandc(vector bool int __a, vector unsigned int __b)
1191 return (vector unsigned int)__a & ~__b;
1194 static vector unsigned int __ATTRS_o_ai
1195 vec_vandc(vector unsigned int __a, vector bool int __b)
1197 return __a & ~(vector unsigned int)__b;
1200 static vector bool int __ATTRS_o_ai
1201 vec_vandc(vector bool int __a, vector bool int __b)
1206 static vector float __ATTRS_o_ai
1207 vec_vandc(vector float __a, vector float __b)
1209 vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b;
1210 return (vector float)__res;
1213 static vector float __ATTRS_o_ai
1214 vec_vandc(vector bool int __a, vector float __b)
1216 vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b;
1217 return (vector float)__res;
1220 static vector float __ATTRS_o_ai
1221 vec_vandc(vector float __a, vector bool int __b)
1223 vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b;
1224 return (vector float)__res;
1229 static vector signed char __ATTRS_o_ai
1230 vec_avg(vector signed char __a, vector signed char __b)
1232 return __builtin_altivec_vavgsb(__a, __b);
1235 static vector unsigned char __ATTRS_o_ai
1236 vec_avg(vector unsigned char __a, vector unsigned char __b)
1238 return __builtin_altivec_vavgub(__a, __b);
1241 static vector short __ATTRS_o_ai
1242 vec_avg(vector short __a, vector short __b)
1244 return __builtin_altivec_vavgsh(__a, __b);
1247 static vector unsigned short __ATTRS_o_ai
1248 vec_avg(vector unsigned short __a, vector unsigned short __b)
1250 return __builtin_altivec_vavguh(__a, __b);
1253 static vector int __ATTRS_o_ai
1254 vec_avg(vector int __a, vector int __b)
1256 return __builtin_altivec_vavgsw(__a, __b);
1259 static vector unsigned int __ATTRS_o_ai
1260 vec_avg(vector unsigned int __a, vector unsigned int __b)
1262 return __builtin_altivec_vavguw(__a, __b);
1267 static vector signed char __attribute__((__always_inline__))
1268 vec_vavgsb(vector signed char __a, vector signed char __b)
1270 return __builtin_altivec_vavgsb(__a, __b);
1275 static vector unsigned char __attribute__((__always_inline__))
1276 vec_vavgub(vector unsigned char __a, vector unsigned char __b)
1278 return __builtin_altivec_vavgub(__a, __b);
1283 static vector short __attribute__((__always_inline__))
1284 vec_vavgsh(vector short __a, vector short __b)
1286 return __builtin_altivec_vavgsh(__a, __b);
1291 static vector unsigned short __attribute__((__always_inline__))
1292 vec_vavguh(vector unsigned short __a, vector unsigned short __b)
1294 return __builtin_altivec_vavguh(__a, __b);
1299 static vector int __attribute__((__always_inline__))
1300 vec_vavgsw(vector int __a, vector int __b)
1302 return __builtin_altivec_vavgsw(__a, __b);
1307 static vector unsigned int __attribute__((__always_inline__))
1308 vec_vavguw(vector unsigned int __a, vector unsigned int __b)
1310 return __builtin_altivec_vavguw(__a, __b);
1315 static vector float __attribute__((__always_inline__))
1316 vec_ceil(vector float __a)
1318 return __builtin_altivec_vrfip(__a);
1323 static vector float __attribute__((__always_inline__))
1324 vec_vrfip(vector float __a)
1326 return __builtin_altivec_vrfip(__a);
1331 static vector int __attribute__((__always_inline__))
1332 vec_cmpb(vector float __a, vector float __b)
1334 return __builtin_altivec_vcmpbfp(__a, __b);
1339 static vector int __attribute__((__always_inline__))
1340 vec_vcmpbfp(vector float __a, vector float __b)
1342 return __builtin_altivec_vcmpbfp(__a, __b);
1347 static vector bool char __ATTRS_o_ai
1348 vec_cmpeq(vector signed char __a, vector signed char __b)
1350 return (vector bool char)
1351 __builtin_altivec_vcmpequb((vector char)__a, (vector char)__b);
1354 static vector bool char __ATTRS_o_ai
1355 vec_cmpeq(vector unsigned char __a, vector unsigned char __b)
1357 return (vector bool char)
1358 __builtin_altivec_vcmpequb((vector char)__a, (vector char)__b);
1361 static vector bool short __ATTRS_o_ai
1362 vec_cmpeq(vector short __a, vector short __b)
1364 return (vector bool short)__builtin_altivec_vcmpequh(__a, __b);
1367 static vector bool short __ATTRS_o_ai
1368 vec_cmpeq(vector unsigned short __a, vector unsigned short __b)
1370 return (vector bool short)
1371 __builtin_altivec_vcmpequh((vector short)__a, (vector short)__b);
1374 static vector bool int __ATTRS_o_ai
1375 vec_cmpeq(vector int __a, vector int __b)
1377 return (vector bool int)__builtin_altivec_vcmpequw(__a, __b);
1380 static vector bool int __ATTRS_o_ai
1381 vec_cmpeq(vector unsigned int __a, vector unsigned int __b)
1383 return (vector bool int)
1384 __builtin_altivec_vcmpequw((vector int)__a, (vector int)__b);
1387 static vector bool int __ATTRS_o_ai
1388 vec_cmpeq(vector float __a, vector float __b)
1390 return (vector bool int)__builtin_altivec_vcmpeqfp(__a, __b);
1395 static vector bool int __attribute__((__always_inline__))
1396 vec_cmpge(vector float __a, vector float __b)
1398 return (vector bool int)__builtin_altivec_vcmpgefp(__a, __b);
1403 static vector bool int __attribute__((__always_inline__))
1404 vec_vcmpgefp(vector float __a, vector float __b)
1406 return (vector bool int)__builtin_altivec_vcmpgefp(__a, __b);
1411 static vector bool char __ATTRS_o_ai
1412 vec_cmpgt(vector signed char __a, vector signed char __b)
1414 return (vector bool char)__builtin_altivec_vcmpgtsb(__a, __b);
1417 static vector bool char __ATTRS_o_ai
1418 vec_cmpgt(vector unsigned char __a, vector unsigned char __b)
1420 return (vector bool char)__builtin_altivec_vcmpgtub(__a, __b);
1423 static vector bool short __ATTRS_o_ai
1424 vec_cmpgt(vector short __a, vector short __b)
1426 return (vector bool short)__builtin_altivec_vcmpgtsh(__a, __b);
1429 static vector bool short __ATTRS_o_ai
1430 vec_cmpgt(vector unsigned short __a, vector unsigned short __b)
1432 return (vector bool short)__builtin_altivec_vcmpgtuh(__a, __b);
1435 static vector bool int __ATTRS_o_ai
1436 vec_cmpgt(vector int __a, vector int __b)
1438 return (vector bool int)__builtin_altivec_vcmpgtsw(__a, __b);
1441 static vector bool int __ATTRS_o_ai
1442 vec_cmpgt(vector unsigned int __a, vector unsigned int __b)
1444 return (vector bool int)__builtin_altivec_vcmpgtuw(__a, __b);
1447 static vector bool int __ATTRS_o_ai
1448 vec_cmpgt(vector float __a, vector float __b)
1450 return (vector bool int)__builtin_altivec_vcmpgtfp(__a, __b);
1455 static vector bool char __attribute__((__always_inline__))
1456 vec_vcmpgtsb(vector signed char __a, vector signed char __b)
1458 return (vector bool char)__builtin_altivec_vcmpgtsb(__a, __b);
1463 static vector bool char __attribute__((__always_inline__))
1464 vec_vcmpgtub(vector unsigned char __a, vector unsigned char __b)
1466 return (vector bool char)__builtin_altivec_vcmpgtub(__a, __b);
1471 static vector bool short __attribute__((__always_inline__))
1472 vec_vcmpgtsh(vector short __a, vector short __b)
1474 return (vector bool short)__builtin_altivec_vcmpgtsh(__a, __b);
1479 static vector bool short __attribute__((__always_inline__))
1480 vec_vcmpgtuh(vector unsigned short __a, vector unsigned short __b)
1482 return (vector bool short)__builtin_altivec_vcmpgtuh(__a, __b);
1487 static vector bool int __attribute__((__always_inline__))
1488 vec_vcmpgtsw(vector int __a, vector int __b)
1490 return (vector bool int)__builtin_altivec_vcmpgtsw(__a, __b);
1495 static vector bool int __attribute__((__always_inline__))
1496 vec_vcmpgtuw(vector unsigned int __a, vector unsigned int __b)
1498 return (vector bool int)__builtin_altivec_vcmpgtuw(__a, __b);
1503 static vector bool int __attribute__((__always_inline__))
1504 vec_vcmpgtfp(vector float __a, vector float __b)
1506 return (vector bool int)__builtin_altivec_vcmpgtfp(__a, __b);
1511 static vector bool int __attribute__((__always_inline__))
1512 vec_cmple(vector float __a, vector float __b)
1514 return (vector bool int)__builtin_altivec_vcmpgefp(__b, __a);
1519 static vector bool char __ATTRS_o_ai
1520 vec_cmplt(vector signed char __a, vector signed char __b)
1522 return (vector bool char)__builtin_altivec_vcmpgtsb(__b, __a);
1525 static vector bool char __ATTRS_o_ai
1526 vec_cmplt(vector unsigned char __a, vector unsigned char __b)
1528 return (vector bool char)__builtin_altivec_vcmpgtub(__b, __a);
1531 static vector bool short __ATTRS_o_ai
1532 vec_cmplt(vector short __a, vector short __b)
1534 return (vector bool short)__builtin_altivec_vcmpgtsh(__b, __a);
1537 static vector bool short __ATTRS_o_ai
1538 vec_cmplt(vector unsigned short __a, vector unsigned short __b)
1540 return (vector bool short)__builtin_altivec_vcmpgtuh(__b, __a);
1543 static vector bool int __ATTRS_o_ai
1544 vec_cmplt(vector int __a, vector int __b)
1546 return (vector bool int)__builtin_altivec_vcmpgtsw(__b, __a);
1549 static vector bool int __ATTRS_o_ai
1550 vec_cmplt(vector unsigned int __a, vector unsigned int __b)
1552 return (vector bool int)__builtin_altivec_vcmpgtuw(__b, __a);
1555 static vector bool int __ATTRS_o_ai
1556 vec_cmplt(vector float __a, vector float __b)
1558 return (vector bool int)__builtin_altivec_vcmpgtfp(__b, __a);
1563 static vector float __ATTRS_o_ai
1564 vec_ctf(vector int __a, int __b)
1566 return __builtin_altivec_vcfsx(__a, __b);
1569 static vector float __ATTRS_o_ai
1570 vec_ctf(vector unsigned int __a, int __b)
1572 return __builtin_altivec_vcfux((vector int)__a, __b);
1577 static vector float __attribute__((__always_inline__))
1578 vec_vcfsx(vector int __a, int __b)
1580 return __builtin_altivec_vcfsx(__a, __b);
1585 static vector float __attribute__((__always_inline__))
1586 vec_vcfux(vector unsigned int __a, int __b)
1588 return __builtin_altivec_vcfux((vector int)__a, __b);
1593 static vector int __attribute__((__always_inline__))
1594 vec_cts(vector float __a, int __b)
1596 return __builtin_altivec_vctsxs(__a, __b);
1601 static vector int __attribute__((__always_inline__))
1602 vec_vctsxs(vector float __a, int __b)
1604 return __builtin_altivec_vctsxs(__a, __b);
1609 static vector unsigned int __attribute__((__always_inline__))
1610 vec_ctu(vector float __a, int __b)
1612 return __builtin_altivec_vctuxs(__a, __b);
1617 static vector unsigned int __attribute__((__always_inline__))
1618 vec_vctuxs(vector float __a, int __b)
1620 return __builtin_altivec_vctuxs(__a, __b);
1625 static void __attribute__((__always_inline__))
1628 __builtin_altivec_dss(__a);
1633 static void __attribute__((__always_inline__))
1636 __builtin_altivec_dssall();
1641 static void __attribute__((__always_inline__))
1642 vec_dst(const void *__a, int __b, int __c)
1644 __builtin_altivec_dst(__a, __b, __c);
1649 static void __attribute__((__always_inline__))
1650 vec_dstst(const void *__a, int __b, int __c)
1652 __builtin_altivec_dstst(__a, __b, __c);
1657 static void __attribute__((__always_inline__))
1658 vec_dststt(const void *__a, int __b, int __c)
1660 __builtin_altivec_dststt(__a, __b, __c);
1665 static void __attribute__((__always_inline__))
1666 vec_dstt(const void *__a, int __b, int __c)
1668 __builtin_altivec_dstt(__a, __b, __c);
1673 static vector float __attribute__((__always_inline__))
1674 vec_expte(vector float __a)
1676 return __builtin_altivec_vexptefp(__a);
1681 static vector float __attribute__((__always_inline__))
1682 vec_vexptefp(vector float __a)
1684 return __builtin_altivec_vexptefp(__a);
1689 static vector float __attribute__((__always_inline__))
1690 vec_floor(vector float __a)
1692 return __builtin_altivec_vrfim(__a);
1697 static vector float __attribute__((__always_inline__))
1698 vec_vrfim(vector float __a)
1700 return __builtin_altivec_vrfim(__a);
1705 static vector signed char __ATTRS_o_ai
1706 vec_ld(int __a, const vector signed char *__b)
1708 return (vector signed char)__builtin_altivec_lvx(__a, __b);
1711 static vector signed char __ATTRS_o_ai
1712 vec_ld(int __a, const signed char *__b)
1714 return (vector signed char)__builtin_altivec_lvx(__a, __b);
1717 static vector unsigned char __ATTRS_o_ai
1718 vec_ld(int __a, const vector unsigned char *__b)
1720 return (vector unsigned char)__builtin_altivec_lvx(__a, __b);
1723 static vector unsigned char __ATTRS_o_ai
1724 vec_ld(int __a, const unsigned char *__b)
1726 return (vector unsigned char)__builtin_altivec_lvx(__a, __b);
1729 static vector bool char __ATTRS_o_ai
1730 vec_ld(int __a, const vector bool char *__b)
1732 return (vector bool char)__builtin_altivec_lvx(__a, __b);
1735 static vector short __ATTRS_o_ai
1736 vec_ld(int __a, const vector short *__b)
1738 return (vector short)__builtin_altivec_lvx(__a, __b);
1741 static vector short __ATTRS_o_ai
1742 vec_ld(int __a, const short *__b)
1744 return (vector short)__builtin_altivec_lvx(__a, __b);
1747 static vector unsigned short __ATTRS_o_ai
1748 vec_ld(int __a, const vector unsigned short *__b)
1750 return (vector unsigned short)__builtin_altivec_lvx(__a, __b);
1753 static vector unsigned short __ATTRS_o_ai
1754 vec_ld(int __a, const unsigned short *__b)
1756 return (vector unsigned short)__builtin_altivec_lvx(__a, __b);
1759 static vector bool short __ATTRS_o_ai
1760 vec_ld(int __a, const vector bool short *__b)
1762 return (vector bool short)__builtin_altivec_lvx(__a, __b);
1765 static vector pixel __ATTRS_o_ai
1766 vec_ld(int __a, const vector pixel *__b)
1768 return (vector pixel)__builtin_altivec_lvx(__a, __b);
1771 static vector int __ATTRS_o_ai
1772 vec_ld(int __a, const vector int *__b)
1774 return (vector int)__builtin_altivec_lvx(__a, __b);
1777 static vector int __ATTRS_o_ai
1778 vec_ld(int __a, const int *__b)
1780 return (vector int)__builtin_altivec_lvx(__a, __b);
1783 static vector unsigned int __ATTRS_o_ai
1784 vec_ld(int __a, const vector unsigned int *__b)
1786 return (vector unsigned int)__builtin_altivec_lvx(__a, __b);
1789 static vector unsigned int __ATTRS_o_ai
1790 vec_ld(int __a, const unsigned int *__b)
1792 return (vector unsigned int)__builtin_altivec_lvx(__a, __b);
1795 static vector bool int __ATTRS_o_ai
1796 vec_ld(int __a, const vector bool int *__b)
1798 return (vector bool int)__builtin_altivec_lvx(__a, __b);
1801 static vector float __ATTRS_o_ai
1802 vec_ld(int __a, const vector float *__b)
1804 return (vector float)__builtin_altivec_lvx(__a, __b);
1807 static vector float __ATTRS_o_ai
1808 vec_ld(int __a, const float *__b)
1810 return (vector float)__builtin_altivec_lvx(__a, __b);
1815 static vector signed char __ATTRS_o_ai
1816 vec_lvx(int __a, const vector signed char *__b)
1818 return (vector signed char)__builtin_altivec_lvx(__a, __b);
1821 static vector signed char __ATTRS_o_ai
1822 vec_lvx(int __a, const signed char *__b)
1824 return (vector signed char)__builtin_altivec_lvx(__a, __b);
1827 static vector unsigned char __ATTRS_o_ai
1828 vec_lvx(int __a, const vector unsigned char *__b)
1830 return (vector unsigned char)__builtin_altivec_lvx(__a, __b);
1833 static vector unsigned char __ATTRS_o_ai
1834 vec_lvx(int __a, const unsigned char *__b)
1836 return (vector unsigned char)__builtin_altivec_lvx(__a, __b);
1839 static vector bool char __ATTRS_o_ai
1840 vec_lvx(int __a, const vector bool char *__b)
1842 return (vector bool char)__builtin_altivec_lvx(__a, __b);
1845 static vector short __ATTRS_o_ai
1846 vec_lvx(int __a, const vector short *__b)
1848 return (vector short)__builtin_altivec_lvx(__a, __b);
1851 static vector short __ATTRS_o_ai
1852 vec_lvx(int __a, const short *__b)
1854 return (vector short)__builtin_altivec_lvx(__a, __b);
1857 static vector unsigned short __ATTRS_o_ai
1858 vec_lvx(int __a, const vector unsigned short *__b)
1860 return (vector unsigned short)__builtin_altivec_lvx(__a, __b);
1863 static vector unsigned short __ATTRS_o_ai
1864 vec_lvx(int __a, const unsigned short *__b)
1866 return (vector unsigned short)__builtin_altivec_lvx(__a, __b);
1869 static vector bool short __ATTRS_o_ai
1870 vec_lvx(int __a, const vector bool short *__b)
1872 return (vector bool short)__builtin_altivec_lvx(__a, __b);
1875 static vector pixel __ATTRS_o_ai
1876 vec_lvx(int __a, const vector pixel *__b)
1878 return (vector pixel)__builtin_altivec_lvx(__a, __b);
1881 static vector int __ATTRS_o_ai
1882 vec_lvx(int __a, const vector int *__b)
1884 return (vector int)__builtin_altivec_lvx(__a, __b);
1887 static vector int __ATTRS_o_ai
1888 vec_lvx(int __a, const int *__b)
1890 return (vector int)__builtin_altivec_lvx(__a, __b);
1893 static vector unsigned int __ATTRS_o_ai
1894 vec_lvx(int __a, const vector unsigned int *__b)
1896 return (vector unsigned int)__builtin_altivec_lvx(__a, __b);
1899 static vector unsigned int __ATTRS_o_ai
1900 vec_lvx(int __a, const unsigned int *__b)
1902 return (vector unsigned int)__builtin_altivec_lvx(__a, __b);
1905 static vector bool int __ATTRS_o_ai
1906 vec_lvx(int __a, const vector bool int *__b)
1908 return (vector bool int)__builtin_altivec_lvx(__a, __b);
1911 static vector float __ATTRS_o_ai
1912 vec_lvx(int __a, const vector float *__b)
1914 return (vector float)__builtin_altivec_lvx(__a, __b);
1917 static vector float __ATTRS_o_ai
1918 vec_lvx(int __a, const float *__b)
1920 return (vector float)__builtin_altivec_lvx(__a, __b);
1925 static vector signed char __ATTRS_o_ai
1926 vec_lde(int __a, const signed char *__b)
1928 return (vector signed char)__builtin_altivec_lvebx(__a, __b);
1931 static vector unsigned char __ATTRS_o_ai
1932 vec_lde(int __a, const unsigned char *__b)
1934 return (vector unsigned char)__builtin_altivec_lvebx(__a, __b);
1937 static vector short __ATTRS_o_ai
1938 vec_lde(int __a, const short *__b)
1940 return (vector short)__builtin_altivec_lvehx(__a, __b);
1943 static vector unsigned short __ATTRS_o_ai
1944 vec_lde(int __a, const unsigned short *__b)
1946 return (vector unsigned short)__builtin_altivec_lvehx(__a, __b);
1949 static vector int __ATTRS_o_ai
1950 vec_lde(int __a, const int *__b)
1952 return (vector int)__builtin_altivec_lvewx(__a, __b);
1955 static vector unsigned int __ATTRS_o_ai
1956 vec_lde(int __a, const unsigned int *__b)
1958 return (vector unsigned int)__builtin_altivec_lvewx(__a, __b);
1961 static vector float __ATTRS_o_ai
1962 vec_lde(int __a, const float *__b)
1964 return (vector float)__builtin_altivec_lvewx(__a, __b);
1969 static vector signed char __ATTRS_o_ai
1970 vec_lvebx(int __a, const signed char *__b)
1972 return (vector signed char)__builtin_altivec_lvebx(__a, __b);
1975 static vector unsigned char __ATTRS_o_ai
1976 vec_lvebx(int __a, const unsigned char *__b)
1978 return (vector unsigned char)__builtin_altivec_lvebx(__a, __b);
1983 static vector short __ATTRS_o_ai
1984 vec_lvehx(int __a, const short *__b)
1986 return (vector short)__builtin_altivec_lvehx(__a, __b);
1989 static vector unsigned short __ATTRS_o_ai
1990 vec_lvehx(int __a, const unsigned short *__b)
1992 return (vector unsigned short)__builtin_altivec_lvehx(__a, __b);
1997 static vector int __ATTRS_o_ai
1998 vec_lvewx(int __a, const int *__b)
2000 return (vector int)__builtin_altivec_lvewx(__a, __b);
2003 static vector unsigned int __ATTRS_o_ai
2004 vec_lvewx(int __a, const unsigned int *__b)
2006 return (vector unsigned int)__builtin_altivec_lvewx(__a, __b);
2009 static vector float __ATTRS_o_ai
2010 vec_lvewx(int __a, const float *__b)
2012 return (vector float)__builtin_altivec_lvewx(__a, __b);
2017 static vector signed char __ATTRS_o_ai
2018 vec_ldl(int __a, const vector signed char *__b)
2020 return (vector signed char)__builtin_altivec_lvxl(__a, __b);
2023 static vector signed char __ATTRS_o_ai
2024 vec_ldl(int __a, const signed char *__b)
2026 return (vector signed char)__builtin_altivec_lvxl(__a, __b);
2029 static vector unsigned char __ATTRS_o_ai
2030 vec_ldl(int __a, const vector unsigned char *__b)
2032 return (vector unsigned char)__builtin_altivec_lvxl(__a, __b);
2035 static vector unsigned char __ATTRS_o_ai
2036 vec_ldl(int __a, const unsigned char *__b)
2038 return (vector unsigned char)__builtin_altivec_lvxl(__a, __b);
2041 static vector bool char __ATTRS_o_ai
2042 vec_ldl(int __a, const vector bool char *__b)
2044 return (vector bool char)__builtin_altivec_lvxl(__a, __b);
2047 static vector short __ATTRS_o_ai
2048 vec_ldl(int __a, const vector short *__b)
2050 return (vector short)__builtin_altivec_lvxl(__a, __b);
2053 static vector short __ATTRS_o_ai
2054 vec_ldl(int __a, const short *__b)
2056 return (vector short)__builtin_altivec_lvxl(__a, __b);
2059 static vector unsigned short __ATTRS_o_ai
2060 vec_ldl(int __a, const vector unsigned short *__b)
2062 return (vector unsigned short)__builtin_altivec_lvxl(__a, __b);
2065 static vector unsigned short __ATTRS_o_ai
2066 vec_ldl(int __a, const unsigned short *__b)
2068 return (vector unsigned short)__builtin_altivec_lvxl(__a, __b);
2071 static vector bool short __ATTRS_o_ai
2072 vec_ldl(int __a, const vector bool short *__b)
2074 return (vector bool short)__builtin_altivec_lvxl(__a, __b);
2077 static vector pixel __ATTRS_o_ai
2078 vec_ldl(int __a, const vector pixel *__b)
2080 return (vector pixel short)__builtin_altivec_lvxl(__a, __b);
2083 static vector int __ATTRS_o_ai
2084 vec_ldl(int __a, const vector int *__b)
2086 return (vector int)__builtin_altivec_lvxl(__a, __b);
2089 static vector int __ATTRS_o_ai
2090 vec_ldl(int __a, const int *__b)
2092 return (vector int)__builtin_altivec_lvxl(__a, __b);
2095 static vector unsigned int __ATTRS_o_ai
2096 vec_ldl(int __a, const vector unsigned int *__b)
2098 return (vector unsigned int)__builtin_altivec_lvxl(__a, __b);
2101 static vector unsigned int __ATTRS_o_ai
2102 vec_ldl(int __a, const unsigned int *__b)
2104 return (vector unsigned int)__builtin_altivec_lvxl(__a, __b);
2107 static vector bool int __ATTRS_o_ai
2108 vec_ldl(int __a, const vector bool int *__b)
2110 return (vector bool int)__builtin_altivec_lvxl(__a, __b);
2113 static vector float __ATTRS_o_ai
2114 vec_ldl(int __a, const vector float *__b)
2116 return (vector float)__builtin_altivec_lvxl(__a, __b);
2119 static vector float __ATTRS_o_ai
2120 vec_ldl(int __a, const float *__b)
2122 return (vector float)__builtin_altivec_lvxl(__a, __b);
2127 static vector signed char __ATTRS_o_ai
2128 vec_lvxl(int __a, const vector signed char *__b)
2130 return (vector signed char)__builtin_altivec_lvxl(__a, __b);
2133 static vector signed char __ATTRS_o_ai
2134 vec_lvxl(int __a, const signed char *__b)
2136 return (vector signed char)__builtin_altivec_lvxl(__a, __b);
2139 static vector unsigned char __ATTRS_o_ai
2140 vec_lvxl(int __a, const vector unsigned char *__b)
2142 return (vector unsigned char)__builtin_altivec_lvxl(__a, __b);
2145 static vector unsigned char __ATTRS_o_ai
2146 vec_lvxl(int __a, const unsigned char *__b)
2148 return (vector unsigned char)__builtin_altivec_lvxl(__a, __b);
2151 static vector bool char __ATTRS_o_ai
2152 vec_lvxl(int __a, const vector bool char *__b)
2154 return (vector bool char)__builtin_altivec_lvxl(__a, __b);
2157 static vector short __ATTRS_o_ai
2158 vec_lvxl(int __a, const vector short *__b)
2160 return (vector short)__builtin_altivec_lvxl(__a, __b);
2163 static vector short __ATTRS_o_ai
2164 vec_lvxl(int __a, const short *__b)
2166 return (vector short)__builtin_altivec_lvxl(__a, __b);
2169 static vector unsigned short __ATTRS_o_ai
2170 vec_lvxl(int __a, const vector unsigned short *__b)
2172 return (vector unsigned short)__builtin_altivec_lvxl(__a, __b);
2175 static vector unsigned short __ATTRS_o_ai
2176 vec_lvxl(int __a, const unsigned short *__b)
2178 return (vector unsigned short)__builtin_altivec_lvxl(__a, __b);
2181 static vector bool short __ATTRS_o_ai
2182 vec_lvxl(int __a, const vector bool short *__b)
2184 return (vector bool short)__builtin_altivec_lvxl(__a, __b);
2187 static vector pixel __ATTRS_o_ai
2188 vec_lvxl(int __a, const vector pixel *__b)
2190 return (vector pixel)__builtin_altivec_lvxl(__a, __b);
2193 static vector int __ATTRS_o_ai
2194 vec_lvxl(int __a, const vector int *__b)
2196 return (vector int)__builtin_altivec_lvxl(__a, __b);
2199 static vector int __ATTRS_o_ai
2200 vec_lvxl(int __a, const int *__b)
2202 return (vector int)__builtin_altivec_lvxl(__a, __b);
2205 static vector unsigned int __ATTRS_o_ai
2206 vec_lvxl(int __a, const vector unsigned int *__b)
2208 return (vector unsigned int)__builtin_altivec_lvxl(__a, __b);
2211 static vector unsigned int __ATTRS_o_ai
2212 vec_lvxl(int __a, const unsigned int *__b)
2214 return (vector unsigned int)__builtin_altivec_lvxl(__a, __b);
2217 static vector bool int __ATTRS_o_ai
2218 vec_lvxl(int __a, const vector bool int *__b)
2220 return (vector bool int)__builtin_altivec_lvxl(__a, __b);
2223 static vector float __ATTRS_o_ai
2224 vec_lvxl(int __a, const vector float *__b)
2226 return (vector float)__builtin_altivec_lvxl(__a, __b);
2229 static vector float __ATTRS_o_ai
2230 vec_lvxl(int __a, const float *__b)
2232 return (vector float)__builtin_altivec_lvxl(__a, __b);
2237 static vector float __attribute__((__always_inline__))
2238 vec_loge(vector float __a)
2240 return __builtin_altivec_vlogefp(__a);
2245 static vector float __attribute__((__always_inline__))
2246 vec_vlogefp(vector float __a)
2248 return __builtin_altivec_vlogefp(__a);
2253 static vector unsigned char __ATTRS_o_ai
2254 vec_lvsl(int __a, const signed char *__b)
2256 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
2259 static vector unsigned char __ATTRS_o_ai
2260 vec_lvsl(int __a, const unsigned char *__b)
2262 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
2265 static vector unsigned char __ATTRS_o_ai
2266 vec_lvsl(int __a, const short *__b)
2268 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
2271 static vector unsigned char __ATTRS_o_ai
2272 vec_lvsl(int __a, const unsigned short *__b)
2274 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
2277 static vector unsigned char __ATTRS_o_ai
2278 vec_lvsl(int __a, const int *__b)
2280 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
2283 static vector unsigned char __ATTRS_o_ai
2284 vec_lvsl(int __a, const unsigned int *__b)
2286 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
2289 static vector unsigned char __ATTRS_o_ai
2290 vec_lvsl(int __a, const float *__b)
2292 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
2297 static vector unsigned char __ATTRS_o_ai
2298 vec_lvsr(int __a, const signed char *__b)
2300 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
2303 static vector unsigned char __ATTRS_o_ai
2304 vec_lvsr(int __a, const unsigned char *__b)
2306 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
2309 static vector unsigned char __ATTRS_o_ai
2310 vec_lvsr(int __a, const short *__b)
2312 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
2315 static vector unsigned char __ATTRS_o_ai
2316 vec_lvsr(int __a, const unsigned short *__b)
2318 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
2321 static vector unsigned char __ATTRS_o_ai
2322 vec_lvsr(int __a, const int *__b)
2324 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
2327 static vector unsigned char __ATTRS_o_ai
2328 vec_lvsr(int __a, const unsigned int *__b)
2330 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
2333 static vector unsigned char __ATTRS_o_ai
2334 vec_lvsr(int __a, const float *__b)
2336 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
2341 static vector float __attribute__((__always_inline__))
2342 vec_madd(vector float __a, vector float __b, vector float __c)
2344 return __builtin_altivec_vmaddfp(__a, __b, __c);
2349 static vector float __attribute__((__always_inline__))
2350 vec_vmaddfp(vector float __a, vector float __b, vector float __c)
2352 return __builtin_altivec_vmaddfp(__a, __b, __c);
2357 static vector signed short __attribute__((__always_inline__))
2358 vec_madds(vector signed short __a, vector signed short __b, vector signed short __c)
2360 return __builtin_altivec_vmhaddshs(__a, __b, __c);
2364 static vector signed short __attribute__((__always_inline__))
2365 vec_vmhaddshs(vector signed short __a,
2366 vector signed short __b,
2367 vector signed short __c)
2369 return __builtin_altivec_vmhaddshs(__a, __b, __c);
2374 static vector signed char __ATTRS_o_ai
2375 vec_max(vector signed char __a, vector signed char __b)
2377 return __builtin_altivec_vmaxsb(__a, __b);
2380 static vector signed char __ATTRS_o_ai
2381 vec_max(vector bool char __a, vector signed char __b)
2383 return __builtin_altivec_vmaxsb((vector signed char)__a, __b);
2386 static vector signed char __ATTRS_o_ai
2387 vec_max(vector signed char __a, vector bool char __b)
2389 return __builtin_altivec_vmaxsb(__a, (vector signed char)__b);
2392 static vector unsigned char __ATTRS_o_ai
2393 vec_max(vector unsigned char __a, vector unsigned char __b)
2395 return __builtin_altivec_vmaxub(__a, __b);
2398 static vector unsigned char __ATTRS_o_ai
2399 vec_max(vector bool char __a, vector unsigned char __b)
2401 return __builtin_altivec_vmaxub((vector unsigned char)__a, __b);
2404 static vector unsigned char __ATTRS_o_ai
2405 vec_max(vector unsigned char __a, vector bool char __b)
2407 return __builtin_altivec_vmaxub(__a, (vector unsigned char)__b);
2410 static vector short __ATTRS_o_ai
2411 vec_max(vector short __a, vector short __b)
2413 return __builtin_altivec_vmaxsh(__a, __b);
2416 static vector short __ATTRS_o_ai
2417 vec_max(vector bool short __a, vector short __b)
2419 return __builtin_altivec_vmaxsh((vector short)__a, __b);
2422 static vector short __ATTRS_o_ai
2423 vec_max(vector short __a, vector bool short __b)
2425 return __builtin_altivec_vmaxsh(__a, (vector short)__b);
2428 static vector unsigned short __ATTRS_o_ai
2429 vec_max(vector unsigned short __a, vector unsigned short __b)
2431 return __builtin_altivec_vmaxuh(__a, __b);
2434 static vector unsigned short __ATTRS_o_ai
2435 vec_max(vector bool short __a, vector unsigned short __b)
2437 return __builtin_altivec_vmaxuh((vector unsigned short)__a, __b);
2440 static vector unsigned short __ATTRS_o_ai
2441 vec_max(vector unsigned short __a, vector bool short __b)
2443 return __builtin_altivec_vmaxuh(__a, (vector unsigned short)__b);
2446 static vector int __ATTRS_o_ai
2447 vec_max(vector int __a, vector int __b)
2449 return __builtin_altivec_vmaxsw(__a, __b);
2452 static vector int __ATTRS_o_ai
2453 vec_max(vector bool int __a, vector int __b)
2455 return __builtin_altivec_vmaxsw((vector int)__a, __b);
2458 static vector int __ATTRS_o_ai
2459 vec_max(vector int __a, vector bool int __b)
2461 return __builtin_altivec_vmaxsw(__a, (vector int)__b);
2464 static vector unsigned int __ATTRS_o_ai
2465 vec_max(vector unsigned int __a, vector unsigned int __b)
2467 return __builtin_altivec_vmaxuw(__a, __b);
2470 static vector unsigned int __ATTRS_o_ai
2471 vec_max(vector bool int __a, vector unsigned int __b)
2473 return __builtin_altivec_vmaxuw((vector unsigned int)__a, __b);
2476 static vector unsigned int __ATTRS_o_ai
2477 vec_max(vector unsigned int __a, vector bool int __b)
2479 return __builtin_altivec_vmaxuw(__a, (vector unsigned int)__b);
2482 static vector float __ATTRS_o_ai
2483 vec_max(vector float __a, vector float __b)
2485 return __builtin_altivec_vmaxfp(__a, __b);
2490 static vector signed char __ATTRS_o_ai
2491 vec_vmaxsb(vector signed char __a, vector signed char __b)
2493 return __builtin_altivec_vmaxsb(__a, __b);
2496 static vector signed char __ATTRS_o_ai
2497 vec_vmaxsb(vector bool char __a, vector signed char __b)
2499 return __builtin_altivec_vmaxsb((vector signed char)__a, __b);
2502 static vector signed char __ATTRS_o_ai
2503 vec_vmaxsb(vector signed char __a, vector bool char __b)
2505 return __builtin_altivec_vmaxsb(__a, (vector signed char)__b);
2510 static vector unsigned char __ATTRS_o_ai
2511 vec_vmaxub(vector unsigned char __a, vector unsigned char __b)
2513 return __builtin_altivec_vmaxub(__a, __b);
2516 static vector unsigned char __ATTRS_o_ai
2517 vec_vmaxub(vector bool char __a, vector unsigned char __b)
2519 return __builtin_altivec_vmaxub((vector unsigned char)__a, __b);
2522 static vector unsigned char __ATTRS_o_ai
2523 vec_vmaxub(vector unsigned char __a, vector bool char __b)
2525 return __builtin_altivec_vmaxub(__a, (vector unsigned char)__b);
2530 static vector short __ATTRS_o_ai
2531 vec_vmaxsh(vector short __a, vector short __b)
2533 return __builtin_altivec_vmaxsh(__a, __b);
2536 static vector short __ATTRS_o_ai
2537 vec_vmaxsh(vector bool short __a, vector short __b)
2539 return __builtin_altivec_vmaxsh((vector short)__a, __b);
2542 static vector short __ATTRS_o_ai
2543 vec_vmaxsh(vector short __a, vector bool short __b)
2545 return __builtin_altivec_vmaxsh(__a, (vector short)__b);
2550 static vector unsigned short __ATTRS_o_ai
2551 vec_vmaxuh(vector unsigned short __a, vector unsigned short __b)
2553 return __builtin_altivec_vmaxuh(__a, __b);
2556 static vector unsigned short __ATTRS_o_ai
2557 vec_vmaxuh(vector bool short __a, vector unsigned short __b)
2559 return __builtin_altivec_vmaxuh((vector unsigned short)__a, __b);
2562 static vector unsigned short __ATTRS_o_ai
2563 vec_vmaxuh(vector unsigned short __a, vector bool short __b)
2565 return __builtin_altivec_vmaxuh(__a, (vector unsigned short)__b);
2570 static vector int __ATTRS_o_ai
2571 vec_vmaxsw(vector int __a, vector int __b)
2573 return __builtin_altivec_vmaxsw(__a, __b);
2576 static vector int __ATTRS_o_ai
2577 vec_vmaxsw(vector bool int __a, vector int __b)
2579 return __builtin_altivec_vmaxsw((vector int)__a, __b);
2582 static vector int __ATTRS_o_ai
2583 vec_vmaxsw(vector int __a, vector bool int __b)
2585 return __builtin_altivec_vmaxsw(__a, (vector int)__b);
2590 static vector unsigned int __ATTRS_o_ai
2591 vec_vmaxuw(vector unsigned int __a, vector unsigned int __b)
2593 return __builtin_altivec_vmaxuw(__a, __b);
2596 static vector unsigned int __ATTRS_o_ai
2597 vec_vmaxuw(vector bool int __a, vector unsigned int __b)
2599 return __builtin_altivec_vmaxuw((vector unsigned int)__a, __b);
2602 static vector unsigned int __ATTRS_o_ai
2603 vec_vmaxuw(vector unsigned int __a, vector bool int __b)
2605 return __builtin_altivec_vmaxuw(__a, (vector unsigned int)__b);
2610 static vector float __attribute__((__always_inline__))
2611 vec_vmaxfp(vector float __a, vector float __b)
2613 return __builtin_altivec_vmaxfp(__a, __b);
2618 static vector signed char __ATTRS_o_ai
2619 vec_mergeh(vector signed char __a, vector signed char __b)
2621 return vec_perm(__a, __b, (vector unsigned char)
2622 (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
2623 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
2626 static vector unsigned char __ATTRS_o_ai
2627 vec_mergeh(vector unsigned char __a, vector unsigned char __b)
2629 return vec_perm(__a, __b, (vector unsigned char)
2630 (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
2631 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
2634 static vector bool char __ATTRS_o_ai
2635 vec_mergeh(vector bool char __a, vector bool char __b)
2637 return vec_perm(__a, __b, (vector unsigned char)
2638 (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
2639 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
2642 static vector short __ATTRS_o_ai
2643 vec_mergeh(vector short __a, vector short __b)
2645 return vec_perm(__a, __b, (vector unsigned char)
2646 (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
2647 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
2650 static vector unsigned short __ATTRS_o_ai
2651 vec_mergeh(vector unsigned short __a, vector unsigned short __b)
2653 return vec_perm(__a, __b, (vector unsigned char)
2654 (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
2655 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
2658 static vector bool short __ATTRS_o_ai
2659 vec_mergeh(vector bool short __a, vector bool short __b)
2661 return vec_perm(__a, __b, (vector unsigned char)
2662 (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
2663 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
2666 static vector pixel __ATTRS_o_ai
2667 vec_mergeh(vector pixel __a, vector pixel __b)
2669 return vec_perm(__a, __b, (vector unsigned char)
2670 (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
2671 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
2674 static vector int __ATTRS_o_ai
2675 vec_mergeh(vector int __a, vector int __b)
2677 return vec_perm(__a, __b, (vector unsigned char)
2678 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
2679 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
2682 static vector unsigned int __ATTRS_o_ai
2683 vec_mergeh(vector unsigned int __a, vector unsigned int __b)
2685 return vec_perm(__a, __b, (vector unsigned char)
2686 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
2687 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
2690 static vector bool int __ATTRS_o_ai
2691 vec_mergeh(vector bool int __a, vector bool int __b)
2693 return vec_perm(__a, __b, (vector unsigned char)
2694 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
2695 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
2698 static vector float __ATTRS_o_ai
2699 vec_mergeh(vector float __a, vector float __b)
2701 return vec_perm(__a, __b, (vector unsigned char)
2702 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
2703 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
2708 #define __builtin_altivec_vmrghb vec_vmrghb
2710 static vector signed char __ATTRS_o_ai
2711 vec_vmrghb(vector signed char __a, vector signed char __b)
2713 return vec_perm(__a, __b, (vector unsigned char)
2714 (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
2715 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
2718 static vector unsigned char __ATTRS_o_ai
2719 vec_vmrghb(vector unsigned char __a, vector unsigned char __b)
2721 return vec_perm(__a, __b, (vector unsigned char)
2722 (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
2723 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
2726 static vector bool char __ATTRS_o_ai
2727 vec_vmrghb(vector bool char __a, vector bool char __b)
2729 return vec_perm(__a, __b, (vector unsigned char)
2730 (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
2731 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
2736 #define __builtin_altivec_vmrghh vec_vmrghh
2738 static vector short __ATTRS_o_ai
2739 vec_vmrghh(vector short __a, vector short __b)
2741 return vec_perm(__a, __b, (vector unsigned char)
2742 (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
2743 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
2746 static vector unsigned short __ATTRS_o_ai
2747 vec_vmrghh(vector unsigned short __a, vector unsigned short __b)
2749 return vec_perm(__a, __b, (vector unsigned char)
2750 (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
2751 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
2754 static vector bool short __ATTRS_o_ai
2755 vec_vmrghh(vector bool short __a, vector bool short __b)
2757 return vec_perm(__a, __b, (vector unsigned char)
2758 (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
2759 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
2762 static vector pixel __ATTRS_o_ai
2763 vec_vmrghh(vector pixel __a, vector pixel __b)
2765 return vec_perm(__a, __b, (vector unsigned char)
2766 (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
2767 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
2772 #define __builtin_altivec_vmrghw vec_vmrghw
2774 static vector int __ATTRS_o_ai
2775 vec_vmrghw(vector int __a, vector int __b)
2777 return vec_perm(__a, __b, (vector unsigned char)
2778 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
2779 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
2782 static vector unsigned int __ATTRS_o_ai
2783 vec_vmrghw(vector unsigned int __a, vector unsigned int __b)
2785 return vec_perm(__a, __b, (vector unsigned char)
2786 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
2787 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
2790 static vector bool int __ATTRS_o_ai
2791 vec_vmrghw(vector bool int __a, vector bool int __b)
2793 return vec_perm(__a, __b, (vector unsigned char)
2794 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
2795 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
2798 static vector float __ATTRS_o_ai
2799 vec_vmrghw(vector float __a, vector float __b)
2801 return vec_perm(__a, __b, (vector unsigned char)
2802 (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
2803 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
2808 static vector signed char __ATTRS_o_ai
2809 vec_mergel(vector signed char __a, vector signed char __b)
2811 return vec_perm(__a, __b, (vector unsigned char)
2812 (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
2813 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
2816 static vector unsigned char __ATTRS_o_ai
2817 vec_mergel(vector unsigned char __a, vector unsigned char __b)
2819 return vec_perm(__a, __b, (vector unsigned char)
2820 (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
2821 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
2824 static vector bool char __ATTRS_o_ai
2825 vec_mergel(vector bool char __a, vector bool char __b)
2827 return vec_perm(__a, __b, (vector unsigned char)
2828 (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
2829 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
2832 static vector short __ATTRS_o_ai
2833 vec_mergel(vector short __a, vector short __b)
2835 return vec_perm(__a, __b, (vector unsigned char)
2836 (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
2837 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
2840 static vector unsigned short __ATTRS_o_ai
2841 vec_mergel(vector unsigned short __a, vector unsigned short __b)
2843 return vec_perm(__a, __b, (vector unsigned char)
2844 (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
2845 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
2848 static vector bool short __ATTRS_o_ai
2849 vec_mergel(vector bool short __a, vector bool short __b)
2851 return vec_perm(__a, __b, (vector unsigned char)
2852 (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
2853 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
2856 static vector pixel __ATTRS_o_ai
2857 vec_mergel(vector pixel __a, vector pixel __b)
2859 return vec_perm(__a, __b, (vector unsigned char)
2860 (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
2861 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
2864 static vector int __ATTRS_o_ai
2865 vec_mergel(vector int __a, vector int __b)
2867 return vec_perm(__a, __b, (vector unsigned char)
2868 (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
2869 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
2872 static vector unsigned int __ATTRS_o_ai
2873 vec_mergel(vector unsigned int __a, vector unsigned int __b)
2875 return vec_perm(__a, __b, (vector unsigned char)
2876 (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
2877 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
2880 static vector bool int __ATTRS_o_ai
2881 vec_mergel(vector bool int __a, vector bool int __b)
2883 return vec_perm(__a, __b, (vector unsigned char)
2884 (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
2885 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
2888 static vector float __ATTRS_o_ai
2889 vec_mergel(vector float __a, vector float __b)
2891 return vec_perm(__a, __b, (vector unsigned char)
2892 (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
2893 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
2898 #define __builtin_altivec_vmrglb vec_vmrglb
2900 static vector signed char __ATTRS_o_ai
2901 vec_vmrglb(vector signed char __a, vector signed char __b)
2903 return vec_perm(__a, __b, (vector unsigned char)
2904 (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
2905 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
2908 static vector unsigned char __ATTRS_o_ai
2909 vec_vmrglb(vector unsigned char __a, vector unsigned char __b)
2911 return vec_perm(__a, __b, (vector unsigned char)
2912 (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
2913 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
2916 static vector bool char __ATTRS_o_ai
2917 vec_vmrglb(vector bool char __a, vector bool char __b)
2919 return vec_perm(__a, __b, (vector unsigned char)
2920 (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
2921 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
2926 #define __builtin_altivec_vmrglh vec_vmrglh
2928 static vector short __ATTRS_o_ai
2929 vec_vmrglh(vector short __a, vector short __b)
2931 return vec_perm(__a, __b, (vector unsigned char)
2932 (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
2933 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
2936 static vector unsigned short __ATTRS_o_ai
2937 vec_vmrglh(vector unsigned short __a, vector unsigned short __b)
2939 return vec_perm(__a, __b, (vector unsigned char)
2940 (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
2941 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
2944 static vector bool short __ATTRS_o_ai
2945 vec_vmrglh(vector bool short __a, vector bool short __b)
2947 return vec_perm(__a, __b, (vector unsigned char)
2948 (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
2949 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
2952 static vector pixel __ATTRS_o_ai
2953 vec_vmrglh(vector pixel __a, vector pixel __b)
2955 return vec_perm(__a, __b, (vector unsigned char)
2956 (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
2957 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
2962 #define __builtin_altivec_vmrglw vec_vmrglw
2964 static vector int __ATTRS_o_ai
2965 vec_vmrglw(vector int __a, vector int __b)
2967 return vec_perm(__a, __b, (vector unsigned char)
2968 (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
2969 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
2972 static vector unsigned int __ATTRS_o_ai
2973 vec_vmrglw(vector unsigned int __a, vector unsigned int __b)
2975 return vec_perm(__a, __b, (vector unsigned char)
2976 (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
2977 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
2980 static vector bool int __ATTRS_o_ai
2981 vec_vmrglw(vector bool int __a, vector bool int __b)
2983 return vec_perm(__a, __b, (vector unsigned char)
2984 (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
2985 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
2988 static vector float __ATTRS_o_ai
2989 vec_vmrglw(vector float __a, vector float __b)
2991 return vec_perm(__a, __b, (vector unsigned char)
2992 (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
2993 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
2998 static vector unsigned short __attribute__((__always_inline__))
3001 return __builtin_altivec_mfvscr();
3006 static vector signed char __ATTRS_o_ai
3007 vec_min(vector signed char __a, vector signed char __b)
3009 return __builtin_altivec_vminsb(__a, __b);
3012 static vector signed char __ATTRS_o_ai
3013 vec_min(vector bool char __a, vector signed char __b)
3015 return __builtin_altivec_vminsb((vector signed char)__a, __b);
3018 static vector signed char __ATTRS_o_ai
3019 vec_min(vector signed char __a, vector bool char __b)
3021 return __builtin_altivec_vminsb(__a, (vector signed char)__b);
3024 static vector unsigned char __ATTRS_o_ai
3025 vec_min(vector unsigned char __a, vector unsigned char __b)
3027 return __builtin_altivec_vminub(__a, __b);
3030 static vector unsigned char __ATTRS_o_ai
3031 vec_min(vector bool char __a, vector unsigned char __b)
3033 return __builtin_altivec_vminub((vector unsigned char)__a, __b);
3036 static vector unsigned char __ATTRS_o_ai
3037 vec_min(vector unsigned char __a, vector bool char __b)
3039 return __builtin_altivec_vminub(__a, (vector unsigned char)__b);
3042 static vector short __ATTRS_o_ai
3043 vec_min(vector short __a, vector short __b)
3045 return __builtin_altivec_vminsh(__a, __b);
3048 static vector short __ATTRS_o_ai
3049 vec_min(vector bool short __a, vector short __b)
3051 return __builtin_altivec_vminsh((vector short)__a, __b);
3054 static vector short __ATTRS_o_ai
3055 vec_min(vector short __a, vector bool short __b)
3057 return __builtin_altivec_vminsh(__a, (vector short)__b);
3060 static vector unsigned short __ATTRS_o_ai
3061 vec_min(vector unsigned short __a, vector unsigned short __b)
3063 return __builtin_altivec_vminuh(__a, __b);
3066 static vector unsigned short __ATTRS_o_ai
3067 vec_min(vector bool short __a, vector unsigned short __b)
3069 return __builtin_altivec_vminuh((vector unsigned short)__a, __b);
3072 static vector unsigned short __ATTRS_o_ai
3073 vec_min(vector unsigned short __a, vector bool short __b)
3075 return __builtin_altivec_vminuh(__a, (vector unsigned short)__b);
3078 static vector int __ATTRS_o_ai
3079 vec_min(vector int __a, vector int __b)
3081 return __builtin_altivec_vminsw(__a, __b);
3084 static vector int __ATTRS_o_ai
3085 vec_min(vector bool int __a, vector int __b)
3087 return __builtin_altivec_vminsw((vector int)__a, __b);
3090 static vector int __ATTRS_o_ai
3091 vec_min(vector int __a, vector bool int __b)
3093 return __builtin_altivec_vminsw(__a, (vector int)__b);
3096 static vector unsigned int __ATTRS_o_ai
3097 vec_min(vector unsigned int __a, vector unsigned int __b)
3099 return __builtin_altivec_vminuw(__a, __b);
3102 static vector unsigned int __ATTRS_o_ai
3103 vec_min(vector bool int __a, vector unsigned int __b)
3105 return __builtin_altivec_vminuw((vector unsigned int)__a, __b);
3108 static vector unsigned int __ATTRS_o_ai
3109 vec_min(vector unsigned int __a, vector bool int __b)
3111 return __builtin_altivec_vminuw(__a, (vector unsigned int)__b);
3114 static vector float __ATTRS_o_ai
3115 vec_min(vector float __a, vector float __b)
3117 return __builtin_altivec_vminfp(__a, __b);
3122 static vector signed char __ATTRS_o_ai
3123 vec_vminsb(vector signed char __a, vector signed char __b)
3125 return __builtin_altivec_vminsb(__a, __b);
3128 static vector signed char __ATTRS_o_ai
3129 vec_vminsb(vector bool char __a, vector signed char __b)
3131 return __builtin_altivec_vminsb((vector signed char)__a, __b);
3134 static vector signed char __ATTRS_o_ai
3135 vec_vminsb(vector signed char __a, vector bool char __b)
3137 return __builtin_altivec_vminsb(__a, (vector signed char)__b);
3142 static vector unsigned char __ATTRS_o_ai
3143 vec_vminub(vector unsigned char __a, vector unsigned char __b)
3145 return __builtin_altivec_vminub(__a, __b);
3148 static vector unsigned char __ATTRS_o_ai
3149 vec_vminub(vector bool char __a, vector unsigned char __b)
3151 return __builtin_altivec_vminub((vector unsigned char)__a, __b);
3154 static vector unsigned char __ATTRS_o_ai
3155 vec_vminub(vector unsigned char __a, vector bool char __b)
3157 return __builtin_altivec_vminub(__a, (vector unsigned char)__b);
3162 static vector short __ATTRS_o_ai
3163 vec_vminsh(vector short __a, vector short __b)
3165 return __builtin_altivec_vminsh(__a, __b);
3168 static vector short __ATTRS_o_ai
3169 vec_vminsh(vector bool short __a, vector short __b)
3171 return __builtin_altivec_vminsh((vector short)__a, __b);
3174 static vector short __ATTRS_o_ai
3175 vec_vminsh(vector short __a, vector bool short __b)
3177 return __builtin_altivec_vminsh(__a, (vector short)__b);
3182 static vector unsigned short __ATTRS_o_ai
3183 vec_vminuh(vector unsigned short __a, vector unsigned short __b)
3185 return __builtin_altivec_vminuh(__a, __b);
3188 static vector unsigned short __ATTRS_o_ai
3189 vec_vminuh(vector bool short __a, vector unsigned short __b)
3191 return __builtin_altivec_vminuh((vector unsigned short)__a, __b);
3194 static vector unsigned short __ATTRS_o_ai
3195 vec_vminuh(vector unsigned short __a, vector bool short __b)
3197 return __builtin_altivec_vminuh(__a, (vector unsigned short)__b);
3202 static vector int __ATTRS_o_ai
3203 vec_vminsw(vector int __a, vector int __b)
3205 return __builtin_altivec_vminsw(__a, __b);
3208 static vector int __ATTRS_o_ai
3209 vec_vminsw(vector bool int __a, vector int __b)
3211 return __builtin_altivec_vminsw((vector int)__a, __b);
3214 static vector int __ATTRS_o_ai
3215 vec_vminsw(vector int __a, vector bool int __b)
3217 return __builtin_altivec_vminsw(__a, (vector int)__b);
3222 static vector unsigned int __ATTRS_o_ai
3223 vec_vminuw(vector unsigned int __a, vector unsigned int __b)
3225 return __builtin_altivec_vminuw(__a, __b);
3228 static vector unsigned int __ATTRS_o_ai
3229 vec_vminuw(vector bool int __a, vector unsigned int __b)
3231 return __builtin_altivec_vminuw((vector unsigned int)__a, __b);
3234 static vector unsigned int __ATTRS_o_ai
3235 vec_vminuw(vector unsigned int __a, vector bool int __b)
3237 return __builtin_altivec_vminuw(__a, (vector unsigned int)__b);
3242 static vector float __attribute__((__always_inline__))
3243 vec_vminfp(vector float __a, vector float __b)
3245 return __builtin_altivec_vminfp(__a, __b);
3250 #define __builtin_altivec_vmladduhm vec_mladd
3252 static vector short __ATTRS_o_ai
3253 vec_mladd(vector short __a, vector short __b, vector short __c)
3255 return __a * __b + __c;
3258 static vector short __ATTRS_o_ai
3259 vec_mladd(vector short __a, vector unsigned short __b, vector unsigned short __c)
3261 return __a * (vector short)__b + (vector short)__c;
3264 static vector short __ATTRS_o_ai
3265 vec_mladd(vector unsigned short __a, vector short __b, vector short __c)
3267 return (vector short)__a * __b + __c;
3270 static vector unsigned short __ATTRS_o_ai
3271 vec_mladd(vector unsigned short __a,
3272 vector unsigned short __b,
3273 vector unsigned short __c)
3275 return __a * __b + __c;
3280 static vector short __ATTRS_o_ai
3281 vec_vmladduhm(vector short __a, vector short __b, vector short __c)
3283 return __a * __b + __c;
3286 static vector short __ATTRS_o_ai
3287 vec_vmladduhm(vector short __a, vector unsigned short __b, vector unsigned short __c)
3289 return __a * (vector short)__b + (vector short)__c;
3292 static vector short __ATTRS_o_ai
3293 vec_vmladduhm(vector unsigned short __a, vector short __b, vector short __c)
3295 return (vector short)__a * __b + __c;
3298 static vector unsigned short __ATTRS_o_ai
3299 vec_vmladduhm(vector unsigned short __a,
3300 vector unsigned short __b,
3301 vector unsigned short __c)
3303 return __a * __b + __c;
3308 static vector short __attribute__((__always_inline__))
3309 vec_mradds(vector short __a, vector short __b, vector short __c)
3311 return __builtin_altivec_vmhraddshs(__a, __b, __c);
3314 /* vec_vmhraddshs */
3316 static vector short __attribute__((__always_inline__))
3317 vec_vmhraddshs(vector short __a, vector short __b, vector short __c)
3319 return __builtin_altivec_vmhraddshs(__a, __b, __c);
3324 static vector int __ATTRS_o_ai
3325 vec_msum(vector signed char __a, vector unsigned char __b, vector int __c)
3327 return __builtin_altivec_vmsummbm(__a, __b, __c);
3330 static vector unsigned int __ATTRS_o_ai
3331 vec_msum(vector unsigned char __a, vector unsigned char __b, vector unsigned int __c)
3333 return __builtin_altivec_vmsumubm(__a, __b, __c);
3336 static vector int __ATTRS_o_ai
3337 vec_msum(vector short __a, vector short __b, vector int __c)
3339 return __builtin_altivec_vmsumshm(__a, __b, __c);
3342 static vector unsigned int __ATTRS_o_ai
3343 vec_msum(vector unsigned short __a,
3344 vector unsigned short __b,
3345 vector unsigned int __c)
3347 return __builtin_altivec_vmsumuhm(__a, __b, __c);
3352 static vector int __attribute__((__always_inline__))
3353 vec_vmsummbm(vector signed char __a, vector unsigned char __b, vector int __c)
3355 return __builtin_altivec_vmsummbm(__a, __b, __c);
3360 static vector unsigned int __attribute__((__always_inline__))
3361 vec_vmsumubm(vector unsigned char __a,
3362 vector unsigned char __b,
3363 vector unsigned int __c)
3365 return __builtin_altivec_vmsumubm(__a, __b, __c);
3370 static vector int __attribute__((__always_inline__))
3371 vec_vmsumshm(vector short __a, vector short __b, vector int __c)
3373 return __builtin_altivec_vmsumshm(__a, __b, __c);
3378 static vector unsigned int __attribute__((__always_inline__))
3379 vec_vmsumuhm(vector unsigned short __a,
3380 vector unsigned short __b,
3381 vector unsigned int __c)
3383 return __builtin_altivec_vmsumuhm(__a, __b, __c);
3388 static vector int __ATTRS_o_ai
3389 vec_msums(vector short __a, vector short __b, vector int __c)
3391 return __builtin_altivec_vmsumshs(__a, __b, __c);
3394 static vector unsigned int __ATTRS_o_ai
3395 vec_msums(vector unsigned short __a,
3396 vector unsigned short __b,
3397 vector unsigned int __c)
3399 return __builtin_altivec_vmsumuhs(__a, __b, __c);
3404 static vector int __attribute__((__always_inline__))
3405 vec_vmsumshs(vector short __a, vector short __b, vector int __c)
3407 return __builtin_altivec_vmsumshs(__a, __b, __c);
3412 static vector unsigned int __attribute__((__always_inline__))
3413 vec_vmsumuhs(vector unsigned short __a,
3414 vector unsigned short __b,
3415 vector unsigned int __c)
3417 return __builtin_altivec_vmsumuhs(__a, __b, __c);
3422 static void __ATTRS_o_ai
3423 vec_mtvscr(vector signed char __a)
3425 __builtin_altivec_mtvscr((vector int)__a);
3428 static void __ATTRS_o_ai
3429 vec_mtvscr(vector unsigned char __a)
3431 __builtin_altivec_mtvscr((vector int)__a);
3434 static void __ATTRS_o_ai
3435 vec_mtvscr(vector bool char __a)
3437 __builtin_altivec_mtvscr((vector int)__a);
3440 static void __ATTRS_o_ai
3441 vec_mtvscr(vector short __a)
3443 __builtin_altivec_mtvscr((vector int)__a);
3446 static void __ATTRS_o_ai
3447 vec_mtvscr(vector unsigned short __a)
3449 __builtin_altivec_mtvscr((vector int)__a);
3452 static void __ATTRS_o_ai
3453 vec_mtvscr(vector bool short __a)
3455 __builtin_altivec_mtvscr((vector int)__a);
3458 static void __ATTRS_o_ai
3459 vec_mtvscr(vector pixel __a)
3461 __builtin_altivec_mtvscr((vector int)__a);
3464 static void __ATTRS_o_ai
3465 vec_mtvscr(vector int __a)
3467 __builtin_altivec_mtvscr((vector int)__a);
3470 static void __ATTRS_o_ai
3471 vec_mtvscr(vector unsigned int __a)
3473 __builtin_altivec_mtvscr((vector int)__a);
3476 static void __ATTRS_o_ai
3477 vec_mtvscr(vector bool int __a)
3479 __builtin_altivec_mtvscr((vector int)__a);
3482 static void __ATTRS_o_ai
3483 vec_mtvscr(vector float __a)
3485 __builtin_altivec_mtvscr((vector int)__a);
3490 static vector short __ATTRS_o_ai
3491 vec_mule(vector signed char __a, vector signed char __b)
3493 return __builtin_altivec_vmulesb(__a, __b);
3496 static vector unsigned short __ATTRS_o_ai
3497 vec_mule(vector unsigned char __a, vector unsigned char __b)
3499 return __builtin_altivec_vmuleub(__a, __b);
3502 static vector int __ATTRS_o_ai
3503 vec_mule(vector short __a, vector short __b)
3505 return __builtin_altivec_vmulesh(__a, __b);
3508 static vector unsigned int __ATTRS_o_ai
3509 vec_mule(vector unsigned short __a, vector unsigned short __b)
3511 return __builtin_altivec_vmuleuh(__a, __b);
3516 static vector short __attribute__((__always_inline__))
3517 vec_vmulesb(vector signed char __a, vector signed char __b)
3519 return __builtin_altivec_vmulesb(__a, __b);
3524 static vector unsigned short __attribute__((__always_inline__))
3525 vec_vmuleub(vector unsigned char __a, vector unsigned char __b)
3527 return __builtin_altivec_vmuleub(__a, __b);
3532 static vector int __attribute__((__always_inline__))
3533 vec_vmulesh(vector short __a, vector short __b)
3535 return __builtin_altivec_vmulesh(__a, __b);
3540 static vector unsigned int __attribute__((__always_inline__))
3541 vec_vmuleuh(vector unsigned short __a, vector unsigned short __b)
3543 return __builtin_altivec_vmuleuh(__a, __b);
3548 static vector short __ATTRS_o_ai
3549 vec_mulo(vector signed char __a, vector signed char __b)
3551 return __builtin_altivec_vmulosb(__a, __b);
3554 static vector unsigned short __ATTRS_o_ai
3555 vec_mulo(vector unsigned char __a, vector unsigned char __b)
3557 return __builtin_altivec_vmuloub(__a, __b);
3560 static vector int __ATTRS_o_ai
3561 vec_mulo(vector short __a, vector short __b)
3563 return __builtin_altivec_vmulosh(__a, __b);
3566 static vector unsigned int __ATTRS_o_ai
3567 vec_mulo(vector unsigned short __a, vector unsigned short __b)
3569 return __builtin_altivec_vmulouh(__a, __b);
3574 static vector short __attribute__((__always_inline__))
3575 vec_vmulosb(vector signed char __a, vector signed char __b)
3577 return __builtin_altivec_vmulosb(__a, __b);
3582 static vector unsigned short __attribute__((__always_inline__))
3583 vec_vmuloub(vector unsigned char __a, vector unsigned char __b)
3585 return __builtin_altivec_vmuloub(__a, __b);
3590 static vector int __attribute__((__always_inline__))
3591 vec_vmulosh(vector short __a, vector short __b)
3593 return __builtin_altivec_vmulosh(__a, __b);
3598 static vector unsigned int __attribute__((__always_inline__))
3599 vec_vmulouh(vector unsigned short __a, vector unsigned short __b)
3601 return __builtin_altivec_vmulouh(__a, __b);
3606 static vector float __attribute__((__always_inline__))
3607 vec_nmsub(vector float __a, vector float __b, vector float __c)
3609 return __builtin_altivec_vnmsubfp(__a, __b, __c);
3614 static vector float __attribute__((__always_inline__))
3615 vec_vnmsubfp(vector float __a, vector float __b, vector float __c)
3617 return __builtin_altivec_vnmsubfp(__a, __b, __c);
3622 #define __builtin_altivec_vnor vec_nor
3624 static vector signed char __ATTRS_o_ai
3625 vec_nor(vector signed char __a, vector signed char __b)
3627 return ~(__a | __b);
3630 static vector unsigned char __ATTRS_o_ai
3631 vec_nor(vector unsigned char __a, vector unsigned char __b)
3633 return ~(__a | __b);
3636 static vector bool char __ATTRS_o_ai
3637 vec_nor(vector bool char __a, vector bool char __b)
3639 return ~(__a | __b);
3642 static vector short __ATTRS_o_ai
3643 vec_nor(vector short __a, vector short __b)
3645 return ~(__a | __b);
3648 static vector unsigned short __ATTRS_o_ai
3649 vec_nor(vector unsigned short __a, vector unsigned short __b)
3651 return ~(__a | __b);
3654 static vector bool short __ATTRS_o_ai
3655 vec_nor(vector bool short __a, vector bool short __b)
3657 return ~(__a | __b);
3660 static vector int __ATTRS_o_ai
3661 vec_nor(vector int __a, vector int __b)
3663 return ~(__a | __b);
3666 static vector unsigned int __ATTRS_o_ai
3667 vec_nor(vector unsigned int __a, vector unsigned int __b)
3669 return ~(__a | __b);
3672 static vector bool int __ATTRS_o_ai
3673 vec_nor(vector bool int __a, vector bool int __b)
3675 return ~(__a | __b);
3678 static vector float __ATTRS_o_ai
3679 vec_nor(vector float __a, vector float __b)
3681 vector unsigned int __res = ~((vector unsigned int)__a | (vector unsigned int)__b);
3682 return (vector float)__res;
3687 static vector signed char __ATTRS_o_ai
3688 vec_vnor(vector signed char __a, vector signed char __b)
3690 return ~(__a | __b);
3693 static vector unsigned char __ATTRS_o_ai
3694 vec_vnor(vector unsigned char __a, vector unsigned char __b)
3696 return ~(__a | __b);
3699 static vector bool char __ATTRS_o_ai
3700 vec_vnor(vector bool char __a, vector bool char __b)
3702 return ~(__a | __b);
3705 static vector short __ATTRS_o_ai
3706 vec_vnor(vector short __a, vector short __b)
3708 return ~(__a | __b);
3711 static vector unsigned short __ATTRS_o_ai
3712 vec_vnor(vector unsigned short __a, vector unsigned short __b)
3714 return ~(__a | __b);
3717 static vector bool short __ATTRS_o_ai
3718 vec_vnor(vector bool short __a, vector bool short __b)
3720 return ~(__a | __b);
3723 static vector int __ATTRS_o_ai
3724 vec_vnor(vector int __a, vector int __b)
3726 return ~(__a | __b);
3729 static vector unsigned int __ATTRS_o_ai
3730 vec_vnor(vector unsigned int __a, vector unsigned int __b)
3732 return ~(__a | __b);
3735 static vector bool int __ATTRS_o_ai
3736 vec_vnor(vector bool int __a, vector bool int __b)
3738 return ~(__a | __b);
3741 static vector float __ATTRS_o_ai
3742 vec_vnor(vector float __a, vector float __b)
3744 vector unsigned int __res = ~((vector unsigned int)__a | (vector unsigned int)__b);
3745 return (vector float)__res;
3750 #define __builtin_altivec_vor vec_or
3752 static vector signed char __ATTRS_o_ai
3753 vec_or(vector signed char __a, vector signed char __b)
3758 static vector signed char __ATTRS_o_ai
3759 vec_or(vector bool char __a, vector signed char __b)
3761 return (vector signed char)__a | __b;
3764 static vector signed char __ATTRS_o_ai
3765 vec_or(vector signed char __a, vector bool char __b)
3767 return __a | (vector signed char)__b;
3770 static vector unsigned char __ATTRS_o_ai
3771 vec_or(vector unsigned char __a, vector unsigned char __b)
3776 static vector unsigned char __ATTRS_o_ai
3777 vec_or(vector bool char __a, vector unsigned char __b)
3779 return (vector unsigned char)__a | __b;
3782 static vector unsigned char __ATTRS_o_ai
3783 vec_or(vector unsigned char __a, vector bool char __b)
3785 return __a | (vector unsigned char)__b;
3788 static vector bool char __ATTRS_o_ai
3789 vec_or(vector bool char __a, vector bool char __b)
3794 static vector short __ATTRS_o_ai
3795 vec_or(vector short __a, vector short __b)
3800 static vector short __ATTRS_o_ai
3801 vec_or(vector bool short __a, vector short __b)
3803 return (vector short)__a | __b;
3806 static vector short __ATTRS_o_ai
3807 vec_or(vector short __a, vector bool short __b)
3809 return __a | (vector short)__b;
3812 static vector unsigned short __ATTRS_o_ai
3813 vec_or(vector unsigned short __a, vector unsigned short __b)
3818 static vector unsigned short __ATTRS_o_ai
3819 vec_or(vector bool short __a, vector unsigned short __b)
3821 return (vector unsigned short)__a | __b;
3824 static vector unsigned short __ATTRS_o_ai
3825 vec_or(vector unsigned short __a, vector bool short __b)
3827 return __a | (vector unsigned short)__b;
3830 static vector bool short __ATTRS_o_ai
3831 vec_or(vector bool short __a, vector bool short __b)
3836 static vector int __ATTRS_o_ai
3837 vec_or(vector int __a, vector int __b)
3842 static vector int __ATTRS_o_ai
3843 vec_or(vector bool int __a, vector int __b)
3845 return (vector int)__a | __b;
3848 static vector int __ATTRS_o_ai
3849 vec_or(vector int __a, vector bool int __b)
3851 return __a | (vector int)__b;
3854 static vector unsigned int __ATTRS_o_ai
3855 vec_or(vector unsigned int __a, vector unsigned int __b)
3860 static vector unsigned int __ATTRS_o_ai
3861 vec_or(vector bool int __a, vector unsigned int __b)
3863 return (vector unsigned int)__a | __b;
3866 static vector unsigned int __ATTRS_o_ai
3867 vec_or(vector unsigned int __a, vector bool int __b)
3869 return __a | (vector unsigned int)__b;
3872 static vector bool int __ATTRS_o_ai
3873 vec_or(vector bool int __a, vector bool int __b)
3878 static vector float __ATTRS_o_ai
3879 vec_or(vector float __a, vector float __b)
3881 vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b;
3882 return (vector float)__res;
3885 static vector float __ATTRS_o_ai
3886 vec_or(vector bool int __a, vector float __b)
3888 vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b;
3889 return (vector float)__res;
3892 static vector float __ATTRS_o_ai
3893 vec_or(vector float __a, vector bool int __b)
3895 vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b;
3896 return (vector float)__res;
3901 static vector signed char __ATTRS_o_ai
3902 vec_vor(vector signed char __a, vector signed char __b)
3907 static vector signed char __ATTRS_o_ai
3908 vec_vor(vector bool char __a, vector signed char __b)
3910 return (vector signed char)__a | __b;
3913 static vector signed char __ATTRS_o_ai
3914 vec_vor(vector signed char __a, vector bool char __b)
3916 return __a | (vector signed char)__b;
3919 static vector unsigned char __ATTRS_o_ai
3920 vec_vor(vector unsigned char __a, vector unsigned char __b)
3925 static vector unsigned char __ATTRS_o_ai
3926 vec_vor(vector bool char __a, vector unsigned char __b)
3928 return (vector unsigned char)__a | __b;
3931 static vector unsigned char __ATTRS_o_ai
3932 vec_vor(vector unsigned char __a, vector bool char __b)
3934 return __a | (vector unsigned char)__b;
3937 static vector bool char __ATTRS_o_ai
3938 vec_vor(vector bool char __a, vector bool char __b)
3943 static vector short __ATTRS_o_ai
3944 vec_vor(vector short __a, vector short __b)
3949 static vector short __ATTRS_o_ai
3950 vec_vor(vector bool short __a, vector short __b)
3952 return (vector short)__a | __b;
3955 static vector short __ATTRS_o_ai
3956 vec_vor(vector short __a, vector bool short __b)
3958 return __a | (vector short)__b;
3961 static vector unsigned short __ATTRS_o_ai
3962 vec_vor(vector unsigned short __a, vector unsigned short __b)
3967 static vector unsigned short __ATTRS_o_ai
3968 vec_vor(vector bool short __a, vector unsigned short __b)
3970 return (vector unsigned short)__a | __b;
3973 static vector unsigned short __ATTRS_o_ai
3974 vec_vor(vector unsigned short __a, vector bool short __b)
3976 return __a | (vector unsigned short)__b;
3979 static vector bool short __ATTRS_o_ai
3980 vec_vor(vector bool short __a, vector bool short __b)
3985 static vector int __ATTRS_o_ai
3986 vec_vor(vector int __a, vector int __b)
3991 static vector int __ATTRS_o_ai
3992 vec_vor(vector bool int __a, vector int __b)
3994 return (vector int)__a | __b;
3997 static vector int __ATTRS_o_ai
3998 vec_vor(vector int __a, vector bool int __b)
4000 return __a | (vector int)__b;
4003 static vector unsigned int __ATTRS_o_ai
4004 vec_vor(vector unsigned int __a, vector unsigned int __b)
4009 static vector unsigned int __ATTRS_o_ai
4010 vec_vor(vector bool int __a, vector unsigned int __b)
4012 return (vector unsigned int)__a | __b;
4015 static vector unsigned int __ATTRS_o_ai
4016 vec_vor(vector unsigned int __a, vector bool int __b)
4018 return __a | (vector unsigned int)__b;
4021 static vector bool int __ATTRS_o_ai
4022 vec_vor(vector bool int __a, vector bool int __b)
4027 static vector float __ATTRS_o_ai
4028 vec_vor(vector float __a, vector float __b)
4030 vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b;
4031 return (vector float)__res;
4034 static vector float __ATTRS_o_ai
4035 vec_vor(vector bool int __a, vector float __b)
4037 vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b;
4038 return (vector float)__res;
4041 static vector float __ATTRS_o_ai
4042 vec_vor(vector float __a, vector bool int __b)
4044 vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b;
4045 return (vector float)__res;
4050 static vector signed char __ATTRS_o_ai
4051 vec_pack(vector signed short __a, vector signed short __b)
4053 return (vector signed char)vec_perm(__a, __b, (vector unsigned char)
4054 (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
4055 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
4058 static vector unsigned char __ATTRS_o_ai
4059 vec_pack(vector unsigned short __a, vector unsigned short __b)
4061 return (vector unsigned char)vec_perm(__a, __b, (vector unsigned char)
4062 (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
4063 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
4066 static vector bool char __ATTRS_o_ai
4067 vec_pack(vector bool short __a, vector bool short __b)
4069 return (vector bool char)vec_perm(__a, __b, (vector unsigned char)
4070 (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
4071 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
4074 static vector short __ATTRS_o_ai
4075 vec_pack(vector int __a, vector int __b)
4077 return (vector short)vec_perm(__a, __b, (vector unsigned char)
4078 (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
4079 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
4082 static vector unsigned short __ATTRS_o_ai
4083 vec_pack(vector unsigned int __a, vector unsigned int __b)
4085 return (vector unsigned short)vec_perm(__a, __b, (vector unsigned char)
4086 (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
4087 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
4090 static vector bool short __ATTRS_o_ai
4091 vec_pack(vector bool int __a, vector bool int __b)
4093 return (vector bool short)vec_perm(__a, __b, (vector unsigned char)
4094 (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
4095 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
4100 #define __builtin_altivec_vpkuhum vec_vpkuhum
4102 static vector signed char __ATTRS_o_ai
4103 vec_vpkuhum(vector signed short __a, vector signed short __b)
4105 return (vector signed char)vec_perm(__a, __b, (vector unsigned char)
4106 (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
4107 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
4110 static vector unsigned char __ATTRS_o_ai
4111 vec_vpkuhum(vector unsigned short __a, vector unsigned short __b)
4113 return (vector unsigned char)vec_perm(__a, __b, (vector unsigned char)
4114 (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
4115 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
4118 static vector bool char __ATTRS_o_ai
4119 vec_vpkuhum(vector bool short __a, vector bool short __b)
4121 return (vector bool char)vec_perm(__a, __b, (vector unsigned char)
4122 (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
4123 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
4128 #define __builtin_altivec_vpkuwum vec_vpkuwum
4130 static vector short __ATTRS_o_ai
4131 vec_vpkuwum(vector int __a, vector int __b)
4133 return (vector short)vec_perm(__a, __b, (vector unsigned char)
4134 (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
4135 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
4138 static vector unsigned short __ATTRS_o_ai
4139 vec_vpkuwum(vector unsigned int __a, vector unsigned int __b)
4141 return (vector unsigned short)vec_perm(__a, __b, (vector unsigned char)
4142 (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
4143 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
4146 static vector bool short __ATTRS_o_ai
4147 vec_vpkuwum(vector bool int __a, vector bool int __b)
4149 return (vector bool short)vec_perm(__a, __b, (vector unsigned char)
4150 (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
4151 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
4156 static vector pixel __attribute__((__always_inline__))
4157 vec_packpx(vector unsigned int __a, vector unsigned int __b)
4159 return (vector pixel)__builtin_altivec_vpkpx(__a, __b);
4164 static vector pixel __attribute__((__always_inline__))
4165 vec_vpkpx(vector unsigned int __a, vector unsigned int __b)
4167 return (vector pixel)__builtin_altivec_vpkpx(__a, __b);
4172 static vector signed char __ATTRS_o_ai
4173 vec_packs(vector short __a, vector short __b)
4175 return __builtin_altivec_vpkshss(__a, __b);
4178 static vector unsigned char __ATTRS_o_ai
4179 vec_packs(vector unsigned short __a, vector unsigned short __b)
4181 return __builtin_altivec_vpkuhus(__a, __b);
4184 static vector signed short __ATTRS_o_ai
4185 vec_packs(vector int __a, vector int __b)
4187 return __builtin_altivec_vpkswss(__a, __b);
4190 static vector unsigned short __ATTRS_o_ai
4191 vec_packs(vector unsigned int __a, vector unsigned int __b)
4193 return __builtin_altivec_vpkuwus(__a, __b);
4198 static vector signed char __attribute__((__always_inline__))
4199 vec_vpkshss(vector short __a, vector short __b)
4201 return __builtin_altivec_vpkshss(__a, __b);
4206 static vector unsigned char __attribute__((__always_inline__))
4207 vec_vpkuhus(vector unsigned short __a, vector unsigned short __b)
4209 return __builtin_altivec_vpkuhus(__a, __b);
4214 static vector signed short __attribute__((__always_inline__))
4215 vec_vpkswss(vector int __a, vector int __b)
4217 return __builtin_altivec_vpkswss(__a, __b);
4222 static vector unsigned short __attribute__((__always_inline__))
4223 vec_vpkuwus(vector unsigned int __a, vector unsigned int __b)
4225 return __builtin_altivec_vpkuwus(__a, __b);
4230 static vector unsigned char __ATTRS_o_ai
4231 vec_packsu(vector short __a, vector short __b)
4233 return __builtin_altivec_vpkshus(__a, __b);
4236 static vector unsigned char __ATTRS_o_ai
4237 vec_packsu(vector unsigned short __a, vector unsigned short __b)
4239 return __builtin_altivec_vpkuhus(__a, __b);
4242 static vector unsigned short __ATTRS_o_ai
4243 vec_packsu(vector int __a, vector int __b)
4245 return __builtin_altivec_vpkswus(__a, __b);
4248 static vector unsigned short __ATTRS_o_ai
4249 vec_packsu(vector unsigned int __a, vector unsigned int __b)
4251 return __builtin_altivec_vpkuwus(__a, __b);
4256 static vector unsigned char __ATTRS_o_ai
4257 vec_vpkshus(vector short __a, vector short __b)
4259 return __builtin_altivec_vpkshus(__a, __b);
4262 static vector unsigned char __ATTRS_o_ai
4263 vec_vpkshus(vector unsigned short __a, vector unsigned short __b)
4265 return __builtin_altivec_vpkuhus(__a, __b);
4270 static vector unsigned short __ATTRS_o_ai
4271 vec_vpkswus(vector int __a, vector int __b)
4273 return __builtin_altivec_vpkswus(__a, __b);
4276 static vector unsigned short __ATTRS_o_ai
4277 vec_vpkswus(vector unsigned int __a, vector unsigned int __b)
4279 return __builtin_altivec_vpkuwus(__a, __b);
4284 vector signed char __ATTRS_o_ai
4285 vec_perm(vector signed char __a, vector signed char __b, vector unsigned char __c)
4287 return (vector signed char)
4288 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4291 vector unsigned char __ATTRS_o_ai
4292 vec_perm(vector unsigned char __a,
4293 vector unsigned char __b,
4294 vector unsigned char __c)
4296 return (vector unsigned char)
4297 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4300 vector bool char __ATTRS_o_ai
4301 vec_perm(vector bool char __a, vector bool char __b, vector unsigned char __c)
4303 return (vector bool char)
4304 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4307 vector short __ATTRS_o_ai
4308 vec_perm(vector short __a, vector short __b, vector unsigned char __c)
4310 return (vector short)
4311 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4314 vector unsigned short __ATTRS_o_ai
4315 vec_perm(vector unsigned short __a,
4316 vector unsigned short __b,
4317 vector unsigned char __c)
4319 return (vector unsigned short)
4320 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4323 vector bool short __ATTRS_o_ai
4324 vec_perm(vector bool short __a, vector bool short __b, vector unsigned char __c)
4326 return (vector bool short)
4327 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4330 vector pixel __ATTRS_o_ai
4331 vec_perm(vector pixel __a, vector pixel __b, vector unsigned char __c)
4333 return (vector pixel)
4334 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4337 vector int __ATTRS_o_ai
4338 vec_perm(vector int __a, vector int __b, vector unsigned char __c)
4340 return (vector int)__builtin_altivec_vperm_4si(__a, __b, __c);
4343 vector unsigned int __ATTRS_o_ai
4344 vec_perm(vector unsigned int __a, vector unsigned int __b, vector unsigned char __c)
4346 return (vector unsigned int)
4347 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4350 vector bool int __ATTRS_o_ai
4351 vec_perm(vector bool int __a, vector bool int __b, vector unsigned char __c)
4353 return (vector bool int)
4354 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4357 vector float __ATTRS_o_ai
4358 vec_perm(vector float __a, vector float __b, vector unsigned char __c)
4360 return (vector float)
4361 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4366 static vector signed char __ATTRS_o_ai
4367 vec_vperm(vector signed char __a, vector signed char __b, vector unsigned char __c)
4369 return (vector signed char)
4370 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4373 static vector unsigned char __ATTRS_o_ai
4374 vec_vperm(vector unsigned char __a,
4375 vector unsigned char __b,
4376 vector unsigned char __c)
4378 return (vector unsigned char)
4379 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4382 static vector bool char __ATTRS_o_ai
4383 vec_vperm(vector bool char __a, vector bool char __b, vector unsigned char __c)
4385 return (vector bool char)
4386 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4389 static vector short __ATTRS_o_ai
4390 vec_vperm(vector short __a, vector short __b, vector unsigned char __c)
4392 return (vector short)
4393 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4396 static vector unsigned short __ATTRS_o_ai
4397 vec_vperm(vector unsigned short __a,
4398 vector unsigned short __b,
4399 vector unsigned char __c)
4401 return (vector unsigned short)
4402 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4405 static vector bool short __ATTRS_o_ai
4406 vec_vperm(vector bool short __a, vector bool short __b, vector unsigned char __c)
4408 return (vector bool short)
4409 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4412 static vector pixel __ATTRS_o_ai
4413 vec_vperm(vector pixel __a, vector pixel __b, vector unsigned char __c)
4415 return (vector pixel)
4416 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4419 static vector int __ATTRS_o_ai
4420 vec_vperm(vector int __a, vector int __b, vector unsigned char __c)
4422 return (vector int)__builtin_altivec_vperm_4si(__a, __b, __c);
4425 static vector unsigned int __ATTRS_o_ai
4426 vec_vperm(vector unsigned int __a, vector unsigned int __b, vector unsigned char __c)
4428 return (vector unsigned int)
4429 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4432 static vector bool int __ATTRS_o_ai
4433 vec_vperm(vector bool int __a, vector bool int __b, vector unsigned char __c)
4435 return (vector bool int)
4436 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4439 static vector float __ATTRS_o_ai
4440 vec_vperm(vector float __a, vector float __b, vector unsigned char __c)
4442 return (vector float)
4443 __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c);
4448 static vector float __attribute__((__always_inline__))
4449 vec_re(vector float __a)
4451 return __builtin_altivec_vrefp(__a);
4456 static vector float __attribute__((__always_inline__))
4457 vec_vrefp(vector float __a)
4459 return __builtin_altivec_vrefp(__a);
4464 static vector signed char __ATTRS_o_ai
4465 vec_rl(vector signed char __a, vector unsigned char __b)
4467 return (vector signed char)__builtin_altivec_vrlb((vector char)__a, __b);
4470 static vector unsigned char __ATTRS_o_ai
4471 vec_rl(vector unsigned char __a, vector unsigned char __b)
4473 return (vector unsigned char)__builtin_altivec_vrlb((vector char)__a, __b);
4476 static vector short __ATTRS_o_ai
4477 vec_rl(vector short __a, vector unsigned short __b)
4479 return __builtin_altivec_vrlh(__a, __b);
4482 static vector unsigned short __ATTRS_o_ai
4483 vec_rl(vector unsigned short __a, vector unsigned short __b)
4485 return (vector unsigned short)__builtin_altivec_vrlh((vector short)__a, __b);
4488 static vector int __ATTRS_o_ai
4489 vec_rl(vector int __a, vector unsigned int __b)
4491 return __builtin_altivec_vrlw(__a, __b);
4494 static vector unsigned int __ATTRS_o_ai
4495 vec_rl(vector unsigned int __a, vector unsigned int __b)
4497 return (vector unsigned int)__builtin_altivec_vrlw((vector int)__a, __b);
4502 static vector signed char __ATTRS_o_ai
4503 vec_vrlb(vector signed char __a, vector unsigned char __b)
4505 return (vector signed char)__builtin_altivec_vrlb((vector char)__a, __b);
4508 static vector unsigned char __ATTRS_o_ai
4509 vec_vrlb(vector unsigned char __a, vector unsigned char __b)
4511 return (vector unsigned char)__builtin_altivec_vrlb((vector char)__a, __b);
4516 static vector short __ATTRS_o_ai
4517 vec_vrlh(vector short __a, vector unsigned short __b)
4519 return __builtin_altivec_vrlh(__a, __b);
4522 static vector unsigned short __ATTRS_o_ai
4523 vec_vrlh(vector unsigned short __a, vector unsigned short __b)
4525 return (vector unsigned short)__builtin_altivec_vrlh((vector short)__a, __b);
4530 static vector int __ATTRS_o_ai
4531 vec_vrlw(vector int __a, vector unsigned int __b)
4533 return __builtin_altivec_vrlw(__a, __b);
4536 static vector unsigned int __ATTRS_o_ai
4537 vec_vrlw(vector unsigned int __a, vector unsigned int __b)
4539 return (vector unsigned int)__builtin_altivec_vrlw((vector int)__a, __b);
4544 static vector float __attribute__((__always_inline__))
4545 vec_round(vector float __a)
4547 return __builtin_altivec_vrfin(__a);
4552 static vector float __attribute__((__always_inline__))
4553 vec_vrfin(vector float __a)
4555 return __builtin_altivec_vrfin(__a);
4560 static __vector float __attribute__((__always_inline__))
4561 vec_rsqrte(vector float __a)
4563 return __builtin_altivec_vrsqrtefp(__a);
4568 static __vector float __attribute__((__always_inline__))
4569 vec_vrsqrtefp(vector float __a)
4571 return __builtin_altivec_vrsqrtefp(__a);
4576 #define __builtin_altivec_vsel_4si vec_sel
4578 static vector signed char __ATTRS_o_ai
4579 vec_sel(vector signed char __a, vector signed char __b, vector unsigned char __c)
4581 return (__a & ~(vector signed char)__c) | (__b & (vector signed char)__c);
4584 static vector signed char __ATTRS_o_ai
4585 vec_sel(vector signed char __a, vector signed char __b, vector bool char __c)
4587 return (__a & ~(vector signed char)__c) | (__b & (vector signed char)__c);
4590 static vector unsigned char __ATTRS_o_ai
4591 vec_sel(vector unsigned char __a, vector unsigned char __b, vector unsigned char __c)
4593 return (__a & ~__c) | (__b & __c);
4596 static vector unsigned char __ATTRS_o_ai
4597 vec_sel(vector unsigned char __a, vector unsigned char __b, vector bool char __c)
4599 return (__a & ~(vector unsigned char)__c) | (__b & (vector unsigned char)__c);
4602 static vector bool char __ATTRS_o_ai
4603 vec_sel(vector bool char __a, vector bool char __b, vector unsigned char __c)
4605 return (__a & ~(vector bool char)__c) | (__b & (vector bool char)__c);
4608 static vector bool char __ATTRS_o_ai
4609 vec_sel(vector bool char __a, vector bool char __b, vector bool char __c)
4611 return (__a & ~__c) | (__b & __c);
4614 static vector short __ATTRS_o_ai
4615 vec_sel(vector short __a, vector short __b, vector unsigned short __c)
4617 return (__a & ~(vector short)__c) | (__b & (vector short)__c);
4620 static vector short __ATTRS_o_ai
4621 vec_sel(vector short __a, vector short __b, vector bool short __c)
4623 return (__a & ~(vector short)__c) | (__b & (vector short)__c);
4626 static vector unsigned short __ATTRS_o_ai
4627 vec_sel(vector unsigned short __a,
4628 vector unsigned short __b,
4629 vector unsigned short __c)
4631 return (__a & ~__c) | (__b & __c);
4634 static vector unsigned short __ATTRS_o_ai
4635 vec_sel(vector unsigned short __a, vector unsigned short __b, vector bool short __c)
4637 return (__a & ~(vector unsigned short)__c) | (__b & (vector unsigned short)__c);
4640 static vector bool short __ATTRS_o_ai
4641 vec_sel(vector bool short __a, vector bool short __b, vector unsigned short __c)
4643 return (__a & ~(vector bool short)__c) | (__b & (vector bool short)__c);
4646 static vector bool short __ATTRS_o_ai
4647 vec_sel(vector bool short __a, vector bool short __b, vector bool short __c)
4649 return (__a & ~__c) | (__b & __c);
4652 static vector int __ATTRS_o_ai
4653 vec_sel(vector int __a, vector int __b, vector unsigned int __c)
4655 return (__a & ~(vector int)__c) | (__b & (vector int)__c);
4658 static vector int __ATTRS_o_ai
4659 vec_sel(vector int __a, vector int __b, vector bool int __c)
4661 return (__a & ~(vector int)__c) | (__b & (vector int)__c);
4664 static vector unsigned int __ATTRS_o_ai
4665 vec_sel(vector unsigned int __a, vector unsigned int __b, vector unsigned int __c)
4667 return (__a & ~__c) | (__b & __c);
4670 static vector unsigned int __ATTRS_o_ai
4671 vec_sel(vector unsigned int __a, vector unsigned int __b, vector bool int __c)
4673 return (__a & ~(vector unsigned int)__c) | (__b & (vector unsigned int)__c);
4676 static vector bool int __ATTRS_o_ai
4677 vec_sel(vector bool int __a, vector bool int __b, vector unsigned int __c)
4679 return (__a & ~(vector bool int)__c) | (__b & (vector bool int)__c);
4682 static vector bool int __ATTRS_o_ai
4683 vec_sel(vector bool int __a, vector bool int __b, vector bool int __c)
4685 return (__a & ~__c) | (__b & __c);
4688 static vector float __ATTRS_o_ai
4689 vec_sel(vector float __a, vector float __b, vector unsigned int __c)
4691 vector int __res = ((vector int)__a & ~(vector int)__c)
4692 | ((vector int)__b & (vector int)__c);
4693 return (vector float)__res;
4696 static vector float __ATTRS_o_ai
4697 vec_sel(vector float __a, vector float __b, vector bool int __c)
4699 vector int __res = ((vector int)__a & ~(vector int)__c)
4700 | ((vector int)__b & (vector int)__c);
4701 return (vector float)__res;
4706 static vector signed char __ATTRS_o_ai
4707 vec_vsel(vector signed char __a, vector signed char __b, vector unsigned char __c)
4709 return (__a & ~(vector signed char)__c) | (__b & (vector signed char)__c);
4712 static vector signed char __ATTRS_o_ai
4713 vec_vsel(vector signed char __a, vector signed char __b, vector bool char __c)
4715 return (__a & ~(vector signed char)__c) | (__b & (vector signed char)__c);
4718 static vector unsigned char __ATTRS_o_ai
4719 vec_vsel(vector unsigned char __a, vector unsigned char __b, vector unsigned char __c)
4721 return (__a & ~__c) | (__b & __c);
4724 static vector unsigned char __ATTRS_o_ai
4725 vec_vsel(vector unsigned char __a, vector unsigned char __b, vector bool char __c)
4727 return (__a & ~(vector unsigned char)__c) | (__b & (vector unsigned char)__c);
4730 static vector bool char __ATTRS_o_ai
4731 vec_vsel(vector bool char __a, vector bool char __b, vector unsigned char __c)
4733 return (__a & ~(vector bool char)__c) | (__b & (vector bool char)__c);
4736 static vector bool char __ATTRS_o_ai
4737 vec_vsel(vector bool char __a, vector bool char __b, vector bool char __c)
4739 return (__a & ~__c) | (__b & __c);
4742 static vector short __ATTRS_o_ai
4743 vec_vsel(vector short __a, vector short __b, vector unsigned short __c)
4745 return (__a & ~(vector short)__c) | (__b & (vector short)__c);
4748 static vector short __ATTRS_o_ai
4749 vec_vsel(vector short __a, vector short __b, vector bool short __c)
4751 return (__a & ~(vector short)__c) | (__b & (vector short)__c);
4754 static vector unsigned short __ATTRS_o_ai
4755 vec_vsel(vector unsigned short __a,
4756 vector unsigned short __b,
4757 vector unsigned short __c)
4759 return (__a & ~__c) | (__b & __c);
4762 static vector unsigned short __ATTRS_o_ai
4763 vec_vsel(vector unsigned short __a, vector unsigned short __b, vector bool short __c)
4765 return (__a & ~(vector unsigned short)__c) | (__b & (vector unsigned short)__c);
4768 static vector bool short __ATTRS_o_ai
4769 vec_vsel(vector bool short __a, vector bool short __b, vector unsigned short __c)
4771 return (__a & ~(vector bool short)__c) | (__b & (vector bool short)__c);
4774 static vector bool short __ATTRS_o_ai
4775 vec_vsel(vector bool short __a, vector bool short __b, vector bool short __c)
4777 return (__a & ~__c) | (__b & __c);
4780 static vector int __ATTRS_o_ai
4781 vec_vsel(vector int __a, vector int __b, vector unsigned int __c)
4783 return (__a & ~(vector int)__c) | (__b & (vector int)__c);
4786 static vector int __ATTRS_o_ai
4787 vec_vsel(vector int __a, vector int __b, vector bool int __c)
4789 return (__a & ~(vector int)__c) | (__b & (vector int)__c);
4792 static vector unsigned int __ATTRS_o_ai
4793 vec_vsel(vector unsigned int __a, vector unsigned int __b, vector unsigned int __c)
4795 return (__a & ~__c) | (__b & __c);
4798 static vector unsigned int __ATTRS_o_ai
4799 vec_vsel(vector unsigned int __a, vector unsigned int __b, vector bool int __c)
4801 return (__a & ~(vector unsigned int)__c) | (__b & (vector unsigned int)__c);
4804 static vector bool int __ATTRS_o_ai
4805 vec_vsel(vector bool int __a, vector bool int __b, vector unsigned int __c)
4807 return (__a & ~(vector bool int)__c) | (__b & (vector bool int)__c);
4810 static vector bool int __ATTRS_o_ai
4811 vec_vsel(vector bool int __a, vector bool int __b, vector bool int __c)
4813 return (__a & ~__c) | (__b & __c);
4816 static vector float __ATTRS_o_ai
4817 vec_vsel(vector float __a, vector float __b, vector unsigned int __c)
4819 vector int __res = ((vector int)__a & ~(vector int)__c)
4820 | ((vector int)__b & (vector int)__c);
4821 return (vector float)__res;
4824 static vector float __ATTRS_o_ai
4825 vec_vsel(vector float __a, vector float __b, vector bool int __c)
4827 vector int __res = ((vector int)__a & ~(vector int)__c)
4828 | ((vector int)__b & (vector int)__c);
4829 return (vector float)__res;
4834 static vector signed char __ATTRS_o_ai
4835 vec_sl(vector signed char __a, vector unsigned char __b)
4837 return __a << (vector signed char)__b;
4840 static vector unsigned char __ATTRS_o_ai
4841 vec_sl(vector unsigned char __a, vector unsigned char __b)
4846 static vector short __ATTRS_o_ai
4847 vec_sl(vector short __a, vector unsigned short __b)
4849 return __a << (vector short)__b;
4852 static vector unsigned short __ATTRS_o_ai
4853 vec_sl(vector unsigned short __a, vector unsigned short __b)
4858 static vector int __ATTRS_o_ai
4859 vec_sl(vector int __a, vector unsigned int __b)
4861 return __a << (vector int)__b;
4864 static vector unsigned int __ATTRS_o_ai
4865 vec_sl(vector unsigned int __a, vector unsigned int __b)
4872 #define __builtin_altivec_vslb vec_vslb
4874 static vector signed char __ATTRS_o_ai
4875 vec_vslb(vector signed char __a, vector unsigned char __b)
4877 return vec_sl(__a, __b);
4880 static vector unsigned char __ATTRS_o_ai
4881 vec_vslb(vector unsigned char __a, vector unsigned char __b)
4883 return vec_sl(__a, __b);
4888 #define __builtin_altivec_vslh vec_vslh
4890 static vector short __ATTRS_o_ai
4891 vec_vslh(vector short __a, vector unsigned short __b)
4893 return vec_sl(__a, __b);
4896 static vector unsigned short __ATTRS_o_ai
4897 vec_vslh(vector unsigned short __a, vector unsigned short __b)
4899 return vec_sl(__a, __b);
4904 #define __builtin_altivec_vslw vec_vslw
4906 static vector int __ATTRS_o_ai
4907 vec_vslw(vector int __a, vector unsigned int __b)
4909 return vec_sl(__a, __b);
4912 static vector unsigned int __ATTRS_o_ai
4913 vec_vslw(vector unsigned int __a, vector unsigned int __b)
4915 return vec_sl(__a, __b);
4920 #define __builtin_altivec_vsldoi_4si vec_sld
4922 static vector signed char __ATTRS_o_ai
4923 vec_sld(vector signed char __a, vector signed char __b, unsigned char __c)
4925 return vec_perm(__a, __b, (vector unsigned char)
4926 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
4927 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
4930 static vector unsigned char __ATTRS_o_ai
4931 vec_sld(vector unsigned char __a, vector unsigned char __b, unsigned char __c)
4933 return vec_perm(__a, __b, (vector unsigned char)
4934 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
4935 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
4938 static vector short __ATTRS_o_ai
4939 vec_sld(vector short __a, vector short __b, unsigned char __c)
4941 return vec_perm(__a, __b, (vector unsigned char)
4942 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
4943 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
4946 static vector unsigned short __ATTRS_o_ai
4947 vec_sld(vector unsigned short __a, vector unsigned short __b, unsigned char __c)
4949 return vec_perm(__a, __b, (vector unsigned char)
4950 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
4951 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
4954 static vector pixel __ATTRS_o_ai
4955 vec_sld(vector pixel __a, vector pixel __b, unsigned char __c)
4957 return vec_perm(__a, __b, (vector unsigned char)
4958 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
4959 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
4962 static vector int __ATTRS_o_ai
4963 vec_sld(vector int __a, vector int __b, unsigned char __c)
4965 return vec_perm(__a, __b, (vector unsigned char)
4966 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
4967 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
4970 static vector unsigned int __ATTRS_o_ai
4971 vec_sld(vector unsigned int __a, vector unsigned int __b, unsigned char __c)
4973 return vec_perm(__a, __b, (vector unsigned char)
4974 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
4975 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
4978 static vector float __ATTRS_o_ai
4979 vec_sld(vector float __a, vector float __b, unsigned char __c)
4981 return vec_perm(__a, __b, (vector unsigned char)
4982 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
4983 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
4988 static vector signed char __ATTRS_o_ai
4989 vec_vsldoi(vector signed char __a, vector signed char __b, unsigned char __c)
4991 return vec_perm(__a, __b, (vector unsigned char)
4992 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
4993 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
4996 static vector unsigned char __ATTRS_o_ai
4997 vec_vsldoi(vector unsigned char __a, vector unsigned char __b, unsigned char __c)
4999 return vec_perm(__a, __b, (vector unsigned char)
5000 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
5001 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
5004 static vector short __ATTRS_o_ai
5005 vec_vsldoi(vector short __a, vector short __b, unsigned char __c)
5007 return vec_perm(__a, __b, (vector unsigned char)
5008 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
5009 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
5012 static vector unsigned short __ATTRS_o_ai
5013 vec_vsldoi(vector unsigned short __a, vector unsigned short __b, unsigned char __c)
5015 return vec_perm(__a, __b, (vector unsigned char)
5016 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
5017 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
5020 static vector pixel __ATTRS_o_ai
5021 vec_vsldoi(vector pixel __a, vector pixel __b, unsigned char __c)
5023 return vec_perm(__a, __b, (vector unsigned char)
5024 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
5025 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
5028 static vector int __ATTRS_o_ai
5029 vec_vsldoi(vector int __a, vector int __b, unsigned char __c)
5031 return vec_perm(__a, __b, (vector unsigned char)
5032 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
5033 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
5036 static vector unsigned int __ATTRS_o_ai
5037 vec_vsldoi(vector unsigned int __a, vector unsigned int __b, unsigned char __c)
5039 return vec_perm(__a, __b, (vector unsigned char)
5040 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
5041 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
5044 static vector float __ATTRS_o_ai
5045 vec_vsldoi(vector float __a, vector float __b, unsigned char __c)
5047 return vec_perm(__a, __b, (vector unsigned char)
5048 (__c, __c+1, __c+2, __c+3, __c+4, __c+5, __c+6, __c+7,
5049 __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15));
5054 static vector signed char __ATTRS_o_ai
5055 vec_sll(vector signed char __a, vector unsigned char __b)
5057 return (vector signed char)
5058 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5061 static vector signed char __ATTRS_o_ai
5062 vec_sll(vector signed char __a, vector unsigned short __b)
5064 return (vector signed char)
5065 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5068 static vector signed char __ATTRS_o_ai
5069 vec_sll(vector signed char __a, vector unsigned int __b)
5071 return (vector signed char)
5072 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5075 static vector unsigned char __ATTRS_o_ai
5076 vec_sll(vector unsigned char __a, vector unsigned char __b)
5078 return (vector unsigned char)
5079 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5082 static vector unsigned char __ATTRS_o_ai
5083 vec_sll(vector unsigned char __a, vector unsigned short __b)
5085 return (vector unsigned char)
5086 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5089 static vector unsigned char __ATTRS_o_ai
5090 vec_sll(vector unsigned char __a, vector unsigned int __b)
5092 return (vector unsigned char)
5093 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5096 static vector bool char __ATTRS_o_ai
5097 vec_sll(vector bool char __a, vector unsigned char __b)
5099 return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5102 static vector bool char __ATTRS_o_ai
5103 vec_sll(vector bool char __a, vector unsigned short __b)
5105 return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5108 static vector bool char __ATTRS_o_ai
5109 vec_sll(vector bool char __a, vector unsigned int __b)
5111 return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5114 static vector short __ATTRS_o_ai
5115 vec_sll(vector short __a, vector unsigned char __b)
5117 return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5120 static vector short __ATTRS_o_ai
5121 vec_sll(vector short __a, vector unsigned short __b)
5123 return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5126 static vector short __ATTRS_o_ai
5127 vec_sll(vector short __a, vector unsigned int __b)
5129 return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5132 static vector unsigned short __ATTRS_o_ai
5133 vec_sll(vector unsigned short __a, vector unsigned char __b)
5135 return (vector unsigned short)
5136 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5139 static vector unsigned short __ATTRS_o_ai
5140 vec_sll(vector unsigned short __a, vector unsigned short __b)
5142 return (vector unsigned short)
5143 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5146 static vector unsigned short __ATTRS_o_ai
5147 vec_sll(vector unsigned short __a, vector unsigned int __b)
5149 return (vector unsigned short)
5150 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5153 static vector bool short __ATTRS_o_ai
5154 vec_sll(vector bool short __a, vector unsigned char __b)
5156 return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5159 static vector bool short __ATTRS_o_ai
5160 vec_sll(vector bool short __a, vector unsigned short __b)
5162 return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5165 static vector bool short __ATTRS_o_ai
5166 vec_sll(vector bool short __a, vector unsigned int __b)
5168 return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5171 static vector pixel __ATTRS_o_ai
5172 vec_sll(vector pixel __a, vector unsigned char __b)
5174 return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5177 static vector pixel __ATTRS_o_ai
5178 vec_sll(vector pixel __a, vector unsigned short __b)
5180 return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5183 static vector pixel __ATTRS_o_ai
5184 vec_sll(vector pixel __a, vector unsigned int __b)
5186 return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5189 static vector int __ATTRS_o_ai
5190 vec_sll(vector int __a, vector unsigned char __b)
5192 return (vector int)__builtin_altivec_vsl(__a, (vector int)__b);
5195 static vector int __ATTRS_o_ai
5196 vec_sll(vector int __a, vector unsigned short __b)
5198 return (vector int)__builtin_altivec_vsl(__a, (vector int)__b);
5201 static vector int __ATTRS_o_ai
5202 vec_sll(vector int __a, vector unsigned int __b)
5204 return (vector int)__builtin_altivec_vsl(__a, (vector int)__b);
5207 static vector unsigned int __ATTRS_o_ai
5208 vec_sll(vector unsigned int __a, vector unsigned char __b)
5210 return (vector unsigned int)
5211 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5214 static vector unsigned int __ATTRS_o_ai
5215 vec_sll(vector unsigned int __a, vector unsigned short __b)
5217 return (vector unsigned int)
5218 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5221 static vector unsigned int __ATTRS_o_ai
5222 vec_sll(vector unsigned int __a, vector unsigned int __b)
5224 return (vector unsigned int)
5225 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5228 static vector bool int __ATTRS_o_ai
5229 vec_sll(vector bool int __a, vector unsigned char __b)
5231 return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5234 static vector bool int __ATTRS_o_ai
5235 vec_sll(vector bool int __a, vector unsigned short __b)
5237 return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5240 static vector bool int __ATTRS_o_ai
5241 vec_sll(vector bool int __a, vector unsigned int __b)
5243 return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5248 static vector signed char __ATTRS_o_ai
5249 vec_vsl(vector signed char __a, vector unsigned char __b)
5251 return (vector signed char)
5252 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5255 static vector signed char __ATTRS_o_ai
5256 vec_vsl(vector signed char __a, vector unsigned short __b)
5258 return (vector signed char)
5259 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5262 static vector signed char __ATTRS_o_ai
5263 vec_vsl(vector signed char __a, vector unsigned int __b)
5265 return (vector signed char)
5266 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5269 static vector unsigned char __ATTRS_o_ai
5270 vec_vsl(vector unsigned char __a, vector unsigned char __b)
5272 return (vector unsigned char)
5273 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5276 static vector unsigned char __ATTRS_o_ai
5277 vec_vsl(vector unsigned char __a, vector unsigned short __b)
5279 return (vector unsigned char)
5280 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5283 static vector unsigned char __ATTRS_o_ai
5284 vec_vsl(vector unsigned char __a, vector unsigned int __b)
5286 return (vector unsigned char)
5287 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5290 static vector bool char __ATTRS_o_ai
5291 vec_vsl(vector bool char __a, vector unsigned char __b)
5293 return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5296 static vector bool char __ATTRS_o_ai
5297 vec_vsl(vector bool char __a, vector unsigned short __b)
5299 return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5302 static vector bool char __ATTRS_o_ai
5303 vec_vsl(vector bool char __a, vector unsigned int __b)
5305 return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5308 static vector short __ATTRS_o_ai
5309 vec_vsl(vector short __a, vector unsigned char __b)
5311 return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5314 static vector short __ATTRS_o_ai
5315 vec_vsl(vector short __a, vector unsigned short __b)
5317 return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5320 static vector short __ATTRS_o_ai
5321 vec_vsl(vector short __a, vector unsigned int __b)
5323 return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5326 static vector unsigned short __ATTRS_o_ai
5327 vec_vsl(vector unsigned short __a, vector unsigned char __b)
5329 return (vector unsigned short)
5330 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5333 static vector unsigned short __ATTRS_o_ai
5334 vec_vsl(vector unsigned short __a, vector unsigned short __b)
5336 return (vector unsigned short)
5337 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5340 static vector unsigned short __ATTRS_o_ai
5341 vec_vsl(vector unsigned short __a, vector unsigned int __b)
5343 return (vector unsigned short)
5344 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5347 static vector bool short __ATTRS_o_ai
5348 vec_vsl(vector bool short __a, vector unsigned char __b)
5350 return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5353 static vector bool short __ATTRS_o_ai
5354 vec_vsl(vector bool short __a, vector unsigned short __b)
5356 return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5359 static vector bool short __ATTRS_o_ai
5360 vec_vsl(vector bool short __a, vector unsigned int __b)
5362 return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5365 static vector pixel __ATTRS_o_ai
5366 vec_vsl(vector pixel __a, vector unsigned char __b)
5368 return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5371 static vector pixel __ATTRS_o_ai
5372 vec_vsl(vector pixel __a, vector unsigned short __b)
5374 return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5377 static vector pixel __ATTRS_o_ai
5378 vec_vsl(vector pixel __a, vector unsigned int __b)
5380 return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5383 static vector int __ATTRS_o_ai
5384 vec_vsl(vector int __a, vector unsigned char __b)
5386 return (vector int)__builtin_altivec_vsl(__a, (vector int)__b);
5389 static vector int __ATTRS_o_ai
5390 vec_vsl(vector int __a, vector unsigned short __b)
5392 return (vector int)__builtin_altivec_vsl(__a, (vector int)__b);
5395 static vector int __ATTRS_o_ai
5396 vec_vsl(vector int __a, vector unsigned int __b)
5398 return (vector int)__builtin_altivec_vsl(__a, (vector int)__b);
5401 static vector unsigned int __ATTRS_o_ai
5402 vec_vsl(vector unsigned int __a, vector unsigned char __b)
5404 return (vector unsigned int)
5405 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5408 static vector unsigned int __ATTRS_o_ai
5409 vec_vsl(vector unsigned int __a, vector unsigned short __b)
5411 return (vector unsigned int)
5412 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5415 static vector unsigned int __ATTRS_o_ai
5416 vec_vsl(vector unsigned int __a, vector unsigned int __b)
5418 return (vector unsigned int)
5419 __builtin_altivec_vsl((vector int)__a, (vector int)__b);
5422 static vector bool int __ATTRS_o_ai
5423 vec_vsl(vector bool int __a, vector unsigned char __b)
5425 return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5428 static vector bool int __ATTRS_o_ai
5429 vec_vsl(vector bool int __a, vector unsigned short __b)
5431 return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5434 static vector bool int __ATTRS_o_ai
5435 vec_vsl(vector bool int __a, vector unsigned int __b)
5437 return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b);
5442 static vector signed char __ATTRS_o_ai
5443 vec_slo(vector signed char __a, vector signed char __b)
5445 return (vector signed char)
5446 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5449 static vector signed char __ATTRS_o_ai
5450 vec_slo(vector signed char __a, vector unsigned char __b)
5452 return (vector signed char)
5453 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5456 static vector unsigned char __ATTRS_o_ai
5457 vec_slo(vector unsigned char __a, vector signed char __b)
5459 return (vector unsigned char)
5460 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5463 static vector unsigned char __ATTRS_o_ai
5464 vec_slo(vector unsigned char __a, vector unsigned char __b)
5466 return (vector unsigned char)
5467 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5470 static vector short __ATTRS_o_ai
5471 vec_slo(vector short __a, vector signed char __b)
5473 return (vector short)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5476 static vector short __ATTRS_o_ai
5477 vec_slo(vector short __a, vector unsigned char __b)
5479 return (vector short)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5482 static vector unsigned short __ATTRS_o_ai
5483 vec_slo(vector unsigned short __a, vector signed char __b)
5485 return (vector unsigned short)
5486 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5489 static vector unsigned short __ATTRS_o_ai
5490 vec_slo(vector unsigned short __a, vector unsigned char __b)
5492 return (vector unsigned short)
5493 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5496 static vector pixel __ATTRS_o_ai
5497 vec_slo(vector pixel __a, vector signed char __b)
5499 return (vector pixel)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5502 static vector pixel __ATTRS_o_ai
5503 vec_slo(vector pixel __a, vector unsigned char __b)
5505 return (vector pixel)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5508 static vector int __ATTRS_o_ai
5509 vec_slo(vector int __a, vector signed char __b)
5511 return (vector int)__builtin_altivec_vslo(__a, (vector int)__b);
5514 static vector int __ATTRS_o_ai
5515 vec_slo(vector int __a, vector unsigned char __b)
5517 return (vector int)__builtin_altivec_vslo(__a, (vector int)__b);
5520 static vector unsigned int __ATTRS_o_ai
5521 vec_slo(vector unsigned int __a, vector signed char __b)
5523 return (vector unsigned int)
5524 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5527 static vector unsigned int __ATTRS_o_ai
5528 vec_slo(vector unsigned int __a, vector unsigned char __b)
5530 return (vector unsigned int)
5531 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5534 static vector float __ATTRS_o_ai
5535 vec_slo(vector float __a, vector signed char __b)
5537 return (vector float)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5540 static vector float __ATTRS_o_ai
5541 vec_slo(vector float __a, vector unsigned char __b)
5543 return (vector float)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5548 static vector signed char __ATTRS_o_ai
5549 vec_vslo(vector signed char __a, vector signed char __b)
5551 return (vector signed char)
5552 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5555 static vector signed char __ATTRS_o_ai
5556 vec_vslo(vector signed char __a, vector unsigned char __b)
5558 return (vector signed char)
5559 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5562 static vector unsigned char __ATTRS_o_ai
5563 vec_vslo(vector unsigned char __a, vector signed char __b)
5565 return (vector unsigned char)
5566 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5569 static vector unsigned char __ATTRS_o_ai
5570 vec_vslo(vector unsigned char __a, vector unsigned char __b)
5572 return (vector unsigned char)
5573 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5576 static vector short __ATTRS_o_ai
5577 vec_vslo(vector short __a, vector signed char __b)
5579 return (vector short)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5582 static vector short __ATTRS_o_ai
5583 vec_vslo(vector short __a, vector unsigned char __b)
5585 return (vector short)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5588 static vector unsigned short __ATTRS_o_ai
5589 vec_vslo(vector unsigned short __a, vector signed char __b)
5591 return (vector unsigned short)
5592 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5595 static vector unsigned short __ATTRS_o_ai
5596 vec_vslo(vector unsigned short __a, vector unsigned char __b)
5598 return (vector unsigned short)
5599 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5602 static vector pixel __ATTRS_o_ai
5603 vec_vslo(vector pixel __a, vector signed char __b)
5605 return (vector pixel)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5608 static vector pixel __ATTRS_o_ai
5609 vec_vslo(vector pixel __a, vector unsigned char __b)
5611 return (vector pixel)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5614 static vector int __ATTRS_o_ai
5615 vec_vslo(vector int __a, vector signed char __b)
5617 return (vector int)__builtin_altivec_vslo(__a, (vector int)__b);
5620 static vector int __ATTRS_o_ai
5621 vec_vslo(vector int __a, vector unsigned char __b)
5623 return (vector int)__builtin_altivec_vslo(__a, (vector int)__b);
5626 static vector unsigned int __ATTRS_o_ai
5627 vec_vslo(vector unsigned int __a, vector signed char __b)
5629 return (vector unsigned int)
5630 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5633 static vector unsigned int __ATTRS_o_ai
5634 vec_vslo(vector unsigned int __a, vector unsigned char __b)
5636 return (vector unsigned int)
5637 __builtin_altivec_vslo((vector int)__a, (vector int)__b);
5640 static vector float __ATTRS_o_ai
5641 vec_vslo(vector float __a, vector signed char __b)
5643 return (vector float)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5646 static vector float __ATTRS_o_ai
5647 vec_vslo(vector float __a, vector unsigned char __b)
5649 return (vector float)__builtin_altivec_vslo((vector int)__a, (vector int)__b);
5654 static vector signed char __ATTRS_o_ai
5655 vec_splat(vector signed char __a, unsigned char __b)
5657 return vec_perm(__a, __a, (vector unsigned char)(__b));
5660 static vector unsigned char __ATTRS_o_ai
5661 vec_splat(vector unsigned char __a, unsigned char __b)
5663 return vec_perm(__a, __a, (vector unsigned char)(__b));
5666 static vector bool char __ATTRS_o_ai
5667 vec_splat(vector bool char __a, unsigned char __b)
5669 return vec_perm(__a, __a, (vector unsigned char)(__b));
5672 static vector short __ATTRS_o_ai
5673 vec_splat(vector short __a, unsigned char __b)
5676 unsigned char b1=__b+1;
5677 return vec_perm(__a, __a, (vector unsigned char)
5678 (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1));
5681 static vector unsigned short __ATTRS_o_ai
5682 vec_splat(vector unsigned short __a, unsigned char __b)
5685 unsigned char b1=__b+1;
5686 return vec_perm(__a, __a, (vector unsigned char)
5687 (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1));
5690 static vector bool short __ATTRS_o_ai
5691 vec_splat(vector bool short __a, unsigned char __b)
5694 unsigned char b1=__b+1;
5695 return vec_perm(__a, __a, (vector unsigned char)
5696 (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1));
5699 static vector pixel __ATTRS_o_ai
5700 vec_splat(vector pixel __a, unsigned char __b)
5703 unsigned char b1=__b+1;
5704 return vec_perm(__a, __a, (vector unsigned char)
5705 (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1));
5708 static vector int __ATTRS_o_ai
5709 vec_splat(vector int __a, unsigned char __b)
5712 unsigned char b1=__b+1, b2=__b+2, b3=__b+3;
5713 return vec_perm(__a, __a, (vector unsigned char)
5714 (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3));
5717 static vector unsigned int __ATTRS_o_ai
5718 vec_splat(vector unsigned int __a, unsigned char __b)
5721 unsigned char b1=__b+1, b2=__b+2, b3=__b+3;
5722 return vec_perm(__a, __a, (vector unsigned char)
5723 (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3));
5726 static vector bool int __ATTRS_o_ai
5727 vec_splat(vector bool int __a, unsigned char __b)
5730 unsigned char b1=__b+1, b2=__b+2, b3=__b+3;
5731 return vec_perm(__a, __a, (vector unsigned char)
5732 (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3));
5735 static vector float __ATTRS_o_ai
5736 vec_splat(vector float __a, unsigned char __b)
5739 unsigned char b1=__b+1, b2=__b+2, b3=__b+3;
5740 return vec_perm(__a, __a, (vector unsigned char)
5741 (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3));
5746 #define __builtin_altivec_vspltb vec_vspltb
5748 static vector signed char __ATTRS_o_ai
5749 vec_vspltb(vector signed char __a, unsigned char __b)
5751 return vec_perm(__a, __a, (vector unsigned char)(__b));
5754 static vector unsigned char __ATTRS_o_ai
5755 vec_vspltb(vector unsigned char __a, unsigned char __b)
5757 return vec_perm(__a, __a, (vector unsigned char)(__b));
5760 static vector bool char __ATTRS_o_ai
5761 vec_vspltb(vector bool char __a, unsigned char __b)
5763 return vec_perm(__a, __a, (vector unsigned char)(__b));
5768 #define __builtin_altivec_vsplth vec_vsplth
5770 static vector short __ATTRS_o_ai
5771 vec_vsplth(vector short __a, unsigned char __b)
5774 unsigned char b1=__b+1;
5775 return vec_perm(__a, __a, (vector unsigned char)
5776 (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1));
5779 static vector unsigned short __ATTRS_o_ai
5780 vec_vsplth(vector unsigned short __a, unsigned char __b)
5783 unsigned char b1=__b+1;
5784 return vec_perm(__a, __a, (vector unsigned char)
5785 (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1));
5788 static vector bool short __ATTRS_o_ai
5789 vec_vsplth(vector bool short __a, unsigned char __b)
5792 unsigned char b1=__b+1;
5793 return vec_perm(__a, __a, (vector unsigned char)
5794 (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1));
5797 static vector pixel __ATTRS_o_ai
5798 vec_vsplth(vector pixel __a, unsigned char __b)
5801 unsigned char b1=__b+1;
5802 return vec_perm(__a, __a, (vector unsigned char)
5803 (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1));
5808 #define __builtin_altivec_vspltw vec_vspltw
5810 static vector int __ATTRS_o_ai
5811 vec_vspltw(vector int __a, unsigned char __b)
5814 unsigned char b1=__b+1, b2=__b+2, b3=__b+3;
5815 return vec_perm(__a, __a, (vector unsigned char)
5816 (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3));
5819 static vector unsigned int __ATTRS_o_ai
5820 vec_vspltw(vector unsigned int __a, unsigned char __b)
5823 unsigned char b1=__b+1, b2=__b+2, b3=__b+3;
5824 return vec_perm(__a, __a, (vector unsigned char)
5825 (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3));
5828 static vector bool int __ATTRS_o_ai
5829 vec_vspltw(vector bool int __a, unsigned char __b)
5832 unsigned char b1=__b+1, b2=__b+2, b3=__b+3;
5833 return vec_perm(__a, __a, (vector unsigned char)
5834 (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3));
5837 static vector float __ATTRS_o_ai
5838 vec_vspltw(vector float __a, unsigned char __b)
5841 unsigned char b1=__b+1, b2=__b+2, b3=__b+3;
5842 return vec_perm(__a, __a, (vector unsigned char)
5843 (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3));
5848 #define __builtin_altivec_vspltisb vec_splat_s8
5850 // FIXME: parameter should be treated as 5-bit signed literal
5851 static vector signed char __ATTRS_o_ai
5852 vec_splat_s8(signed char __a)
5854 return (vector signed char)(__a);
5859 // FIXME: parameter should be treated as 5-bit signed literal
5860 static vector signed char __ATTRS_o_ai
5861 vec_vspltisb(signed char __a)
5863 return (vector signed char)(__a);
5868 #define __builtin_altivec_vspltish vec_splat_s16
5870 // FIXME: parameter should be treated as 5-bit signed literal
5871 static vector short __ATTRS_o_ai
5872 vec_splat_s16(signed char __a)
5874 return (vector short)(__a);
5879 // FIXME: parameter should be treated as 5-bit signed literal
5880 static vector short __ATTRS_o_ai
5881 vec_vspltish(signed char __a)
5883 return (vector short)(__a);
5888 #define __builtin_altivec_vspltisw vec_splat_s32
5890 // FIXME: parameter should be treated as 5-bit signed literal
5891 static vector int __ATTRS_o_ai
5892 vec_splat_s32(signed char __a)
5894 return (vector int)(__a);
5899 // FIXME: parameter should be treated as 5-bit signed literal
5900 static vector int __ATTRS_o_ai
5901 vec_vspltisw(signed char __a)
5903 return (vector int)(__a);
5908 // FIXME: parameter should be treated as 5-bit signed literal
5909 static vector unsigned char __ATTRS_o_ai
5910 vec_splat_u8(unsigned char __a)
5912 return (vector unsigned char)(__a);
5917 // FIXME: parameter should be treated as 5-bit signed literal
5918 static vector unsigned short __ATTRS_o_ai
5919 vec_splat_u16(signed char __a)
5921 return (vector unsigned short)(__a);
5926 // FIXME: parameter should be treated as 5-bit signed literal
5927 static vector unsigned int __ATTRS_o_ai
5928 vec_splat_u32(signed char __a)
5930 return (vector unsigned int)(__a);
5935 static vector signed char __ATTRS_o_ai
5936 vec_sr(vector signed char __a, vector unsigned char __b)
5938 return __a >> (vector signed char)__b;
5941 static vector unsigned char __ATTRS_o_ai
5942 vec_sr(vector unsigned char __a, vector unsigned char __b)
5947 static vector short __ATTRS_o_ai
5948 vec_sr(vector short __a, vector unsigned short __b)
5950 return __a >> (vector short)__b;
5953 static vector unsigned short __ATTRS_o_ai
5954 vec_sr(vector unsigned short __a, vector unsigned short __b)
5959 static vector int __ATTRS_o_ai
5960 vec_sr(vector int __a, vector unsigned int __b)
5962 return __a >> (vector int)__b;
5965 static vector unsigned int __ATTRS_o_ai
5966 vec_sr(vector unsigned int __a, vector unsigned int __b)
5973 #define __builtin_altivec_vsrb vec_vsrb
5975 static vector signed char __ATTRS_o_ai
5976 vec_vsrb(vector signed char __a, vector unsigned char __b)
5978 return __a >> (vector signed char)__b;
5981 static vector unsigned char __ATTRS_o_ai
5982 vec_vsrb(vector unsigned char __a, vector unsigned char __b)
5989 #define __builtin_altivec_vsrh vec_vsrh
5991 static vector short __ATTRS_o_ai
5992 vec_vsrh(vector short __a, vector unsigned short __b)
5994 return __a >> (vector short)__b;
5997 static vector unsigned short __ATTRS_o_ai
5998 vec_vsrh(vector unsigned short __a, vector unsigned short __b)
6005 #define __builtin_altivec_vsrw vec_vsrw
6007 static vector int __ATTRS_o_ai
6008 vec_vsrw(vector int __a, vector unsigned int __b)
6010 return __a >> (vector int)__b;
6013 static vector unsigned int __ATTRS_o_ai
6014 vec_vsrw(vector unsigned int __a, vector unsigned int __b)
6021 static vector signed char __ATTRS_o_ai
6022 vec_sra(vector signed char __a, vector unsigned char __b)
6024 return (vector signed char)__builtin_altivec_vsrab((vector char)__a, __b);
6027 static vector unsigned char __ATTRS_o_ai
6028 vec_sra(vector unsigned char __a, vector unsigned char __b)
6030 return (vector unsigned char)__builtin_altivec_vsrab((vector char)__a, __b);
6033 static vector short __ATTRS_o_ai
6034 vec_sra(vector short __a, vector unsigned short __b)
6036 return __builtin_altivec_vsrah(__a, (vector unsigned short)__b);
6039 static vector unsigned short __ATTRS_o_ai
6040 vec_sra(vector unsigned short __a, vector unsigned short __b)
6042 return (vector unsigned short)__builtin_altivec_vsrah((vector short)__a, __b);
6045 static vector int __ATTRS_o_ai
6046 vec_sra(vector int __a, vector unsigned int __b)
6048 return __builtin_altivec_vsraw(__a, __b);
6051 static vector unsigned int __ATTRS_o_ai
6052 vec_sra(vector unsigned int __a, vector unsigned int __b)
6054 return (vector unsigned int)__builtin_altivec_vsraw((vector int)__a, __b);
6059 static vector signed char __ATTRS_o_ai
6060 vec_vsrab(vector signed char __a, vector unsigned char __b)
6062 return (vector signed char)__builtin_altivec_vsrab((vector char)__a, __b);
6065 static vector unsigned char __ATTRS_o_ai
6066 vec_vsrab(vector unsigned char __a, vector unsigned char __b)
6068 return (vector unsigned char)__builtin_altivec_vsrab((vector char)__a, __b);
6073 static vector short __ATTRS_o_ai
6074 vec_vsrah(vector short __a, vector unsigned short __b)
6076 return __builtin_altivec_vsrah(__a, (vector unsigned short)__b);
6079 static vector unsigned short __ATTRS_o_ai
6080 vec_vsrah(vector unsigned short __a, vector unsigned short __b)
6082 return (vector unsigned short)__builtin_altivec_vsrah((vector short)__a, __b);
6087 static vector int __ATTRS_o_ai
6088 vec_vsraw(vector int __a, vector unsigned int __b)
6090 return __builtin_altivec_vsraw(__a, __b);
6093 static vector unsigned int __ATTRS_o_ai
6094 vec_vsraw(vector unsigned int __a, vector unsigned int __b)
6096 return (vector unsigned int)__builtin_altivec_vsraw((vector int)__a, __b);
6101 static vector signed char __ATTRS_o_ai
6102 vec_srl(vector signed char __a, vector unsigned char __b)
6104 return (vector signed char)
6105 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6108 static vector signed char __ATTRS_o_ai
6109 vec_srl(vector signed char __a, vector unsigned short __b)
6111 return (vector signed char)
6112 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6115 static vector signed char __ATTRS_o_ai
6116 vec_srl(vector signed char __a, vector unsigned int __b)
6118 return (vector signed char)
6119 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6122 static vector unsigned char __ATTRS_o_ai
6123 vec_srl(vector unsigned char __a, vector unsigned char __b)
6125 return (vector unsigned char)
6126 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6129 static vector unsigned char __ATTRS_o_ai
6130 vec_srl(vector unsigned char __a, vector unsigned short __b)
6132 return (vector unsigned char)
6133 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6136 static vector unsigned char __ATTRS_o_ai
6137 vec_srl(vector unsigned char __a, vector unsigned int __b)
6139 return (vector unsigned char)
6140 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6143 static vector bool char __ATTRS_o_ai
6144 vec_srl(vector bool char __a, vector unsigned char __b)
6146 return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6149 static vector bool char __ATTRS_o_ai
6150 vec_srl(vector bool char __a, vector unsigned short __b)
6152 return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6155 static vector bool char __ATTRS_o_ai
6156 vec_srl(vector bool char __a, vector unsigned int __b)
6158 return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6161 static vector short __ATTRS_o_ai
6162 vec_srl(vector short __a, vector unsigned char __b)
6164 return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6167 static vector short __ATTRS_o_ai
6168 vec_srl(vector short __a, vector unsigned short __b)
6170 return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6173 static vector short __ATTRS_o_ai
6174 vec_srl(vector short __a, vector unsigned int __b)
6176 return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6179 static vector unsigned short __ATTRS_o_ai
6180 vec_srl(vector unsigned short __a, vector unsigned char __b)
6182 return (vector unsigned short)
6183 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6186 static vector unsigned short __ATTRS_o_ai
6187 vec_srl(vector unsigned short __a, vector unsigned short __b)
6189 return (vector unsigned short)
6190 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6193 static vector unsigned short __ATTRS_o_ai
6194 vec_srl(vector unsigned short __a, vector unsigned int __b)
6196 return (vector unsigned short)
6197 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6200 static vector bool short __ATTRS_o_ai
6201 vec_srl(vector bool short __a, vector unsigned char __b)
6203 return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6206 static vector bool short __ATTRS_o_ai
6207 vec_srl(vector bool short __a, vector unsigned short __b)
6209 return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6212 static vector bool short __ATTRS_o_ai
6213 vec_srl(vector bool short __a, vector unsigned int __b)
6215 return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6218 static vector pixel __ATTRS_o_ai
6219 vec_srl(vector pixel __a, vector unsigned char __b)
6221 return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6224 static vector pixel __ATTRS_o_ai
6225 vec_srl(vector pixel __a, vector unsigned short __b)
6227 return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6230 static vector pixel __ATTRS_o_ai
6231 vec_srl(vector pixel __a, vector unsigned int __b)
6233 return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6236 static vector int __ATTRS_o_ai
6237 vec_srl(vector int __a, vector unsigned char __b)
6239 return (vector int)__builtin_altivec_vsr(__a, (vector int)__b);
6242 static vector int __ATTRS_o_ai
6243 vec_srl(vector int __a, vector unsigned short __b)
6245 return (vector int)__builtin_altivec_vsr(__a, (vector int)__b);
6248 static vector int __ATTRS_o_ai
6249 vec_srl(vector int __a, vector unsigned int __b)
6251 return (vector int)__builtin_altivec_vsr(__a, (vector int)__b);
6254 static vector unsigned int __ATTRS_o_ai
6255 vec_srl(vector unsigned int __a, vector unsigned char __b)
6257 return (vector unsigned int)
6258 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6261 static vector unsigned int __ATTRS_o_ai
6262 vec_srl(vector unsigned int __a, vector unsigned short __b)
6264 return (vector unsigned int)
6265 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6268 static vector unsigned int __ATTRS_o_ai
6269 vec_srl(vector unsigned int __a, vector unsigned int __b)
6271 return (vector unsigned int)
6272 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6275 static vector bool int __ATTRS_o_ai
6276 vec_srl(vector bool int __a, vector unsigned char __b)
6278 return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6281 static vector bool int __ATTRS_o_ai
6282 vec_srl(vector bool int __a, vector unsigned short __b)
6284 return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6287 static vector bool int __ATTRS_o_ai
6288 vec_srl(vector bool int __a, vector unsigned int __b)
6290 return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6295 static vector signed char __ATTRS_o_ai
6296 vec_vsr(vector signed char __a, vector unsigned char __b)
6298 return (vector signed char)
6299 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6302 static vector signed char __ATTRS_o_ai
6303 vec_vsr(vector signed char __a, vector unsigned short __b)
6305 return (vector signed char)
6306 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6309 static vector signed char __ATTRS_o_ai
6310 vec_vsr(vector signed char __a, vector unsigned int __b)
6312 return (vector signed char)
6313 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6316 static vector unsigned char __ATTRS_o_ai
6317 vec_vsr(vector unsigned char __a, vector unsigned char __b)
6319 return (vector unsigned char)
6320 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6323 static vector unsigned char __ATTRS_o_ai
6324 vec_vsr(vector unsigned char __a, vector unsigned short __b)
6326 return (vector unsigned char)
6327 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6330 static vector unsigned char __ATTRS_o_ai
6331 vec_vsr(vector unsigned char __a, vector unsigned int __b)
6333 return (vector unsigned char)
6334 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6337 static vector bool char __ATTRS_o_ai
6338 vec_vsr(vector bool char __a, vector unsigned char __b)
6340 return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6343 static vector bool char __ATTRS_o_ai
6344 vec_vsr(vector bool char __a, vector unsigned short __b)
6346 return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6349 static vector bool char __ATTRS_o_ai
6350 vec_vsr(vector bool char __a, vector unsigned int __b)
6352 return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6355 static vector short __ATTRS_o_ai
6356 vec_vsr(vector short __a, vector unsigned char __b)
6358 return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6361 static vector short __ATTRS_o_ai
6362 vec_vsr(vector short __a, vector unsigned short __b)
6364 return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6367 static vector short __ATTRS_o_ai
6368 vec_vsr(vector short __a, vector unsigned int __b)
6370 return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6373 static vector unsigned short __ATTRS_o_ai
6374 vec_vsr(vector unsigned short __a, vector unsigned char __b)
6376 return (vector unsigned short)
6377 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6380 static vector unsigned short __ATTRS_o_ai
6381 vec_vsr(vector unsigned short __a, vector unsigned short __b)
6383 return (vector unsigned short)
6384 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6387 static vector unsigned short __ATTRS_o_ai
6388 vec_vsr(vector unsigned short __a, vector unsigned int __b)
6390 return (vector unsigned short)
6391 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6394 static vector bool short __ATTRS_o_ai
6395 vec_vsr(vector bool short __a, vector unsigned char __b)
6397 return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6400 static vector bool short __ATTRS_o_ai
6401 vec_vsr(vector bool short __a, vector unsigned short __b)
6403 return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6406 static vector bool short __ATTRS_o_ai
6407 vec_vsr(vector bool short __a, vector unsigned int __b)
6409 return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6412 static vector pixel __ATTRS_o_ai
6413 vec_vsr(vector pixel __a, vector unsigned char __b)
6415 return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6418 static vector pixel __ATTRS_o_ai
6419 vec_vsr(vector pixel __a, vector unsigned short __b)
6421 return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6424 static vector pixel __ATTRS_o_ai
6425 vec_vsr(vector pixel __a, vector unsigned int __b)
6427 return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6430 static vector int __ATTRS_o_ai
6431 vec_vsr(vector int __a, vector unsigned char __b)
6433 return (vector int)__builtin_altivec_vsr(__a, (vector int)__b);
6436 static vector int __ATTRS_o_ai
6437 vec_vsr(vector int __a, vector unsigned short __b)
6439 return (vector int)__builtin_altivec_vsr(__a, (vector int)__b);
6442 static vector int __ATTRS_o_ai
6443 vec_vsr(vector int __a, vector unsigned int __b)
6445 return (vector int)__builtin_altivec_vsr(__a, (vector int)__b);
6448 static vector unsigned int __ATTRS_o_ai
6449 vec_vsr(vector unsigned int __a, vector unsigned char __b)
6451 return (vector unsigned int)
6452 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6455 static vector unsigned int __ATTRS_o_ai
6456 vec_vsr(vector unsigned int __a, vector unsigned short __b)
6458 return (vector unsigned int)
6459 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6462 static vector unsigned int __ATTRS_o_ai
6463 vec_vsr(vector unsigned int __a, vector unsigned int __b)
6465 return (vector unsigned int)
6466 __builtin_altivec_vsr((vector int)__a, (vector int)__b);
6469 static vector bool int __ATTRS_o_ai
6470 vec_vsr(vector bool int __a, vector unsigned char __b)
6472 return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6475 static vector bool int __ATTRS_o_ai
6476 vec_vsr(vector bool int __a, vector unsigned short __b)
6478 return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6481 static vector bool int __ATTRS_o_ai
6482 vec_vsr(vector bool int __a, vector unsigned int __b)
6484 return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b);
6489 static vector signed char __ATTRS_o_ai
6490 vec_sro(vector signed char __a, vector signed char __b)
6492 return (vector signed char)
6493 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6496 static vector signed char __ATTRS_o_ai
6497 vec_sro(vector signed char __a, vector unsigned char __b)
6499 return (vector signed char)
6500 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6503 static vector unsigned char __ATTRS_o_ai
6504 vec_sro(vector unsigned char __a, vector signed char __b)
6506 return (vector unsigned char)
6507 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6510 static vector unsigned char __ATTRS_o_ai
6511 vec_sro(vector unsigned char __a, vector unsigned char __b)
6513 return (vector unsigned char)
6514 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6517 static vector short __ATTRS_o_ai
6518 vec_sro(vector short __a, vector signed char __b)
6520 return (vector short)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6523 static vector short __ATTRS_o_ai
6524 vec_sro(vector short __a, vector unsigned char __b)
6526 return (vector short)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6529 static vector unsigned short __ATTRS_o_ai
6530 vec_sro(vector unsigned short __a, vector signed char __b)
6532 return (vector unsigned short)
6533 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6536 static vector unsigned short __ATTRS_o_ai
6537 vec_sro(vector unsigned short __a, vector unsigned char __b)
6539 return (vector unsigned short)
6540 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6543 static vector pixel __ATTRS_o_ai
6544 vec_sro(vector pixel __a, vector signed char __b)
6546 return (vector pixel)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6549 static vector pixel __ATTRS_o_ai
6550 vec_sro(vector pixel __a, vector unsigned char __b)
6552 return (vector pixel)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6555 static vector int __ATTRS_o_ai
6556 vec_sro(vector int __a, vector signed char __b)
6558 return (vector int)__builtin_altivec_vsro(__a, (vector int)__b);
6561 static vector int __ATTRS_o_ai
6562 vec_sro(vector int __a, vector unsigned char __b)
6564 return (vector int)__builtin_altivec_vsro(__a, (vector int)__b);
6567 static vector unsigned int __ATTRS_o_ai
6568 vec_sro(vector unsigned int __a, vector signed char __b)
6570 return (vector unsigned int)
6571 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6574 static vector unsigned int __ATTRS_o_ai
6575 vec_sro(vector unsigned int __a, vector unsigned char __b)
6577 return (vector unsigned int)
6578 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6581 static vector float __ATTRS_o_ai
6582 vec_sro(vector float __a, vector signed char __b)
6584 return (vector float)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6587 static vector float __ATTRS_o_ai
6588 vec_sro(vector float __a, vector unsigned char __b)
6590 return (vector float)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6595 static vector signed char __ATTRS_o_ai
6596 vec_vsro(vector signed char __a, vector signed char __b)
6598 return (vector signed char)
6599 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6602 static vector signed char __ATTRS_o_ai
6603 vec_vsro(vector signed char __a, vector unsigned char __b)
6605 return (vector signed char)
6606 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6609 static vector unsigned char __ATTRS_o_ai
6610 vec_vsro(vector unsigned char __a, vector signed char __b)
6612 return (vector unsigned char)
6613 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6616 static vector unsigned char __ATTRS_o_ai
6617 vec_vsro(vector unsigned char __a, vector unsigned char __b)
6619 return (vector unsigned char)
6620 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6623 static vector short __ATTRS_o_ai
6624 vec_vsro(vector short __a, vector signed char __b)
6626 return (vector short)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6629 static vector short __ATTRS_o_ai
6630 vec_vsro(vector short __a, vector unsigned char __b)
6632 return (vector short)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6635 static vector unsigned short __ATTRS_o_ai
6636 vec_vsro(vector unsigned short __a, vector signed char __b)
6638 return (vector unsigned short)
6639 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6642 static vector unsigned short __ATTRS_o_ai
6643 vec_vsro(vector unsigned short __a, vector unsigned char __b)
6645 return (vector unsigned short)
6646 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6649 static vector pixel __ATTRS_o_ai
6650 vec_vsro(vector pixel __a, vector signed char __b)
6652 return (vector pixel)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6655 static vector pixel __ATTRS_o_ai
6656 vec_vsro(vector pixel __a, vector unsigned char __b)
6658 return (vector pixel)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6661 static vector int __ATTRS_o_ai
6662 vec_vsro(vector int __a, vector signed char __b)
6664 return (vector int)__builtin_altivec_vsro(__a, (vector int)__b);
6667 static vector int __ATTRS_o_ai
6668 vec_vsro(vector int __a, vector unsigned char __b)
6670 return (vector int)__builtin_altivec_vsro(__a, (vector int)__b);
6673 static vector unsigned int __ATTRS_o_ai
6674 vec_vsro(vector unsigned int __a, vector signed char __b)
6676 return (vector unsigned int)
6677 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6680 static vector unsigned int __ATTRS_o_ai
6681 vec_vsro(vector unsigned int __a, vector unsigned char __b)
6683 return (vector unsigned int)
6684 __builtin_altivec_vsro((vector int)__a, (vector int)__b);
6687 static vector float __ATTRS_o_ai
6688 vec_vsro(vector float __a, vector signed char __b)
6690 return (vector float)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6693 static vector float __ATTRS_o_ai
6694 vec_vsro(vector float __a, vector unsigned char __b)
6696 return (vector float)__builtin_altivec_vsro((vector int)__a, (vector int)__b);
6701 static void __ATTRS_o_ai
6702 vec_st(vector signed char __a, int __b, vector signed char *__c)
6704 __builtin_altivec_stvx((vector int)__a, __b, __c);
6707 static void __ATTRS_o_ai
6708 vec_st(vector signed char __a, int __b, signed char *__c)
6710 __builtin_altivec_stvx((vector int)__a, __b, __c);
6713 static void __ATTRS_o_ai
6714 vec_st(vector unsigned char __a, int __b, vector unsigned char *__c)
6716 __builtin_altivec_stvx((vector int)__a, __b, __c);
6719 static void __ATTRS_o_ai
6720 vec_st(vector unsigned char __a, int __b, unsigned char *__c)
6722 __builtin_altivec_stvx((vector int)__a, __b, __c);
6725 static void __ATTRS_o_ai
6726 vec_st(vector bool char __a, int __b, signed char *__c)
6728 __builtin_altivec_stvx((vector int)__a, __b, __c);
6731 static void __ATTRS_o_ai
6732 vec_st(vector bool char __a, int __b, unsigned char *__c)
6734 __builtin_altivec_stvx((vector int)__a, __b, __c);
6737 static void __ATTRS_o_ai
6738 vec_st(vector bool char __a, int __b, vector bool char *__c)
6740 __builtin_altivec_stvx((vector int)__a, __b, __c);
6743 static void __ATTRS_o_ai
6744 vec_st(vector short __a, int __b, vector short *__c)
6746 __builtin_altivec_stvx((vector int)__a, __b, __c);
6749 static void __ATTRS_o_ai
6750 vec_st(vector short __a, int __b, short *__c)
6752 __builtin_altivec_stvx((vector int)__a, __b, __c);
6755 static void __ATTRS_o_ai
6756 vec_st(vector unsigned short __a, int __b, vector unsigned short *__c)
6758 __builtin_altivec_stvx((vector int)__a, __b, __c);
6761 static void __ATTRS_o_ai
6762 vec_st(vector unsigned short __a, int __b, unsigned short *__c)
6764 __builtin_altivec_stvx((vector int)__a, __b, __c);
6767 static void __ATTRS_o_ai
6768 vec_st(vector bool short __a, int __b, short *__c)
6770 __builtin_altivec_stvx((vector int)__a, __b, __c);
6773 static void __ATTRS_o_ai
6774 vec_st(vector bool short __a, int __b, unsigned short *__c)
6776 __builtin_altivec_stvx((vector int)__a, __b, __c);
6779 static void __ATTRS_o_ai
6780 vec_st(vector bool short __a, int __b, vector bool short *__c)
6782 __builtin_altivec_stvx((vector int)__a, __b, __c);
6785 static void __ATTRS_o_ai
6786 vec_st(vector pixel __a, int __b, short *__c)
6788 __builtin_altivec_stvx((vector int)__a, __b, __c);
6791 static void __ATTRS_o_ai
6792 vec_st(vector pixel __a, int __b, unsigned short *__c)
6794 __builtin_altivec_stvx((vector int)__a, __b, __c);
6797 static void __ATTRS_o_ai
6798 vec_st(vector pixel __a, int __b, vector pixel *__c)
6800 __builtin_altivec_stvx((vector int)__a, __b, __c);
6803 static void __ATTRS_o_ai
6804 vec_st(vector int __a, int __b, vector int *__c)
6806 __builtin_altivec_stvx(__a, __b, __c);
6809 static void __ATTRS_o_ai
6810 vec_st(vector int __a, int __b, int *__c)
6812 __builtin_altivec_stvx(__a, __b, __c);
6815 static void __ATTRS_o_ai
6816 vec_st(vector unsigned int __a, int __b, vector unsigned int *__c)
6818 __builtin_altivec_stvx((vector int)__a, __b, __c);
6821 static void __ATTRS_o_ai
6822 vec_st(vector unsigned int __a, int __b, unsigned int *__c)
6824 __builtin_altivec_stvx((vector int)__a, __b, __c);
6827 static void __ATTRS_o_ai
6828 vec_st(vector bool int __a, int __b, int *__c)
6830 __builtin_altivec_stvx((vector int)__a, __b, __c);
6833 static void __ATTRS_o_ai
6834 vec_st(vector bool int __a, int __b, unsigned int *__c)
6836 __builtin_altivec_stvx((vector int)__a, __b, __c);
6839 static void __ATTRS_o_ai
6840 vec_st(vector bool int __a, int __b, vector bool int *__c)
6842 __builtin_altivec_stvx((vector int)__a, __b, __c);
6845 static void __ATTRS_o_ai
6846 vec_st(vector float __a, int __b, vector float *__c)
6848 __builtin_altivec_stvx((vector int)__a, __b, __c);
6851 static void __ATTRS_o_ai
6852 vec_st(vector float __a, int __b, float *__c)
6854 __builtin_altivec_stvx((vector int)__a, __b, __c);
6859 static void __ATTRS_o_ai
6860 vec_stvx(vector signed char __a, int __b, vector signed char *__c)
6862 __builtin_altivec_stvx((vector int)__a, __b, __c);
6865 static void __ATTRS_o_ai
6866 vec_stvx(vector signed char __a, int __b, signed char *__c)
6868 __builtin_altivec_stvx((vector int)__a, __b, __c);
6871 static void __ATTRS_o_ai
6872 vec_stvx(vector unsigned char __a, int __b, vector unsigned char *__c)
6874 __builtin_altivec_stvx((vector int)__a, __b, __c);
6877 static void __ATTRS_o_ai
6878 vec_stvx(vector unsigned char __a, int __b, unsigned char *__c)
6880 __builtin_altivec_stvx((vector int)__a, __b, __c);
6883 static void __ATTRS_o_ai
6884 vec_stvx(vector bool char __a, int __b, signed char *__c)
6886 __builtin_altivec_stvx((vector int)__a, __b, __c);
6889 static void __ATTRS_o_ai
6890 vec_stvx(vector bool char __a, int __b, unsigned char *__c)
6892 __builtin_altivec_stvx((vector int)__a, __b, __c);
6895 static void __ATTRS_o_ai
6896 vec_stvx(vector bool char __a, int __b, vector bool char *__c)
6898 __builtin_altivec_stvx((vector int)__a, __b, __c);
6901 static void __ATTRS_o_ai
6902 vec_stvx(vector short __a, int __b, vector short *__c)
6904 __builtin_altivec_stvx((vector int)__a, __b, __c);
6907 static void __ATTRS_o_ai
6908 vec_stvx(vector short __a, int __b, short *__c)
6910 __builtin_altivec_stvx((vector int)__a, __b, __c);
6913 static void __ATTRS_o_ai
6914 vec_stvx(vector unsigned short __a, int __b, vector unsigned short *__c)
6916 __builtin_altivec_stvx((vector int)__a, __b, __c);
6919 static void __ATTRS_o_ai
6920 vec_stvx(vector unsigned short __a, int __b, unsigned short *__c)
6922 __builtin_altivec_stvx((vector int)__a, __b, __c);
6925 static void __ATTRS_o_ai
6926 vec_stvx(vector bool short __a, int __b, short *__c)
6928 __builtin_altivec_stvx((vector int)__a, __b, __c);
6931 static void __ATTRS_o_ai
6932 vec_stvx(vector bool short __a, int __b, unsigned short *__c)
6934 __builtin_altivec_stvx((vector int)__a, __b, __c);
6937 static void __ATTRS_o_ai
6938 vec_stvx(vector bool short __a, int __b, vector bool short *__c)
6940 __builtin_altivec_stvx((vector int)__a, __b, __c);
6943 static void __ATTRS_o_ai
6944 vec_stvx(vector pixel __a, int __b, short *__c)
6946 __builtin_altivec_stvx((vector int)__a, __b, __c);
6949 static void __ATTRS_o_ai
6950 vec_stvx(vector pixel __a, int __b, unsigned short *__c)
6952 __builtin_altivec_stvx((vector int)__a, __b, __c);
6955 static void __ATTRS_o_ai
6956 vec_stvx(vector pixel __a, int __b, vector pixel *__c)
6958 __builtin_altivec_stvx((vector int)__a, __b, __c);
6961 static void __ATTRS_o_ai
6962 vec_stvx(vector int __a, int __b, vector int *__c)
6964 __builtin_altivec_stvx(__a, __b, __c);
6967 static void __ATTRS_o_ai
6968 vec_stvx(vector int __a, int __b, int *__c)
6970 __builtin_altivec_stvx(__a, __b, __c);
6973 static void __ATTRS_o_ai
6974 vec_stvx(vector unsigned int __a, int __b, vector unsigned int *__c)
6976 __builtin_altivec_stvx((vector int)__a, __b, __c);
6979 static void __ATTRS_o_ai
6980 vec_stvx(vector unsigned int __a, int __b, unsigned int *__c)
6982 __builtin_altivec_stvx((vector int)__a, __b, __c);
6985 static void __ATTRS_o_ai
6986 vec_stvx(vector bool int __a, int __b, int *__c)
6988 __builtin_altivec_stvx((vector int)__a, __b, __c);
6991 static void __ATTRS_o_ai
6992 vec_stvx(vector bool int __a, int __b, unsigned int *__c)
6994 __builtin_altivec_stvx((vector int)__a, __b, __c);
6997 static void __ATTRS_o_ai
6998 vec_stvx(vector bool int __a, int __b, vector bool int *__c)
7000 __builtin_altivec_stvx((vector int)__a, __b, __c);
7003 static void __ATTRS_o_ai
7004 vec_stvx(vector float __a, int __b, vector float *__c)
7006 __builtin_altivec_stvx((vector int)__a, __b, __c);
7009 static void __ATTRS_o_ai
7010 vec_stvx(vector float __a, int __b, float *__c)
7012 __builtin_altivec_stvx((vector int)__a, __b, __c);
7017 static void __ATTRS_o_ai
7018 vec_ste(vector signed char __a, int __b, signed char *__c)
7020 __builtin_altivec_stvebx((vector char)__a, __b, __c);
7023 static void __ATTRS_o_ai
7024 vec_ste(vector unsigned char __a, int __b, unsigned char *__c)
7026 __builtin_altivec_stvebx((vector char)__a, __b, __c);
7029 static void __ATTRS_o_ai
7030 vec_ste(vector bool char __a, int __b, signed char *__c)
7032 __builtin_altivec_stvebx((vector char)__a, __b, __c);
7035 static void __ATTRS_o_ai
7036 vec_ste(vector bool char __a, int __b, unsigned char *__c)
7038 __builtin_altivec_stvebx((vector char)__a, __b, __c);
7041 static void __ATTRS_o_ai
7042 vec_ste(vector short __a, int __b, short *__c)
7044 __builtin_altivec_stvehx(__a, __b, __c);
7047 static void __ATTRS_o_ai
7048 vec_ste(vector unsigned short __a, int __b, unsigned short *__c)
7050 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7053 static void __ATTRS_o_ai
7054 vec_ste(vector bool short __a, int __b, short *__c)
7056 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7059 static void __ATTRS_o_ai
7060 vec_ste(vector bool short __a, int __b, unsigned short *__c)
7062 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7065 static void __ATTRS_o_ai
7066 vec_ste(vector pixel __a, int __b, short *__c)
7068 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7071 static void __ATTRS_o_ai
7072 vec_ste(vector pixel __a, int __b, unsigned short *__c)
7074 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7077 static void __ATTRS_o_ai
7078 vec_ste(vector int __a, int __b, int *__c)
7080 __builtin_altivec_stvewx(__a, __b, __c);
7083 static void __ATTRS_o_ai
7084 vec_ste(vector unsigned int __a, int __b, unsigned int *__c)
7086 __builtin_altivec_stvewx((vector int)__a, __b, __c);
7089 static void __ATTRS_o_ai
7090 vec_ste(vector bool int __a, int __b, int *__c)
7092 __builtin_altivec_stvewx((vector int)__a, __b, __c);
7095 static void __ATTRS_o_ai
7096 vec_ste(vector bool int __a, int __b, unsigned int *__c)
7098 __builtin_altivec_stvewx((vector int)__a, __b, __c);
7101 static void __ATTRS_o_ai
7102 vec_ste(vector float __a, int __b, float *__c)
7104 __builtin_altivec_stvewx((vector int)__a, __b, __c);
7109 static void __ATTRS_o_ai
7110 vec_stvebx(vector signed char __a, int __b, signed char *__c)
7112 __builtin_altivec_stvebx((vector char)__a, __b, __c);
7115 static void __ATTRS_o_ai
7116 vec_stvebx(vector unsigned char __a, int __b, unsigned char *__c)
7118 __builtin_altivec_stvebx((vector char)__a, __b, __c);
7121 static void __ATTRS_o_ai
7122 vec_stvebx(vector bool char __a, int __b, signed char *__c)
7124 __builtin_altivec_stvebx((vector char)__a, __b, __c);
7127 static void __ATTRS_o_ai
7128 vec_stvebx(vector bool char __a, int __b, unsigned char *__c)
7130 __builtin_altivec_stvebx((vector char)__a, __b, __c);
7135 static void __ATTRS_o_ai
7136 vec_stvehx(vector short __a, int __b, short *__c)
7138 __builtin_altivec_stvehx(__a, __b, __c);
7141 static void __ATTRS_o_ai
7142 vec_stvehx(vector unsigned short __a, int __b, unsigned short *__c)
7144 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7147 static void __ATTRS_o_ai
7148 vec_stvehx(vector bool short __a, int __b, short *__c)
7150 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7153 static void __ATTRS_o_ai
7154 vec_stvehx(vector bool short __a, int __b, unsigned short *__c)
7156 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7159 static void __ATTRS_o_ai
7160 vec_stvehx(vector pixel __a, int __b, short *__c)
7162 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7165 static void __ATTRS_o_ai
7166 vec_stvehx(vector pixel __a, int __b, unsigned short *__c)
7168 __builtin_altivec_stvehx((vector short)__a, __b, __c);
7173 static void __ATTRS_o_ai
7174 vec_stvewx(vector int __a, int __b, int *__c)
7176 __builtin_altivec_stvewx(__a, __b, __c);
7179 static void __ATTRS_o_ai
7180 vec_stvewx(vector unsigned int __a, int __b, unsigned int *__c)
7182 __builtin_altivec_stvewx((vector int)__a, __b, __c);
7185 static void __ATTRS_o_ai
7186 vec_stvewx(vector bool int __a, int __b, int *__c)
7188 __builtin_altivec_stvewx((vector int)__a, __b, __c);
7191 static void __ATTRS_o_ai
7192 vec_stvewx(vector bool int __a, int __b, unsigned int *__c)
7194 __builtin_altivec_stvewx((vector int)__a, __b, __c);
7197 static void __ATTRS_o_ai
7198 vec_stvewx(vector float __a, int __b, float *__c)
7200 __builtin_altivec_stvewx((vector int)__a, __b, __c);
7205 static void __ATTRS_o_ai
7206 vec_stl(vector signed char __a, int __b, vector signed char *__c)
7208 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7211 static void __ATTRS_o_ai
7212 vec_stl(vector signed char __a, int __b, signed char *__c)
7214 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7217 static void __ATTRS_o_ai
7218 vec_stl(vector unsigned char __a, int __b, vector unsigned char *__c)
7220 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7223 static void __ATTRS_o_ai
7224 vec_stl(vector unsigned char __a, int __b, unsigned char *__c)
7226 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7229 static void __ATTRS_o_ai
7230 vec_stl(vector bool char __a, int __b, signed char *__c)
7232 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7235 static void __ATTRS_o_ai
7236 vec_stl(vector bool char __a, int __b, unsigned char *__c)
7238 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7241 static void __ATTRS_o_ai
7242 vec_stl(vector bool char __a, int __b, vector bool char *__c)
7244 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7247 static void __ATTRS_o_ai
7248 vec_stl(vector short __a, int __b, vector short *__c)
7250 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7253 static void __ATTRS_o_ai
7254 vec_stl(vector short __a, int __b, short *__c)
7256 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7259 static void __ATTRS_o_ai
7260 vec_stl(vector unsigned short __a, int __b, vector unsigned short *__c)
7262 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7265 static void __ATTRS_o_ai
7266 vec_stl(vector unsigned short __a, int __b, unsigned short *__c)
7268 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7271 static void __ATTRS_o_ai
7272 vec_stl(vector bool short __a, int __b, short *__c)
7274 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7277 static void __ATTRS_o_ai
7278 vec_stl(vector bool short __a, int __b, unsigned short *__c)
7280 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7283 static void __ATTRS_o_ai
7284 vec_stl(vector bool short __a, int __b, vector bool short *__c)
7286 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7289 static void __ATTRS_o_ai
7290 vec_stl(vector pixel __a, int __b, short *__c)
7292 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7295 static void __ATTRS_o_ai
7296 vec_stl(vector pixel __a, int __b, unsigned short *__c)
7298 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7301 static void __ATTRS_o_ai
7302 vec_stl(vector pixel __a, int __b, vector pixel *__c)
7304 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7307 static void __ATTRS_o_ai
7308 vec_stl(vector int __a, int __b, vector int *__c)
7310 __builtin_altivec_stvxl(__a, __b, __c);
7313 static void __ATTRS_o_ai
7314 vec_stl(vector int __a, int __b, int *__c)
7316 __builtin_altivec_stvxl(__a, __b, __c);
7319 static void __ATTRS_o_ai
7320 vec_stl(vector unsigned int __a, int __b, vector unsigned int *__c)
7322 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7325 static void __ATTRS_o_ai
7326 vec_stl(vector unsigned int __a, int __b, unsigned int *__c)
7328 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7331 static void __ATTRS_o_ai
7332 vec_stl(vector bool int __a, int __b, int *__c)
7334 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7337 static void __ATTRS_o_ai
7338 vec_stl(vector bool int __a, int __b, unsigned int *__c)
7340 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7343 static void __ATTRS_o_ai
7344 vec_stl(vector bool int __a, int __b, vector bool int *__c)
7346 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7349 static void __ATTRS_o_ai
7350 vec_stl(vector float __a, int __b, vector float *__c)
7352 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7355 static void __ATTRS_o_ai
7356 vec_stl(vector float __a, int __b, float *__c)
7358 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7363 static void __ATTRS_o_ai
7364 vec_stvxl(vector signed char __a, int __b, vector signed char *__c)
7366 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7369 static void __ATTRS_o_ai
7370 vec_stvxl(vector signed char __a, int __b, signed char *__c)
7372 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7375 static void __ATTRS_o_ai
7376 vec_stvxl(vector unsigned char __a, int __b, vector unsigned char *__c)
7378 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7381 static void __ATTRS_o_ai
7382 vec_stvxl(vector unsigned char __a, int __b, unsigned char *__c)
7384 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7387 static void __ATTRS_o_ai
7388 vec_stvxl(vector bool char __a, int __b, signed char *__c)
7390 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7393 static void __ATTRS_o_ai
7394 vec_stvxl(vector bool char __a, int __b, unsigned char *__c)
7396 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7399 static void __ATTRS_o_ai
7400 vec_stvxl(vector bool char __a, int __b, vector bool char *__c)
7402 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7405 static void __ATTRS_o_ai
7406 vec_stvxl(vector short __a, int __b, vector short *__c)
7408 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7411 static void __ATTRS_o_ai
7412 vec_stvxl(vector short __a, int __b, short *__c)
7414 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7417 static void __ATTRS_o_ai
7418 vec_stvxl(vector unsigned short __a, int __b, vector unsigned short *__c)
7420 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7423 static void __ATTRS_o_ai
7424 vec_stvxl(vector unsigned short __a, int __b, unsigned short *__c)
7426 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7429 static void __ATTRS_o_ai
7430 vec_stvxl(vector bool short __a, int __b, short *__c)
7432 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7435 static void __ATTRS_o_ai
7436 vec_stvxl(vector bool short __a, int __b, unsigned short *__c)
7438 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7441 static void __ATTRS_o_ai
7442 vec_stvxl(vector bool short __a, int __b, vector bool short *__c)
7444 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7447 static void __ATTRS_o_ai
7448 vec_stvxl(vector pixel __a, int __b, short *__c)
7450 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7453 static void __ATTRS_o_ai
7454 vec_stvxl(vector pixel __a, int __b, unsigned short *__c)
7456 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7459 static void __ATTRS_o_ai
7460 vec_stvxl(vector pixel __a, int __b, vector pixel *__c)
7462 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7465 static void __ATTRS_o_ai
7466 vec_stvxl(vector int __a, int __b, vector int *__c)
7468 __builtin_altivec_stvxl(__a, __b, __c);
7471 static void __ATTRS_o_ai
7472 vec_stvxl(vector int __a, int __b, int *__c)
7474 __builtin_altivec_stvxl(__a, __b, __c);
7477 static void __ATTRS_o_ai
7478 vec_stvxl(vector unsigned int __a, int __b, vector unsigned int *__c)
7480 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7483 static void __ATTRS_o_ai
7484 vec_stvxl(vector unsigned int __a, int __b, unsigned int *__c)
7486 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7489 static void __ATTRS_o_ai
7490 vec_stvxl(vector bool int __a, int __b, int *__c)
7492 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7495 static void __ATTRS_o_ai
7496 vec_stvxl(vector bool int __a, int __b, unsigned int *__c)
7498 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7501 static void __ATTRS_o_ai
7502 vec_stvxl(vector bool int __a, int __b, vector bool int *__c)
7504 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7507 static void __ATTRS_o_ai
7508 vec_stvxl(vector float __a, int __b, vector float *__c)
7510 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7513 static void __ATTRS_o_ai
7514 vec_stvxl(vector float __a, int __b, float *__c)
7516 __builtin_altivec_stvxl((vector int)__a, __b, __c);
7521 static vector signed char __ATTRS_o_ai
7522 vec_sub(vector signed char __a, vector signed char __b)
7527 static vector signed char __ATTRS_o_ai
7528 vec_sub(vector bool char __a, vector signed char __b)
7530 return (vector signed char)__a - __b;
7533 static vector signed char __ATTRS_o_ai
7534 vec_sub(vector signed char __a, vector bool char __b)
7536 return __a - (vector signed char)__b;
7539 static vector unsigned char __ATTRS_o_ai
7540 vec_sub(vector unsigned char __a, vector unsigned char __b)
7545 static vector unsigned char __ATTRS_o_ai
7546 vec_sub(vector bool char __a, vector unsigned char __b)
7548 return (vector unsigned char)__a - __b;
7551 static vector unsigned char __ATTRS_o_ai
7552 vec_sub(vector unsigned char __a, vector bool char __b)
7554 return __a - (vector unsigned char)__b;
7557 static vector short __ATTRS_o_ai
7558 vec_sub(vector short __a, vector short __b)
7563 static vector short __ATTRS_o_ai
7564 vec_sub(vector bool short __a, vector short __b)
7566 return (vector short)__a - __b;
7569 static vector short __ATTRS_o_ai
7570 vec_sub(vector short __a, vector bool short __b)
7572 return __a - (vector short)__b;
7575 static vector unsigned short __ATTRS_o_ai
7576 vec_sub(vector unsigned short __a, vector unsigned short __b)
7581 static vector unsigned short __ATTRS_o_ai
7582 vec_sub(vector bool short __a, vector unsigned short __b)
7584 return (vector unsigned short)__a - __b;
7587 static vector unsigned short __ATTRS_o_ai
7588 vec_sub(vector unsigned short __a, vector bool short __b)
7590 return __a - (vector unsigned short)__b;
7593 static vector int __ATTRS_o_ai
7594 vec_sub(vector int __a, vector int __b)
7599 static vector int __ATTRS_o_ai
7600 vec_sub(vector bool int __a, vector int __b)
7602 return (vector int)__a - __b;
7605 static vector int __ATTRS_o_ai
7606 vec_sub(vector int __a, vector bool int __b)
7608 return __a - (vector int)__b;
7611 static vector unsigned int __ATTRS_o_ai
7612 vec_sub(vector unsigned int __a, vector unsigned int __b)
7617 static vector unsigned int __ATTRS_o_ai
7618 vec_sub(vector bool int __a, vector unsigned int __b)
7620 return (vector unsigned int)__a - __b;
7623 static vector unsigned int __ATTRS_o_ai
7624 vec_sub(vector unsigned int __a, vector bool int __b)
7626 return __a - (vector unsigned int)__b;
7629 static vector float __ATTRS_o_ai
7630 vec_sub(vector float __a, vector float __b)
7637 #define __builtin_altivec_vsububm vec_vsububm
7639 static vector signed char __ATTRS_o_ai
7640 vec_vsububm(vector signed char __a, vector signed char __b)
7645 static vector signed char __ATTRS_o_ai
7646 vec_vsububm(vector bool char __a, vector signed char __b)
7648 return (vector signed char)__a - __b;
7651 static vector signed char __ATTRS_o_ai
7652 vec_vsububm(vector signed char __a, vector bool char __b)
7654 return __a - (vector signed char)__b;
7657 static vector unsigned char __ATTRS_o_ai
7658 vec_vsububm(vector unsigned char __a, vector unsigned char __b)
7663 static vector unsigned char __ATTRS_o_ai
7664 vec_vsububm(vector bool char __a, vector unsigned char __b)
7666 return (vector unsigned char)__a - __b;
7669 static vector unsigned char __ATTRS_o_ai
7670 vec_vsububm(vector unsigned char __a, vector bool char __b)
7672 return __a - (vector unsigned char)__b;
7677 #define __builtin_altivec_vsubuhm vec_vsubuhm
7679 static vector short __ATTRS_o_ai
7680 vec_vsubuhm(vector short __a, vector short __b)
7685 static vector short __ATTRS_o_ai
7686 vec_vsubuhm(vector bool short __a, vector short __b)
7688 return (vector short)__a - __b;
7691 static vector short __ATTRS_o_ai
7692 vec_vsubuhm(vector short __a, vector bool short __b)
7694 return __a - (vector short)__b;
7697 static vector unsigned short __ATTRS_o_ai
7698 vec_vsubuhm(vector unsigned short __a, vector unsigned short __b)
7703 static vector unsigned short __ATTRS_o_ai
7704 vec_vsubuhm(vector bool short __a, vector unsigned short __b)
7706 return (vector unsigned short)__a - __b;
7709 static vector unsigned short __ATTRS_o_ai
7710 vec_vsubuhm(vector unsigned short __a, vector bool short __b)
7712 return __a - (vector unsigned short)__b;
7717 #define __builtin_altivec_vsubuwm vec_vsubuwm
7719 static vector int __ATTRS_o_ai
7720 vec_vsubuwm(vector int __a, vector int __b)
7725 static vector int __ATTRS_o_ai
7726 vec_vsubuwm(vector bool int __a, vector int __b)
7728 return (vector int)__a - __b;
7731 static vector int __ATTRS_o_ai
7732 vec_vsubuwm(vector int __a, vector bool int __b)
7734 return __a - (vector int)__b;
7737 static vector unsigned int __ATTRS_o_ai
7738 vec_vsubuwm(vector unsigned int __a, vector unsigned int __b)
7743 static vector unsigned int __ATTRS_o_ai
7744 vec_vsubuwm(vector bool int __a, vector unsigned int __b)
7746 return (vector unsigned int)__a - __b;
7749 static vector unsigned int __ATTRS_o_ai
7750 vec_vsubuwm(vector unsigned int __a, vector bool int __b)
7752 return __a - (vector unsigned int)__b;
7757 #define __builtin_altivec_vsubfp vec_vsubfp
7759 static vector float __attribute__((__always_inline__))
7760 vec_vsubfp(vector float __a, vector float __b)
7767 static vector unsigned int __attribute__((__always_inline__))
7768 vec_subc(vector unsigned int __a, vector unsigned int __b)
7770 return __builtin_altivec_vsubcuw(__a, __b);
7775 static vector unsigned int __attribute__((__always_inline__))
7776 vec_vsubcuw(vector unsigned int __a, vector unsigned int __b)
7778 return __builtin_altivec_vsubcuw(__a, __b);
7783 static vector signed char __ATTRS_o_ai
7784 vec_subs(vector signed char __a, vector signed char __b)
7786 return __builtin_altivec_vsubsbs(__a, __b);
7789 static vector signed char __ATTRS_o_ai
7790 vec_subs(vector bool char __a, vector signed char __b)
7792 return __builtin_altivec_vsubsbs((vector signed char)__a, __b);
7795 static vector signed char __ATTRS_o_ai
7796 vec_subs(vector signed char __a, vector bool char __b)
7798 return __builtin_altivec_vsubsbs(__a, (vector signed char)__b);
7801 static vector unsigned char __ATTRS_o_ai
7802 vec_subs(vector unsigned char __a, vector unsigned char __b)
7804 return __builtin_altivec_vsububs(__a, __b);
7807 static vector unsigned char __ATTRS_o_ai
7808 vec_subs(vector bool char __a, vector unsigned char __b)
7810 return __builtin_altivec_vsububs((vector unsigned char)__a, __b);
7813 static vector unsigned char __ATTRS_o_ai
7814 vec_subs(vector unsigned char __a, vector bool char __b)
7816 return __builtin_altivec_vsububs(__a, (vector unsigned char)__b);
7819 static vector short __ATTRS_o_ai
7820 vec_subs(vector short __a, vector short __b)
7822 return __builtin_altivec_vsubshs(__a, __b);
7825 static vector short __ATTRS_o_ai
7826 vec_subs(vector bool short __a, vector short __b)
7828 return __builtin_altivec_vsubshs((vector short)__a, __b);
7831 static vector short __ATTRS_o_ai
7832 vec_subs(vector short __a, vector bool short __b)
7834 return __builtin_altivec_vsubshs(__a, (vector short)__b);
7837 static vector unsigned short __ATTRS_o_ai
7838 vec_subs(vector unsigned short __a, vector unsigned short __b)
7840 return __builtin_altivec_vsubuhs(__a, __b);
7843 static vector unsigned short __ATTRS_o_ai
7844 vec_subs(vector bool short __a, vector unsigned short __b)
7846 return __builtin_altivec_vsubuhs((vector unsigned short)__a, __b);
7849 static vector unsigned short __ATTRS_o_ai
7850 vec_subs(vector unsigned short __a, vector bool short __b)
7852 return __builtin_altivec_vsubuhs(__a, (vector unsigned short)__b);
7855 static vector int __ATTRS_o_ai
7856 vec_subs(vector int __a, vector int __b)
7858 return __builtin_altivec_vsubsws(__a, __b);
7861 static vector int __ATTRS_o_ai
7862 vec_subs(vector bool int __a, vector int __b)
7864 return __builtin_altivec_vsubsws((vector int)__a, __b);
7867 static vector int __ATTRS_o_ai
7868 vec_subs(vector int __a, vector bool int __b)
7870 return __builtin_altivec_vsubsws(__a, (vector int)__b);
7873 static vector unsigned int __ATTRS_o_ai
7874 vec_subs(vector unsigned int __a, vector unsigned int __b)
7876 return __builtin_altivec_vsubuws(__a, __b);
7879 static vector unsigned int __ATTRS_o_ai
7880 vec_subs(vector bool int __a, vector unsigned int __b)
7882 return __builtin_altivec_vsubuws((vector unsigned int)__a, __b);
7885 static vector unsigned int __ATTRS_o_ai
7886 vec_subs(vector unsigned int __a, vector bool int __b)
7888 return __builtin_altivec_vsubuws(__a, (vector unsigned int)__b);
7893 static vector signed char __ATTRS_o_ai
7894 vec_vsubsbs(vector signed char __a, vector signed char __b)
7896 return __builtin_altivec_vsubsbs(__a, __b);
7899 static vector signed char __ATTRS_o_ai
7900 vec_vsubsbs(vector bool char __a, vector signed char __b)
7902 return __builtin_altivec_vsubsbs((vector signed char)__a, __b);
7905 static vector signed char __ATTRS_o_ai
7906 vec_vsubsbs(vector signed char __a, vector bool char __b)
7908 return __builtin_altivec_vsubsbs(__a, (vector signed char)__b);
7913 static vector unsigned char __ATTRS_o_ai
7914 vec_vsububs(vector unsigned char __a, vector unsigned char __b)
7916 return __builtin_altivec_vsububs(__a, __b);
7919 static vector unsigned char __ATTRS_o_ai
7920 vec_vsububs(vector bool char __a, vector unsigned char __b)
7922 return __builtin_altivec_vsububs((vector unsigned char)__a, __b);
7925 static vector unsigned char __ATTRS_o_ai
7926 vec_vsububs(vector unsigned char __a, vector bool char __b)
7928 return __builtin_altivec_vsububs(__a, (vector unsigned char)__b);
7933 static vector short __ATTRS_o_ai
7934 vec_vsubshs(vector short __a, vector short __b)
7936 return __builtin_altivec_vsubshs(__a, __b);
7939 static vector short __ATTRS_o_ai
7940 vec_vsubshs(vector bool short __a, vector short __b)
7942 return __builtin_altivec_vsubshs((vector short)__a, __b);
7945 static vector short __ATTRS_o_ai
7946 vec_vsubshs(vector short __a, vector bool short __b)
7948 return __builtin_altivec_vsubshs(__a, (vector short)__b);
7953 static vector unsigned short __ATTRS_o_ai
7954 vec_vsubuhs(vector unsigned short __a, vector unsigned short __b)
7956 return __builtin_altivec_vsubuhs(__a, __b);
7959 static vector unsigned short __ATTRS_o_ai
7960 vec_vsubuhs(vector bool short __a, vector unsigned short __b)
7962 return __builtin_altivec_vsubuhs((vector unsigned short)__a, __b);
7965 static vector unsigned short __ATTRS_o_ai
7966 vec_vsubuhs(vector unsigned short __a, vector bool short __b)
7968 return __builtin_altivec_vsubuhs(__a, (vector unsigned short)__b);
7973 static vector int __ATTRS_o_ai
7974 vec_vsubsws(vector int __a, vector int __b)
7976 return __builtin_altivec_vsubsws(__a, __b);
7979 static vector int __ATTRS_o_ai
7980 vec_vsubsws(vector bool int __a, vector int __b)
7982 return __builtin_altivec_vsubsws((vector int)__a, __b);
7985 static vector int __ATTRS_o_ai
7986 vec_vsubsws(vector int __a, vector bool int __b)
7988 return __builtin_altivec_vsubsws(__a, (vector int)__b);
7993 static vector unsigned int __ATTRS_o_ai
7994 vec_vsubuws(vector unsigned int __a, vector unsigned int __b)
7996 return __builtin_altivec_vsubuws(__a, __b);
7999 static vector unsigned int __ATTRS_o_ai
8000 vec_vsubuws(vector bool int __a, vector unsigned int __b)
8002 return __builtin_altivec_vsubuws((vector unsigned int)__a, __b);
8005 static vector unsigned int __ATTRS_o_ai
8006 vec_vsubuws(vector unsigned int __a, vector bool int __b)
8008 return __builtin_altivec_vsubuws(__a, (vector unsigned int)__b);
8013 static vector int __ATTRS_o_ai
8014 vec_sum4s(vector signed char __a, vector int __b)
8016 return __builtin_altivec_vsum4sbs(__a, __b);
8019 static vector unsigned int __ATTRS_o_ai
8020 vec_sum4s(vector unsigned char __a, vector unsigned int __b)
8022 return __builtin_altivec_vsum4ubs(__a, __b);
8025 static vector int __ATTRS_o_ai
8026 vec_sum4s(vector signed short __a, vector int __b)
8028 return __builtin_altivec_vsum4shs(__a, __b);
8033 static vector int __attribute__((__always_inline__))
8034 vec_vsum4sbs(vector signed char __a, vector int __b)
8036 return __builtin_altivec_vsum4sbs(__a, __b);
8041 static vector unsigned int __attribute__((__always_inline__))
8042 vec_vsum4ubs(vector unsigned char __a, vector unsigned int __b)
8044 return __builtin_altivec_vsum4ubs(__a, __b);
8049 static vector int __attribute__((__always_inline__))
8050 vec_vsum4shs(vector signed short __a, vector int __b)
8052 return __builtin_altivec_vsum4shs(__a, __b);
8057 static vector signed int __attribute__((__always_inline__))
8058 vec_sum2s(vector int __a, vector int __b)
8060 return __builtin_altivec_vsum2sws(__a, __b);
8065 static vector signed int __attribute__((__always_inline__))
8066 vec_vsum2sws(vector int __a, vector int __b)
8068 return __builtin_altivec_vsum2sws(__a, __b);
8073 static vector signed int __attribute__((__always_inline__))
8074 vec_sums(vector signed int __a, vector signed int __b)
8076 return __builtin_altivec_vsumsws(__a, __b);
8081 static vector signed int __attribute__((__always_inline__))
8082 vec_vsumsws(vector signed int __a, vector signed int __b)
8084 return __builtin_altivec_vsumsws(__a, __b);
8089 static vector float __attribute__((__always_inline__))
8090 vec_trunc(vector float __a)
8092 return __builtin_altivec_vrfiz(__a);
8097 static vector float __attribute__((__always_inline__))
8098 vec_vrfiz(vector float __a)
8100 return __builtin_altivec_vrfiz(__a);
8105 static vector short __ATTRS_o_ai
8106 vec_unpackh(vector signed char __a)
8108 return __builtin_altivec_vupkhsb((vector char)__a);
8111 static vector bool short __ATTRS_o_ai
8112 vec_unpackh(vector bool char __a)
8114 return (vector bool short)__builtin_altivec_vupkhsb((vector char)__a);
8117 static vector int __ATTRS_o_ai
8118 vec_unpackh(vector short __a)
8120 return __builtin_altivec_vupkhsh(__a);
8123 static vector bool int __ATTRS_o_ai
8124 vec_unpackh(vector bool short __a)
8126 return (vector bool int)__builtin_altivec_vupkhsh((vector short)__a);
8129 static vector unsigned int __ATTRS_o_ai
8130 vec_unpackh(vector pixel __a)
8132 return (vector unsigned int)__builtin_altivec_vupkhsh((vector short)__a);
8137 static vector short __ATTRS_o_ai
8138 vec_vupkhsb(vector signed char __a)
8140 return __builtin_altivec_vupkhsb((vector char)__a);
8143 static vector bool short __ATTRS_o_ai
8144 vec_vupkhsb(vector bool char __a)
8146 return (vector bool short)__builtin_altivec_vupkhsb((vector char)__a);
8151 static vector int __ATTRS_o_ai
8152 vec_vupkhsh(vector short __a)
8154 return __builtin_altivec_vupkhsh(__a);
8157 static vector bool int __ATTRS_o_ai
8158 vec_vupkhsh(vector bool short __a)
8160 return (vector bool int)__builtin_altivec_vupkhsh((vector short)__a);
8163 static vector unsigned int __ATTRS_o_ai
8164 vec_vupkhsh(vector pixel __a)
8166 return (vector unsigned int)__builtin_altivec_vupkhsh((vector short)__a);
8171 static vector short __ATTRS_o_ai
8172 vec_unpackl(vector signed char __a)
8174 return __builtin_altivec_vupklsb((vector char)__a);
8177 static vector bool short __ATTRS_o_ai
8178 vec_unpackl(vector bool char __a)
8180 return (vector bool short)__builtin_altivec_vupklsb((vector char)__a);
8183 static vector int __ATTRS_o_ai
8184 vec_unpackl(vector short __a)
8186 return __builtin_altivec_vupklsh(__a);
8189 static vector bool int __ATTRS_o_ai
8190 vec_unpackl(vector bool short __a)
8192 return (vector bool int)__builtin_altivec_vupklsh((vector short)__a);
8195 static vector unsigned int __ATTRS_o_ai
8196 vec_unpackl(vector pixel __a)
8198 return (vector unsigned int)__builtin_altivec_vupklsh((vector short)__a);
8203 static vector short __ATTRS_o_ai
8204 vec_vupklsb(vector signed char __a)
8206 return __builtin_altivec_vupklsb((vector char)__a);
8209 static vector bool short __ATTRS_o_ai
8210 vec_vupklsb(vector bool char __a)
8212 return (vector bool short)__builtin_altivec_vupklsb((vector char)__a);
8217 static vector int __ATTRS_o_ai
8218 vec_vupklsh(vector short __a)
8220 return __builtin_altivec_vupklsh(__a);
8223 static vector bool int __ATTRS_o_ai
8224 vec_vupklsh(vector bool short __a)
8226 return (vector bool int)__builtin_altivec_vupklsh((vector short)__a);
8229 static vector unsigned int __ATTRS_o_ai
8230 vec_vupklsh(vector pixel __a)
8232 return (vector unsigned int)__builtin_altivec_vupklsh((vector short)__a);
8237 #define __builtin_altivec_vxor vec_xor
8239 static vector signed char __ATTRS_o_ai
8240 vec_xor(vector signed char __a, vector signed char __b)
8245 static vector signed char __ATTRS_o_ai
8246 vec_xor(vector bool char __a, vector signed char __b)
8248 return (vector signed char)__a ^ __b;
8251 static vector signed char __ATTRS_o_ai
8252 vec_xor(vector signed char __a, vector bool char __b)
8254 return __a ^ (vector signed char)__b;
8257 static vector unsigned char __ATTRS_o_ai
8258 vec_xor(vector unsigned char __a, vector unsigned char __b)
8263 static vector unsigned char __ATTRS_o_ai
8264 vec_xor(vector bool char __a, vector unsigned char __b)
8266 return (vector unsigned char)__a ^ __b;
8269 static vector unsigned char __ATTRS_o_ai
8270 vec_xor(vector unsigned char __a, vector bool char __b)
8272 return __a ^ (vector unsigned char)__b;
8275 static vector bool char __ATTRS_o_ai
8276 vec_xor(vector bool char __a, vector bool char __b)
8281 static vector short __ATTRS_o_ai
8282 vec_xor(vector short __a, vector short __b)
8287 static vector short __ATTRS_o_ai
8288 vec_xor(vector bool short __a, vector short __b)
8290 return (vector short)__a ^ __b;
8293 static vector short __ATTRS_o_ai
8294 vec_xor(vector short __a, vector bool short __b)
8296 return __a ^ (vector short)__b;
8299 static vector unsigned short __ATTRS_o_ai
8300 vec_xor(vector unsigned short __a, vector unsigned short __b)
8305 static vector unsigned short __ATTRS_o_ai
8306 vec_xor(vector bool short __a, vector unsigned short __b)
8308 return (vector unsigned short)__a ^ __b;
8311 static vector unsigned short __ATTRS_o_ai
8312 vec_xor(vector unsigned short __a, vector bool short __b)
8314 return __a ^ (vector unsigned short)__b;
8317 static vector bool short __ATTRS_o_ai
8318 vec_xor(vector bool short __a, vector bool short __b)
8323 static vector int __ATTRS_o_ai
8324 vec_xor(vector int __a, vector int __b)
8329 static vector int __ATTRS_o_ai
8330 vec_xor(vector bool int __a, vector int __b)
8332 return (vector int)__a ^ __b;
8335 static vector int __ATTRS_o_ai
8336 vec_xor(vector int __a, vector bool int __b)
8338 return __a ^ (vector int)__b;
8341 static vector unsigned int __ATTRS_o_ai
8342 vec_xor(vector unsigned int __a, vector unsigned int __b)
8347 static vector unsigned int __ATTRS_o_ai
8348 vec_xor(vector bool int __a, vector unsigned int __b)
8350 return (vector unsigned int)__a ^ __b;
8353 static vector unsigned int __ATTRS_o_ai
8354 vec_xor(vector unsigned int __a, vector bool int __b)
8356 return __a ^ (vector unsigned int)__b;
8359 static vector bool int __ATTRS_o_ai
8360 vec_xor(vector bool int __a, vector bool int __b)
8365 static vector float __ATTRS_o_ai
8366 vec_xor(vector float __a, vector float __b)
8368 vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b;
8369 return (vector float)__res;
8372 static vector float __ATTRS_o_ai
8373 vec_xor(vector bool int __a, vector float __b)
8375 vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b;
8376 return (vector float)__res;
8379 static vector float __ATTRS_o_ai
8380 vec_xor(vector float __a, vector bool int __b)
8382 vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b;
8383 return (vector float)__res;
8388 static vector signed char __ATTRS_o_ai
8389 vec_vxor(vector signed char __a, vector signed char __b)
8394 static vector signed char __ATTRS_o_ai
8395 vec_vxor(vector bool char __a, vector signed char __b)
8397 return (vector signed char)__a ^ __b;
8400 static vector signed char __ATTRS_o_ai
8401 vec_vxor(vector signed char __a, vector bool char __b)
8403 return __a ^ (vector signed char)__b;
8406 static vector unsigned char __ATTRS_o_ai
8407 vec_vxor(vector unsigned char __a, vector unsigned char __b)
8412 static vector unsigned char __ATTRS_o_ai
8413 vec_vxor(vector bool char __a, vector unsigned char __b)
8415 return (vector unsigned char)__a ^ __b;
8418 static vector unsigned char __ATTRS_o_ai
8419 vec_vxor(vector unsigned char __a, vector bool char __b)
8421 return __a ^ (vector unsigned char)__b;
8424 static vector bool char __ATTRS_o_ai
8425 vec_vxor(vector bool char __a, vector bool char __b)
8430 static vector short __ATTRS_o_ai
8431 vec_vxor(vector short __a, vector short __b)
8436 static vector short __ATTRS_o_ai
8437 vec_vxor(vector bool short __a, vector short __b)
8439 return (vector short)__a ^ __b;
8442 static vector short __ATTRS_o_ai
8443 vec_vxor(vector short __a, vector bool short __b)
8445 return __a ^ (vector short)__b;
8448 static vector unsigned short __ATTRS_o_ai
8449 vec_vxor(vector unsigned short __a, vector unsigned short __b)
8454 static vector unsigned short __ATTRS_o_ai
8455 vec_vxor(vector bool short __a, vector unsigned short __b)
8457 return (vector unsigned short)__a ^ __b;
8460 static vector unsigned short __ATTRS_o_ai
8461 vec_vxor(vector unsigned short __a, vector bool short __b)
8463 return __a ^ (vector unsigned short)__b;
8466 static vector bool short __ATTRS_o_ai
8467 vec_vxor(vector bool short __a, vector bool short __b)
8472 static vector int __ATTRS_o_ai
8473 vec_vxor(vector int __a, vector int __b)
8478 static vector int __ATTRS_o_ai
8479 vec_vxor(vector bool int __a, vector int __b)
8481 return (vector int)__a ^ __b;
8484 static vector int __ATTRS_o_ai
8485 vec_vxor(vector int __a, vector bool int __b)
8487 return __a ^ (vector int)__b;
8490 static vector unsigned int __ATTRS_o_ai
8491 vec_vxor(vector unsigned int __a, vector unsigned int __b)
8496 static vector unsigned int __ATTRS_o_ai
8497 vec_vxor(vector bool int __a, vector unsigned int __b)
8499 return (vector unsigned int)__a ^ __b;
8502 static vector unsigned int __ATTRS_o_ai
8503 vec_vxor(vector unsigned int __a, vector bool int __b)
8505 return __a ^ (vector unsigned int)__b;
8508 static vector bool int __ATTRS_o_ai
8509 vec_vxor(vector bool int __a, vector bool int __b)
8514 static vector float __ATTRS_o_ai
8515 vec_vxor(vector float __a, vector float __b)
8517 vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b;
8518 return (vector float)__res;
8521 static vector float __ATTRS_o_ai
8522 vec_vxor(vector bool int __a, vector float __b)
8524 vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b;
8525 return (vector float)__res;
8528 static vector float __ATTRS_o_ai
8529 vec_vxor(vector float __a, vector bool int __b)
8531 vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b;
8532 return (vector float)__res;
8535 /* ------------------------ extensions for CBEA ----------------------------- */
8539 static signed char __ATTRS_o_ai
8540 vec_extract(vector signed char __a, int __b)
8545 static unsigned char __ATTRS_o_ai
8546 vec_extract(vector unsigned char __a, int __b)
8551 static short __ATTRS_o_ai
8552 vec_extract(vector short __a, int __b)
8557 static unsigned short __ATTRS_o_ai
8558 vec_extract(vector unsigned short __a, int __b)
8563 static int __ATTRS_o_ai
8564 vec_extract(vector int __a, int __b)
8569 static unsigned int __ATTRS_o_ai
8570 vec_extract(vector unsigned int __a, int __b)
8575 static float __ATTRS_o_ai
8576 vec_extract(vector float __a, int __b)
8583 static vector signed char __ATTRS_o_ai
8584 vec_insert(signed char __a, vector signed char __b, int __c)
8590 static vector unsigned char __ATTRS_o_ai
8591 vec_insert(unsigned char __a, vector unsigned char __b, int __c)
8597 static vector short __ATTRS_o_ai
8598 vec_insert(short __a, vector short __b, int __c)
8604 static vector unsigned short __ATTRS_o_ai
8605 vec_insert(unsigned short __a, vector unsigned short __b, int __c)
8611 static vector int __ATTRS_o_ai
8612 vec_insert(int __a, vector int __b, int __c)
8618 static vector unsigned int __ATTRS_o_ai
8619 vec_insert(unsigned int __a, vector unsigned int __b, int __c)
8625 static vector float __ATTRS_o_ai
8626 vec_insert(float __a, vector float __b, int __c)
8634 static vector signed char __ATTRS_o_ai
8635 vec_lvlx(int __a, const signed char *__b)
8637 return vec_perm(vec_ld(__a, __b),
8638 (vector signed char)(0),
8639 vec_lvsl(__a, __b));
8642 static vector signed char __ATTRS_o_ai
8643 vec_lvlx(int __a, const vector signed char *__b)
8645 return vec_perm(vec_ld(__a, __b),
8646 (vector signed char)(0),
8647 vec_lvsl(__a, (unsigned char *)__b));
8650 static vector unsigned char __ATTRS_o_ai
8651 vec_lvlx(int __a, const unsigned char *__b)
8653 return vec_perm(vec_ld(__a, __b),
8654 (vector unsigned char)(0),
8655 vec_lvsl(__a, __b));
8658 static vector unsigned char __ATTRS_o_ai
8659 vec_lvlx(int __a, const vector unsigned char *__b)
8661 return vec_perm(vec_ld(__a, __b),
8662 (vector unsigned char)(0),
8663 vec_lvsl(__a, (unsigned char *)__b));
8666 static vector bool char __ATTRS_o_ai
8667 vec_lvlx(int __a, const vector bool char *__b)
8669 return vec_perm(vec_ld(__a, __b),
8670 (vector bool char)(0),
8671 vec_lvsl(__a, (unsigned char *)__b));
8674 static vector short __ATTRS_o_ai
8675 vec_lvlx(int __a, const short *__b)
8677 return vec_perm(vec_ld(__a, __b),
8679 vec_lvsl(__a, __b));
8682 static vector short __ATTRS_o_ai
8683 vec_lvlx(int __a, const vector short *__b)
8685 return vec_perm(vec_ld(__a, __b),
8687 vec_lvsl(__a, (unsigned char *)__b));
8690 static vector unsigned short __ATTRS_o_ai
8691 vec_lvlx(int __a, const unsigned short *__b)
8693 return vec_perm(vec_ld(__a, __b),
8694 (vector unsigned short)(0),
8695 vec_lvsl(__a, __b));
8698 static vector unsigned short __ATTRS_o_ai
8699 vec_lvlx(int __a, const vector unsigned short *__b)
8701 return vec_perm(vec_ld(__a, __b),
8702 (vector unsigned short)(0),
8703 vec_lvsl(__a, (unsigned char *)__b));
8706 static vector bool short __ATTRS_o_ai
8707 vec_lvlx(int __a, const vector bool short *__b)
8709 return vec_perm(vec_ld(__a, __b),
8710 (vector bool short)(0),
8711 vec_lvsl(__a, (unsigned char *)__b));
8714 static vector pixel __ATTRS_o_ai
8715 vec_lvlx(int __a, const vector pixel *__b)
8717 return vec_perm(vec_ld(__a, __b),
8719 vec_lvsl(__a, (unsigned char *)__b));
8722 static vector int __ATTRS_o_ai
8723 vec_lvlx(int __a, const int *__b)
8725 return vec_perm(vec_ld(__a, __b),
8727 vec_lvsl(__a, __b));
8730 static vector int __ATTRS_o_ai
8731 vec_lvlx(int __a, const vector int *__b)
8733 return vec_perm(vec_ld(__a, __b),
8735 vec_lvsl(__a, (unsigned char *)__b));
8738 static vector unsigned int __ATTRS_o_ai
8739 vec_lvlx(int __a, const unsigned int *__b)
8741 return vec_perm(vec_ld(__a, __b),
8742 (vector unsigned int)(0),
8743 vec_lvsl(__a, __b));
8746 static vector unsigned int __ATTRS_o_ai
8747 vec_lvlx(int __a, const vector unsigned int *__b)
8749 return vec_perm(vec_ld(__a, __b),
8750 (vector unsigned int)(0),
8751 vec_lvsl(__a, (unsigned char *)__b));
8754 static vector bool int __ATTRS_o_ai
8755 vec_lvlx(int __a, const vector bool int *__b)
8757 return vec_perm(vec_ld(__a, __b),
8758 (vector bool int)(0),
8759 vec_lvsl(__a, (unsigned char *)__b));
8762 static vector float __ATTRS_o_ai
8763 vec_lvlx(int __a, const float *__b)
8765 return vec_perm(vec_ld(__a, __b),
8767 vec_lvsl(__a, __b));
8770 static vector float __ATTRS_o_ai
8771 vec_lvlx(int __a, const vector float *__b)
8773 return vec_perm(vec_ld(__a, __b),
8775 vec_lvsl(__a, (unsigned char *)__b));
8780 static vector signed char __ATTRS_o_ai
8781 vec_lvlxl(int __a, const signed char *__b)
8783 return vec_perm(vec_ldl(__a, __b),
8784 (vector signed char)(0),
8785 vec_lvsl(__a, __b));
8788 static vector signed char __ATTRS_o_ai
8789 vec_lvlxl(int __a, const vector signed char *__b)
8791 return vec_perm(vec_ldl(__a, __b),
8792 (vector signed char)(0),
8793 vec_lvsl(__a, (unsigned char *)__b));
8796 static vector unsigned char __ATTRS_o_ai
8797 vec_lvlxl(int __a, const unsigned char *__b)
8799 return vec_perm(vec_ldl(__a, __b),
8800 (vector unsigned char)(0),
8801 vec_lvsl(__a, __b));
8804 static vector unsigned char __ATTRS_o_ai
8805 vec_lvlxl(int __a, const vector unsigned char *__b)
8807 return vec_perm(vec_ldl(__a, __b),
8808 (vector unsigned char)(0),
8809 vec_lvsl(__a, (unsigned char *)__b));
8812 static vector bool char __ATTRS_o_ai
8813 vec_lvlxl(int __a, const vector bool char *__b)
8815 return vec_perm(vec_ldl(__a, __b),
8816 (vector bool char)(0),
8817 vec_lvsl(__a, (unsigned char *)__b));
8820 static vector short __ATTRS_o_ai
8821 vec_lvlxl(int __a, const short *__b)
8823 return vec_perm(vec_ldl(__a, __b),
8825 vec_lvsl(__a, __b));
8828 static vector short __ATTRS_o_ai
8829 vec_lvlxl(int __a, const vector short *__b)
8831 return vec_perm(vec_ldl(__a, __b),
8833 vec_lvsl(__a, (unsigned char *)__b));
8836 static vector unsigned short __ATTRS_o_ai
8837 vec_lvlxl(int __a, const unsigned short *__b)
8839 return vec_perm(vec_ldl(__a, __b),
8840 (vector unsigned short)(0),
8841 vec_lvsl(__a, __b));
8844 static vector unsigned short __ATTRS_o_ai
8845 vec_lvlxl(int __a, const vector unsigned short *__b)
8847 return vec_perm(vec_ldl(__a, __b),
8848 (vector unsigned short)(0),
8849 vec_lvsl(__a, (unsigned char *)__b));
8852 static vector bool short __ATTRS_o_ai
8853 vec_lvlxl(int __a, const vector bool short *__b)
8855 return vec_perm(vec_ldl(__a, __b),
8856 (vector bool short)(0),
8857 vec_lvsl(__a, (unsigned char *)__b));
8860 static vector pixel __ATTRS_o_ai
8861 vec_lvlxl(int __a, const vector pixel *__b)
8863 return vec_perm(vec_ldl(__a, __b),
8865 vec_lvsl(__a, (unsigned char *)__b));
8868 static vector int __ATTRS_o_ai
8869 vec_lvlxl(int __a, const int *__b)
8871 return vec_perm(vec_ldl(__a, __b),
8873 vec_lvsl(__a, __b));
8876 static vector int __ATTRS_o_ai
8877 vec_lvlxl(int __a, const vector int *__b)
8879 return vec_perm(vec_ldl(__a, __b),
8881 vec_lvsl(__a, (unsigned char *)__b));
8884 static vector unsigned int __ATTRS_o_ai
8885 vec_lvlxl(int __a, const unsigned int *__b)
8887 return vec_perm(vec_ldl(__a, __b),
8888 (vector unsigned int)(0),
8889 vec_lvsl(__a, __b));
8892 static vector unsigned int __ATTRS_o_ai
8893 vec_lvlxl(int __a, const vector unsigned int *__b)
8895 return vec_perm(vec_ldl(__a, __b),
8896 (vector unsigned int)(0),
8897 vec_lvsl(__a, (unsigned char *)__b));
8900 static vector bool int __ATTRS_o_ai
8901 vec_lvlxl(int __a, const vector bool int *__b)
8903 return vec_perm(vec_ldl(__a, __b),
8904 (vector bool int)(0),
8905 vec_lvsl(__a, (unsigned char *)__b));
8908 static vector float __ATTRS_o_ai
8909 vec_lvlxl(int __a, const float *__b)
8911 return vec_perm(vec_ldl(__a, __b),
8913 vec_lvsl(__a, __b));
8916 static vector float __ATTRS_o_ai
8917 vec_lvlxl(int __a, vector float *__b)
8919 return vec_perm(vec_ldl(__a, __b),
8921 vec_lvsl(__a, (unsigned char *)__b));
8926 static vector signed char __ATTRS_o_ai
8927 vec_lvrx(int __a, const signed char *__b)
8929 return vec_perm((vector signed char)(0),
8931 vec_lvsl(__a, __b));
8934 static vector signed char __ATTRS_o_ai
8935 vec_lvrx(int __a, const vector signed char *__b)
8937 return vec_perm((vector signed char)(0),
8939 vec_lvsl(__a, (unsigned char *)__b));
8942 static vector unsigned char __ATTRS_o_ai
8943 vec_lvrx(int __a, const unsigned char *__b)
8945 return vec_perm((vector unsigned char)(0),
8947 vec_lvsl(__a, __b));
8950 static vector unsigned char __ATTRS_o_ai
8951 vec_lvrx(int __a, const vector unsigned char *__b)
8953 return vec_perm((vector unsigned char)(0),
8955 vec_lvsl(__a, (unsigned char *)__b));
8958 static vector bool char __ATTRS_o_ai
8959 vec_lvrx(int __a, const vector bool char *__b)
8961 return vec_perm((vector bool char)(0),
8963 vec_lvsl(__a, (unsigned char *)__b));
8966 static vector short __ATTRS_o_ai
8967 vec_lvrx(int __a, const short *__b)
8969 return vec_perm((vector short)(0),
8971 vec_lvsl(__a, __b));
8974 static vector short __ATTRS_o_ai
8975 vec_lvrx(int __a, const vector short *__b)
8977 return vec_perm((vector short)(0),
8979 vec_lvsl(__a, (unsigned char *)__b));
8982 static vector unsigned short __ATTRS_o_ai
8983 vec_lvrx(int __a, const unsigned short *__b)
8985 return vec_perm((vector unsigned short)(0),
8987 vec_lvsl(__a, __b));
8990 static vector unsigned short __ATTRS_o_ai
8991 vec_lvrx(int __a, const vector unsigned short *__b)
8993 return vec_perm((vector unsigned short)(0),
8995 vec_lvsl(__a, (unsigned char *)__b));
8998 static vector bool short __ATTRS_o_ai
8999 vec_lvrx(int __a, const vector bool short *__b)
9001 return vec_perm((vector bool short)(0),
9003 vec_lvsl(__a, (unsigned char *)__b));
9006 static vector pixel __ATTRS_o_ai
9007 vec_lvrx(int __a, const vector pixel *__b)
9009 return vec_perm((vector pixel)(0),
9011 vec_lvsl(__a, (unsigned char *)__b));
9014 static vector int __ATTRS_o_ai
9015 vec_lvrx(int __a, const int *__b)
9017 return vec_perm((vector int)(0),
9019 vec_lvsl(__a, __b));
9022 static vector int __ATTRS_o_ai
9023 vec_lvrx(int __a, const vector int *__b)
9025 return vec_perm((vector int)(0),
9027 vec_lvsl(__a, (unsigned char *)__b));
9030 static vector unsigned int __ATTRS_o_ai
9031 vec_lvrx(int __a, const unsigned int *__b)
9033 return vec_perm((vector unsigned int)(0),
9035 vec_lvsl(__a, __b));
9038 static vector unsigned int __ATTRS_o_ai
9039 vec_lvrx(int __a, const vector unsigned int *__b)
9041 return vec_perm((vector unsigned int)(0),
9043 vec_lvsl(__a, (unsigned char *)__b));
9046 static vector bool int __ATTRS_o_ai
9047 vec_lvrx(int __a, const vector bool int *__b)
9049 return vec_perm((vector bool int)(0),
9051 vec_lvsl(__a, (unsigned char *)__b));
9054 static vector float __ATTRS_o_ai
9055 vec_lvrx(int __a, const float *__b)
9057 return vec_perm((vector float)(0),
9059 vec_lvsl(__a, __b));
9062 static vector float __ATTRS_o_ai
9063 vec_lvrx(int __a, const vector float *__b)
9065 return vec_perm((vector float)(0),
9067 vec_lvsl(__a, (unsigned char *)__b));
9072 static vector signed char __ATTRS_o_ai
9073 vec_lvrxl(int __a, const signed char *__b)
9075 return vec_perm((vector signed char)(0),
9077 vec_lvsl(__a, __b));
9080 static vector signed char __ATTRS_o_ai
9081 vec_lvrxl(int __a, const vector signed char *__b)
9083 return vec_perm((vector signed char)(0),
9085 vec_lvsl(__a, (unsigned char *)__b));
9088 static vector unsigned char __ATTRS_o_ai
9089 vec_lvrxl(int __a, const unsigned char *__b)
9091 return vec_perm((vector unsigned char)(0),
9093 vec_lvsl(__a, __b));
9096 static vector unsigned char __ATTRS_o_ai
9097 vec_lvrxl(int __a, const vector unsigned char *__b)
9099 return vec_perm((vector unsigned char)(0),
9101 vec_lvsl(__a, (unsigned char *)__b));
9104 static vector bool char __ATTRS_o_ai
9105 vec_lvrxl(int __a, const vector bool char *__b)
9107 return vec_perm((vector bool char)(0),
9109 vec_lvsl(__a, (unsigned char *)__b));
9112 static vector short __ATTRS_o_ai
9113 vec_lvrxl(int __a, const short *__b)
9115 return vec_perm((vector short)(0),
9117 vec_lvsl(__a, __b));
9120 static vector short __ATTRS_o_ai
9121 vec_lvrxl(int __a, const vector short *__b)
9123 return vec_perm((vector short)(0),
9125 vec_lvsl(__a, (unsigned char *)__b));
9128 static vector unsigned short __ATTRS_o_ai
9129 vec_lvrxl(int __a, const unsigned short *__b)
9131 return vec_perm((vector unsigned short)(0),
9133 vec_lvsl(__a, __b));
9136 static vector unsigned short __ATTRS_o_ai
9137 vec_lvrxl(int __a, const vector unsigned short *__b)
9139 return vec_perm((vector unsigned short)(0),
9141 vec_lvsl(__a, (unsigned char *)__b));
9144 static vector bool short __ATTRS_o_ai
9145 vec_lvrxl(int __a, const vector bool short *__b)
9147 return vec_perm((vector bool short)(0),
9149 vec_lvsl(__a, (unsigned char *)__b));
9152 static vector pixel __ATTRS_o_ai
9153 vec_lvrxl(int __a, const vector pixel *__b)
9155 return vec_perm((vector pixel)(0),
9157 vec_lvsl(__a, (unsigned char *)__b));
9160 static vector int __ATTRS_o_ai
9161 vec_lvrxl(int __a, const int *__b)
9163 return vec_perm((vector int)(0),
9165 vec_lvsl(__a, __b));
9168 static vector int __ATTRS_o_ai
9169 vec_lvrxl(int __a, const vector int *__b)
9171 return vec_perm((vector int)(0),
9173 vec_lvsl(__a, (unsigned char *)__b));
9176 static vector unsigned int __ATTRS_o_ai
9177 vec_lvrxl(int __a, const unsigned int *__b)
9179 return vec_perm((vector unsigned int)(0),
9181 vec_lvsl(__a, __b));
9184 static vector unsigned int __ATTRS_o_ai
9185 vec_lvrxl(int __a, const vector unsigned int *__b)
9187 return vec_perm((vector unsigned int)(0),
9189 vec_lvsl(__a, (unsigned char *)__b));
9192 static vector bool int __ATTRS_o_ai
9193 vec_lvrxl(int __a, const vector bool int *__b)
9195 return vec_perm((vector bool int)(0),
9197 vec_lvsl(__a, (unsigned char *)__b));
9200 static vector float __ATTRS_o_ai
9201 vec_lvrxl(int __a, const float *__b)
9203 return vec_perm((vector float)(0),
9205 vec_lvsl(__a, __b));
9208 static vector float __ATTRS_o_ai
9209 vec_lvrxl(int __a, const vector float *__b)
9211 return vec_perm((vector float)(0),
9213 vec_lvsl(__a, (unsigned char *)__b));
9218 static void __ATTRS_o_ai
9219 vec_stvlx(vector signed char __a, int __b, signed char *__c)
9221 return vec_st(vec_perm(vec_lvrx(__b, __c),
9223 vec_lvsr(__b, __c)),
9227 static void __ATTRS_o_ai
9228 vec_stvlx(vector signed char __a, int __b, vector signed char *__c)
9230 return vec_st(vec_perm(vec_lvrx(__b, __c),
9232 vec_lvsr(__b, (unsigned char *)__c)),
9236 static void __ATTRS_o_ai
9237 vec_stvlx(vector unsigned char __a, int __b, unsigned char *__c)
9239 return vec_st(vec_perm(vec_lvrx(__b, __c),
9241 vec_lvsr(__b, __c)),
9245 static void __ATTRS_o_ai
9246 vec_stvlx(vector unsigned char __a, int __b, vector unsigned char *__c)
9248 return vec_st(vec_perm(vec_lvrx(__b, __c),
9250 vec_lvsr(__b, (unsigned char *)__c)),
9254 static void __ATTRS_o_ai
9255 vec_stvlx(vector bool char __a, int __b, vector bool char *__c)
9257 return vec_st(vec_perm(vec_lvrx(__b, __c),
9259 vec_lvsr(__b, (unsigned char *)__c)),
9263 static void __ATTRS_o_ai
9264 vec_stvlx(vector short __a, int __b, short *__c)
9266 return vec_st(vec_perm(vec_lvrx(__b, __c),
9268 vec_lvsr(__b, __c)),
9272 static void __ATTRS_o_ai
9273 vec_stvlx(vector short __a, int __b, vector short *__c)
9275 return vec_st(vec_perm(vec_lvrx(__b, __c),
9277 vec_lvsr(__b, (unsigned char *)__c)),
9281 static void __ATTRS_o_ai
9282 vec_stvlx(vector unsigned short __a, int __b, unsigned short *__c)
9284 return vec_st(vec_perm(vec_lvrx(__b, __c),
9286 vec_lvsr(__b, __c)),
9290 static void __ATTRS_o_ai
9291 vec_stvlx(vector unsigned short __a, int __b, vector unsigned short *__c)
9293 return vec_st(vec_perm(vec_lvrx(__b, __c),
9295 vec_lvsr(__b, (unsigned char *)__c)),
9299 static void __ATTRS_o_ai
9300 vec_stvlx(vector bool short __a, int __b, vector bool short *__c)
9302 return vec_st(vec_perm(vec_lvrx(__b, __c),
9304 vec_lvsr(__b, (unsigned char *)__c)),
9308 static void __ATTRS_o_ai
9309 vec_stvlx(vector pixel __a, int __b, vector pixel *__c)
9311 return vec_st(vec_perm(vec_lvrx(__b, __c),
9313 vec_lvsr(__b, (unsigned char *)__c)),
9317 static void __ATTRS_o_ai
9318 vec_stvlx(vector int __a, int __b, int *__c)
9320 return vec_st(vec_perm(vec_lvrx(__b, __c),
9322 vec_lvsr(__b, __c)),
9326 static void __ATTRS_o_ai
9327 vec_stvlx(vector int __a, int __b, vector int *__c)
9329 return vec_st(vec_perm(vec_lvrx(__b, __c),
9331 vec_lvsr(__b, (unsigned char *)__c)),
9335 static void __ATTRS_o_ai
9336 vec_stvlx(vector unsigned int __a, int __b, unsigned int *__c)
9338 return vec_st(vec_perm(vec_lvrx(__b, __c),
9340 vec_lvsr(__b, __c)),
9344 static void __ATTRS_o_ai
9345 vec_stvlx(vector unsigned int __a, int __b, vector unsigned int *__c)
9347 return vec_st(vec_perm(vec_lvrx(__b, __c),
9349 vec_lvsr(__b, (unsigned char *)__c)),
9353 static void __ATTRS_o_ai
9354 vec_stvlx(vector bool int __a, int __b, vector bool int *__c)
9356 return vec_st(vec_perm(vec_lvrx(__b, __c),
9358 vec_lvsr(__b, (unsigned char *)__c)),
9362 static void __ATTRS_o_ai
9363 vec_stvlx(vector float __a, int __b, vector float *__c)
9365 return vec_st(vec_perm(vec_lvrx(__b, __c),
9367 vec_lvsr(__b, (unsigned char *)__c)),
9373 static void __ATTRS_o_ai
9374 vec_stvlxl(vector signed char __a, int __b, signed char *__c)
9376 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9378 vec_lvsr(__b, __c)),
9382 static void __ATTRS_o_ai
9383 vec_stvlxl(vector signed char __a, int __b, vector signed char *__c)
9385 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9387 vec_lvsr(__b, (unsigned char *)__c)),
9391 static void __ATTRS_o_ai
9392 vec_stvlxl(vector unsigned char __a, int __b, unsigned char *__c)
9394 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9396 vec_lvsr(__b, __c)),
9400 static void __ATTRS_o_ai
9401 vec_stvlxl(vector unsigned char __a, int __b, vector unsigned char *__c)
9403 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9405 vec_lvsr(__b, (unsigned char *)__c)),
9409 static void __ATTRS_o_ai
9410 vec_stvlxl(vector bool char __a, int __b, vector bool char *__c)
9412 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9414 vec_lvsr(__b, (unsigned char *)__c)),
9418 static void __ATTRS_o_ai
9419 vec_stvlxl(vector short __a, int __b, short *__c)
9421 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9423 vec_lvsr(__b, __c)),
9427 static void __ATTRS_o_ai
9428 vec_stvlxl(vector short __a, int __b, vector short *__c)
9430 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9432 vec_lvsr(__b, (unsigned char *)__c)),
9436 static void __ATTRS_o_ai
9437 vec_stvlxl(vector unsigned short __a, int __b, unsigned short *__c)
9439 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9441 vec_lvsr(__b, __c)),
9445 static void __ATTRS_o_ai
9446 vec_stvlxl(vector unsigned short __a, int __b, vector unsigned short *__c)
9448 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9450 vec_lvsr(__b, (unsigned char *)__c)),
9454 static void __ATTRS_o_ai
9455 vec_stvlxl(vector bool short __a, int __b, vector bool short *__c)
9457 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9459 vec_lvsr(__b, (unsigned char *)__c)),
9463 static void __ATTRS_o_ai
9464 vec_stvlxl(vector pixel __a, int __b, vector pixel *__c)
9466 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9468 vec_lvsr(__b, (unsigned char *)__c)),
9472 static void __ATTRS_o_ai
9473 vec_stvlxl(vector int __a, int __b, int *__c)
9475 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9477 vec_lvsr(__b, __c)),
9481 static void __ATTRS_o_ai
9482 vec_stvlxl(vector int __a, int __b, vector int *__c)
9484 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9486 vec_lvsr(__b, (unsigned char *)__c)),
9490 static void __ATTRS_o_ai
9491 vec_stvlxl(vector unsigned int __a, int __b, unsigned int *__c)
9493 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9495 vec_lvsr(__b, __c)),
9499 static void __ATTRS_o_ai
9500 vec_stvlxl(vector unsigned int __a, int __b, vector unsigned int *__c)
9502 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9504 vec_lvsr(__b, (unsigned char *)__c)),
9508 static void __ATTRS_o_ai
9509 vec_stvlxl(vector bool int __a, int __b, vector bool int *__c)
9511 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9513 vec_lvsr(__b, (unsigned char *)__c)),
9517 static void __ATTRS_o_ai
9518 vec_stvlxl(vector float __a, int __b, vector float *__c)
9520 return vec_stl(vec_perm(vec_lvrx(__b, __c),
9522 vec_lvsr(__b, (unsigned char *)__c)),
9528 static void __ATTRS_o_ai
9529 vec_stvrx(vector signed char __a, int __b, signed char *__c)
9531 return vec_st(vec_perm(__a,
9533 vec_lvsr(__b, __c)),
9537 static void __ATTRS_o_ai
9538 vec_stvrx(vector signed char __a, int __b, vector signed char *__c)
9540 return vec_st(vec_perm(__a,
9542 vec_lvsr(__b, (unsigned char *)__c)),
9546 static void __ATTRS_o_ai
9547 vec_stvrx(vector unsigned char __a, int __b, unsigned char *__c)
9549 return vec_st(vec_perm(__a,
9551 vec_lvsr(__b, __c)),
9555 static void __ATTRS_o_ai
9556 vec_stvrx(vector unsigned char __a, int __b, vector unsigned char *__c)
9558 return vec_st(vec_perm(__a,
9560 vec_lvsr(__b, (unsigned char *)__c)),
9564 static void __ATTRS_o_ai
9565 vec_stvrx(vector bool char __a, int __b, vector bool char *__c)
9567 return vec_st(vec_perm(__a,
9569 vec_lvsr(__b, (unsigned char *)__c)),
9573 static void __ATTRS_o_ai
9574 vec_stvrx(vector short __a, int __b, short *__c)
9576 return vec_st(vec_perm(__a,
9578 vec_lvsr(__b, __c)),
9582 static void __ATTRS_o_ai
9583 vec_stvrx(vector short __a, int __b, vector short *__c)
9585 return vec_st(vec_perm(__a,
9587 vec_lvsr(__b, (unsigned char *)__c)),
9591 static void __ATTRS_o_ai
9592 vec_stvrx(vector unsigned short __a, int __b, unsigned short *__c)
9594 return vec_st(vec_perm(__a,
9596 vec_lvsr(__b, __c)),
9600 static void __ATTRS_o_ai
9601 vec_stvrx(vector unsigned short __a, int __b, vector unsigned short *__c)
9603 return vec_st(vec_perm(__a,
9605 vec_lvsr(__b, (unsigned char *)__c)),
9609 static void __ATTRS_o_ai
9610 vec_stvrx(vector bool short __a, int __b, vector bool short *__c)
9612 return vec_st(vec_perm(__a,
9614 vec_lvsr(__b, (unsigned char *)__c)),
9618 static void __ATTRS_o_ai
9619 vec_stvrx(vector pixel __a, int __b, vector pixel *__c)
9621 return vec_st(vec_perm(__a,
9623 vec_lvsr(__b, (unsigned char *)__c)),
9627 static void __ATTRS_o_ai
9628 vec_stvrx(vector int __a, int __b, int *__c)
9630 return vec_st(vec_perm(__a,
9632 vec_lvsr(__b, __c)),
9636 static void __ATTRS_o_ai
9637 vec_stvrx(vector int __a, int __b, vector int *__c)
9639 return vec_st(vec_perm(__a,
9641 vec_lvsr(__b, (unsigned char *)__c)),
9645 static void __ATTRS_o_ai
9646 vec_stvrx(vector unsigned int __a, int __b, unsigned int *__c)
9648 return vec_st(vec_perm(__a,
9650 vec_lvsr(__b, __c)),
9654 static void __ATTRS_o_ai
9655 vec_stvrx(vector unsigned int __a, int __b, vector unsigned int *__c)
9657 return vec_st(vec_perm(__a,
9659 vec_lvsr(__b, (unsigned char *)__c)),
9663 static void __ATTRS_o_ai
9664 vec_stvrx(vector bool int __a, int __b, vector bool int *__c)
9666 return vec_st(vec_perm(__a,
9668 vec_lvsr(__b, (unsigned char *)__c)),
9672 static void __ATTRS_o_ai
9673 vec_stvrx(vector float __a, int __b, vector float *__c)
9675 return vec_st(vec_perm(__a,
9677 vec_lvsr(__b, (unsigned char *)__c)),
9683 static void __ATTRS_o_ai
9684 vec_stvrxl(vector signed char __a, int __b, signed char *__c)
9686 return vec_stl(vec_perm(__a,
9688 vec_lvsr(__b, __c)),
9692 static void __ATTRS_o_ai
9693 vec_stvrxl(vector signed char __a, int __b, vector signed char *__c)
9695 return vec_stl(vec_perm(__a,
9697 vec_lvsr(__b, (unsigned char *)__c)),
9701 static void __ATTRS_o_ai
9702 vec_stvrxl(vector unsigned char __a, int __b, unsigned char *__c)
9704 return vec_stl(vec_perm(__a,
9706 vec_lvsr(__b, __c)),
9710 static void __ATTRS_o_ai
9711 vec_stvrxl(vector unsigned char __a, int __b, vector unsigned char *__c)
9713 return vec_stl(vec_perm(__a,
9715 vec_lvsr(__b, (unsigned char *)__c)),
9719 static void __ATTRS_o_ai
9720 vec_stvrxl(vector bool char __a, int __b, vector bool char *__c)
9722 return vec_stl(vec_perm(__a,
9724 vec_lvsr(__b, (unsigned char *)__c)),
9728 static void __ATTRS_o_ai
9729 vec_stvrxl(vector short __a, int __b, short *__c)
9731 return vec_stl(vec_perm(__a,
9733 vec_lvsr(__b, __c)),
9737 static void __ATTRS_o_ai
9738 vec_stvrxl(vector short __a, int __b, vector short *__c)
9740 return vec_stl(vec_perm(__a,
9742 vec_lvsr(__b, (unsigned char *)__c)),
9746 static void __ATTRS_o_ai
9747 vec_stvrxl(vector unsigned short __a, int __b, unsigned short *__c)
9749 return vec_stl(vec_perm(__a,
9751 vec_lvsr(__b, __c)),
9755 static void __ATTRS_o_ai
9756 vec_stvrxl(vector unsigned short __a, int __b, vector unsigned short *__c)
9758 return vec_stl(vec_perm(__a,
9760 vec_lvsr(__b, (unsigned char *)__c)),
9764 static void __ATTRS_o_ai
9765 vec_stvrxl(vector bool short __a, int __b, vector bool short *__c)
9767 return vec_stl(vec_perm(__a,
9769 vec_lvsr(__b, (unsigned char *)__c)),
9773 static void __ATTRS_o_ai
9774 vec_stvrxl(vector pixel __a, int __b, vector pixel *__c)
9776 return vec_stl(vec_perm(__a,
9778 vec_lvsr(__b, (unsigned char *)__c)),
9782 static void __ATTRS_o_ai
9783 vec_stvrxl(vector int __a, int __b, int *__c)
9785 return vec_stl(vec_perm(__a,
9787 vec_lvsr(__b, __c)),
9791 static void __ATTRS_o_ai
9792 vec_stvrxl(vector int __a, int __b, vector int *__c)
9794 return vec_stl(vec_perm(__a,
9796 vec_lvsr(__b, (unsigned char *)__c)),
9800 static void __ATTRS_o_ai
9801 vec_stvrxl(vector unsigned int __a, int __b, unsigned int *__c)
9803 return vec_stl(vec_perm(__a,
9805 vec_lvsr(__b, __c)),
9809 static void __ATTRS_o_ai
9810 vec_stvrxl(vector unsigned int __a, int __b, vector unsigned int *__c)
9812 return vec_stl(vec_perm(__a,
9814 vec_lvsr(__b, (unsigned char *)__c)),
9818 static void __ATTRS_o_ai
9819 vec_stvrxl(vector bool int __a, int __b, vector bool int *__c)
9821 return vec_stl(vec_perm(__a,
9823 vec_lvsr(__b, (unsigned char *)__c)),
9827 static void __ATTRS_o_ai
9828 vec_stvrxl(vector float __a, int __b, vector float *__c)
9830 return vec_stl(vec_perm(__a,
9832 vec_lvsr(__b, (unsigned char *)__c)),
9838 static vector signed char __ATTRS_o_ai
9839 vec_promote(signed char __a, int __b)
9841 vector signed char __res = (vector signed char)(0);
9846 static vector unsigned char __ATTRS_o_ai
9847 vec_promote(unsigned char __a, int __b)
9849 vector unsigned char __res = (vector unsigned char)(0);
9854 static vector short __ATTRS_o_ai
9855 vec_promote(short __a, int __b)
9857 vector short __res = (vector short)(0);
9862 static vector unsigned short __ATTRS_o_ai
9863 vec_promote(unsigned short __a, int __b)
9865 vector unsigned short __res = (vector unsigned short)(0);
9870 static vector int __ATTRS_o_ai
9871 vec_promote(int __a, int __b)
9873 vector int __res = (vector int)(0);
9878 static vector unsigned int __ATTRS_o_ai
9879 vec_promote(unsigned int __a, int __b)
9881 vector unsigned int __res = (vector unsigned int)(0);
9886 static vector float __ATTRS_o_ai
9887 vec_promote(float __a, int __b)
9889 vector float __res = (vector float)(0);
9896 static vector signed char __ATTRS_o_ai
9897 vec_splats(signed char __a)
9899 return (vector signed char)(__a);
9902 static vector unsigned char __ATTRS_o_ai
9903 vec_splats(unsigned char __a)
9905 return (vector unsigned char)(__a);
9908 static vector short __ATTRS_o_ai
9909 vec_splats(short __a)
9911 return (vector short)(__a);
9914 static vector unsigned short __ATTRS_o_ai
9915 vec_splats(unsigned short __a)
9917 return (vector unsigned short)(__a);
9920 static vector int __ATTRS_o_ai
9923 return (vector int)(__a);
9926 static vector unsigned int __ATTRS_o_ai
9927 vec_splats(unsigned int __a)
9929 return (vector unsigned int)(__a);
9932 static vector float __ATTRS_o_ai
9933 vec_splats(float __a)
9935 return (vector float)(__a);
9938 /* ----------------------------- predicates --------------------------------- */
9942 static int __ATTRS_o_ai
9943 vec_all_eq(vector signed char __a, vector signed char __b)
9945 return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b);
9948 static int __ATTRS_o_ai
9949 vec_all_eq(vector signed char __a, vector bool char __b)
9951 return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b);
9954 static int __ATTRS_o_ai
9955 vec_all_eq(vector unsigned char __a, vector unsigned char __b)
9957 return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b);
9960 static int __ATTRS_o_ai
9961 vec_all_eq(vector unsigned char __a, vector bool char __b)
9963 return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b);
9966 static int __ATTRS_o_ai
9967 vec_all_eq(vector bool char __a, vector signed char __b)
9969 return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b);
9972 static int __ATTRS_o_ai
9973 vec_all_eq(vector bool char __a, vector unsigned char __b)
9975 return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b);
9978 static int __ATTRS_o_ai
9979 vec_all_eq(vector bool char __a, vector bool char __b)
9981 return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b);
9984 static int __ATTRS_o_ai
9985 vec_all_eq(vector short __a, vector short __b)
9987 return __builtin_altivec_vcmpequh_p(__CR6_LT, __a, __b);
9990 static int __ATTRS_o_ai
9991 vec_all_eq(vector short __a, vector bool short __b)
9993 return __builtin_altivec_vcmpequh_p(__CR6_LT, __a, (vector short)__b);
9996 static int __ATTRS_o_ai
9997 vec_all_eq(vector unsigned short __a, vector unsigned short __b)
10000 __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b);
10003 static int __ATTRS_o_ai
10004 vec_all_eq(vector unsigned short __a, vector bool short __b)
10007 __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b);
10010 static int __ATTRS_o_ai
10011 vec_all_eq(vector bool short __a, vector short __b)
10014 __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b);
10017 static int __ATTRS_o_ai
10018 vec_all_eq(vector bool short __a, vector unsigned short __b)
10021 __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b);
10024 static int __ATTRS_o_ai
10025 vec_all_eq(vector bool short __a, vector bool short __b)
10028 __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b);
10031 static int __ATTRS_o_ai
10032 vec_all_eq(vector pixel __a, vector pixel __b)
10035 __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b);
10038 static int __ATTRS_o_ai
10039 vec_all_eq(vector int __a, vector int __b)
10041 return __builtin_altivec_vcmpequw_p(__CR6_LT, __a, __b);
10044 static int __ATTRS_o_ai
10045 vec_all_eq(vector int __a, vector bool int __b)
10047 return __builtin_altivec_vcmpequw_p(__CR6_LT, __a, (vector int)__b);
10050 static int __ATTRS_o_ai
10051 vec_all_eq(vector unsigned int __a, vector unsigned int __b)
10053 return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b);
10056 static int __ATTRS_o_ai
10057 vec_all_eq(vector unsigned int __a, vector bool int __b)
10059 return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b);
10062 static int __ATTRS_o_ai
10063 vec_all_eq(vector bool int __a, vector int __b)
10065 return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b);
10068 static int __ATTRS_o_ai
10069 vec_all_eq(vector bool int __a, vector unsigned int __b)
10071 return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b);
10074 static int __ATTRS_o_ai
10075 vec_all_eq(vector bool int __a, vector bool int __b)
10077 return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b);
10080 static int __ATTRS_o_ai
10081 vec_all_eq(vector float __a, vector float __b)
10083 return __builtin_altivec_vcmpeqfp_p(__CR6_LT, __a, __b);
10088 static int __ATTRS_o_ai
10089 vec_all_ge(vector signed char __a, vector signed char __b)
10091 return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, __b, __a);
10094 static int __ATTRS_o_ai
10095 vec_all_ge(vector signed char __a, vector bool char __b)
10097 return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, (vector signed char)__b, __a);
10100 static int __ATTRS_o_ai
10101 vec_all_ge(vector unsigned char __a, vector unsigned char __b)
10103 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __b, __a);
10106 static int __ATTRS_o_ai
10107 vec_all_ge(vector unsigned char __a, vector bool char __b)
10109 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)__b, __a);
10112 static int __ATTRS_o_ai
10113 vec_all_ge(vector bool char __a, vector signed char __b)
10115 return __builtin_altivec_vcmpgtub_p(__CR6_EQ,
10116 (vector unsigned char)__b,
10117 (vector unsigned char)__a);
10120 static int __ATTRS_o_ai
10121 vec_all_ge(vector bool char __a, vector unsigned char __b)
10123 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __b, (vector unsigned char)__a);
10126 static int __ATTRS_o_ai
10127 vec_all_ge(vector bool char __a, vector bool char __b)
10129 return __builtin_altivec_vcmpgtub_p(__CR6_EQ,
10130 (vector unsigned char)__b,
10131 (vector unsigned char)__a);
10134 static int __ATTRS_o_ai
10135 vec_all_ge(vector short __a, vector short __b)
10137 return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, __b, __a);
10140 static int __ATTRS_o_ai
10141 vec_all_ge(vector short __a, vector bool short __b)
10143 return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, (vector short)__b, __a);
10146 static int __ATTRS_o_ai
10147 vec_all_ge(vector unsigned short __a, vector unsigned short __b)
10149 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, __b, __a);
10152 static int __ATTRS_o_ai
10153 vec_all_ge(vector unsigned short __a, vector bool short __b)
10155 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)__b, __a);
10158 static int __ATTRS_o_ai
10159 vec_all_ge(vector bool short __a, vector short __b)
10161 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ,
10162 (vector unsigned short)__b,
10163 (vector unsigned short)__a);
10166 static int __ATTRS_o_ai
10167 vec_all_ge(vector bool short __a, vector unsigned short __b)
10169 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, __b, (vector unsigned short)__a);
10172 static int __ATTRS_o_ai
10173 vec_all_ge(vector bool short __a, vector bool short __b)
10175 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ,
10176 (vector unsigned short)__b,
10177 (vector unsigned short)__a);
10180 static int __ATTRS_o_ai
10181 vec_all_ge(vector int __a, vector int __b)
10183 return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, __b, __a);
10186 static int __ATTRS_o_ai
10187 vec_all_ge(vector int __a, vector bool int __b)
10189 return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, (vector int)__b, __a);
10192 static int __ATTRS_o_ai
10193 vec_all_ge(vector unsigned int __a, vector unsigned int __b)
10195 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __b, __a);
10198 static int __ATTRS_o_ai
10199 vec_all_ge(vector unsigned int __a, vector bool int __b)
10201 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)__b, __a);
10204 static int __ATTRS_o_ai
10205 vec_all_ge(vector bool int __a, vector int __b)
10207 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ,
10208 (vector unsigned int)__b,
10209 (vector unsigned int)__a);
10212 static int __ATTRS_o_ai
10213 vec_all_ge(vector bool int __a, vector unsigned int __b)
10215 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __b, (vector unsigned int)__a);
10218 static int __ATTRS_o_ai
10219 vec_all_ge(vector bool int __a, vector bool int __b)
10221 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ,
10222 (vector unsigned int)__b,
10223 (vector unsigned int)__a);
10226 static int __ATTRS_o_ai
10227 vec_all_ge(vector float __a, vector float __b)
10229 return __builtin_altivec_vcmpgefp_p(__CR6_LT, __a, __b);
10234 static int __ATTRS_o_ai
10235 vec_all_gt(vector signed char __a, vector signed char __b)
10237 return __builtin_altivec_vcmpgtsb_p(__CR6_LT, __a, __b);
10240 static int __ATTRS_o_ai
10241 vec_all_gt(vector signed char __a, vector bool char __b)
10243 return __builtin_altivec_vcmpgtsb_p(__CR6_LT, __a, (vector signed char)__b);
10246 static int __ATTRS_o_ai
10247 vec_all_gt(vector unsigned char __a, vector unsigned char __b)
10249 return __builtin_altivec_vcmpgtub_p(__CR6_LT, __a, __b);
10252 static int __ATTRS_o_ai
10253 vec_all_gt(vector unsigned char __a, vector bool char __b)
10255 return __builtin_altivec_vcmpgtub_p(__CR6_LT, __a, (vector unsigned char)__b);
10258 static int __ATTRS_o_ai
10259 vec_all_gt(vector bool char __a, vector signed char __b)
10261 return __builtin_altivec_vcmpgtub_p(__CR6_LT,
10262 (vector unsigned char)__a,
10263 (vector unsigned char)__b);
10266 static int __ATTRS_o_ai
10267 vec_all_gt(vector bool char __a, vector unsigned char __b)
10269 return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)__a, __b);
10272 static int __ATTRS_o_ai
10273 vec_all_gt(vector bool char __a, vector bool char __b)
10275 return __builtin_altivec_vcmpgtub_p(__CR6_LT,
10276 (vector unsigned char)__a,
10277 (vector unsigned char)__b);
10280 static int __ATTRS_o_ai
10281 vec_all_gt(vector short __a, vector short __b)
10283 return __builtin_altivec_vcmpgtsh_p(__CR6_LT, __a, __b);
10286 static int __ATTRS_o_ai
10287 vec_all_gt(vector short __a, vector bool short __b)
10289 return __builtin_altivec_vcmpgtsh_p(__CR6_LT, __a, (vector short)__b);
10292 static int __ATTRS_o_ai
10293 vec_all_gt(vector unsigned short __a, vector unsigned short __b)
10295 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, __a, __b);
10298 static int __ATTRS_o_ai
10299 vec_all_gt(vector unsigned short __a, vector bool short __b)
10301 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, __a, (vector unsigned short)__b);
10304 static int __ATTRS_o_ai
10305 vec_all_gt(vector bool short __a, vector short __b)
10307 return __builtin_altivec_vcmpgtuh_p(__CR6_LT,
10308 (vector unsigned short)__a,
10309 (vector unsigned short)__b);
10312 static int __ATTRS_o_ai
10313 vec_all_gt(vector bool short __a, vector unsigned short __b)
10315 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)__a, __b);
10318 static int __ATTRS_o_ai
10319 vec_all_gt(vector bool short __a, vector bool short __b)
10321 return __builtin_altivec_vcmpgtuh_p(__CR6_LT,
10322 (vector unsigned short)__a,
10323 (vector unsigned short)__b);
10326 static int __ATTRS_o_ai
10327 vec_all_gt(vector int __a, vector int __b)
10329 return __builtin_altivec_vcmpgtsw_p(__CR6_LT, __a, __b);
10332 static int __ATTRS_o_ai
10333 vec_all_gt(vector int __a, vector bool int __b)
10335 return __builtin_altivec_vcmpgtsw_p(__CR6_LT, __a, (vector int)__b);
10338 static int __ATTRS_o_ai
10339 vec_all_gt(vector unsigned int __a, vector unsigned int __b)
10341 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __a, __b);
10344 static int __ATTRS_o_ai
10345 vec_all_gt(vector unsigned int __a, vector bool int __b)
10347 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __a, (vector unsigned int)__b);
10350 static int __ATTRS_o_ai
10351 vec_all_gt(vector bool int __a, vector int __b)
10353 return __builtin_altivec_vcmpgtuw_p(__CR6_LT,
10354 (vector unsigned int)__a,
10355 (vector unsigned int)__b);
10358 static int __ATTRS_o_ai
10359 vec_all_gt(vector bool int __a, vector unsigned int __b)
10361 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)__a, __b);
10364 static int __ATTRS_o_ai
10365 vec_all_gt(vector bool int __a, vector bool int __b)
10367 return __builtin_altivec_vcmpgtuw_p(__CR6_LT,
10368 (vector unsigned int)__a,
10369 (vector unsigned int)__b);
10372 static int __ATTRS_o_ai
10373 vec_all_gt(vector float __a, vector float __b)
10375 return __builtin_altivec_vcmpgtfp_p(__CR6_LT, __a, __b);
10380 static int __attribute__((__always_inline__))
10381 vec_all_in(vector float __a, vector float __b)
10383 return __builtin_altivec_vcmpbfp_p(__CR6_EQ, __a, __b);
10388 static int __ATTRS_o_ai
10389 vec_all_le(vector signed char __a, vector signed char __b)
10391 return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, __a, __b);
10394 static int __ATTRS_o_ai
10395 vec_all_le(vector signed char __a, vector bool char __b)
10397 return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, __a, (vector signed char)__b);
10400 static int __ATTRS_o_ai
10401 vec_all_le(vector unsigned char __a, vector unsigned char __b)
10403 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __a, __b);
10406 static int __ATTRS_o_ai
10407 vec_all_le(vector unsigned char __a, vector bool char __b)
10409 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __a, (vector unsigned char)__b);
10412 static int __ATTRS_o_ai
10413 vec_all_le(vector bool char __a, vector signed char __b)
10415 return __builtin_altivec_vcmpgtub_p(__CR6_EQ,
10416 (vector unsigned char)__a,
10417 (vector unsigned char)__b);
10420 static int __ATTRS_o_ai
10421 vec_all_le(vector bool char __a, vector unsigned char __b)
10423 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)__a, __b);
10426 static int __ATTRS_o_ai
10427 vec_all_le(vector bool char __a, vector bool char __b)
10429 return __builtin_altivec_vcmpgtub_p(__CR6_EQ,
10430 (vector unsigned char)__a,
10431 (vector unsigned char)__b);
10434 static int __ATTRS_o_ai
10435 vec_all_le(vector short __a, vector short __b)
10437 return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, __a, __b);
10440 static int __ATTRS_o_ai
10441 vec_all_le(vector short __a, vector bool short __b)
10443 return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, __a, (vector short)__b);
10446 static int __ATTRS_o_ai
10447 vec_all_le(vector unsigned short __a, vector unsigned short __b)
10449 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, __a, __b);
10452 static int __ATTRS_o_ai
10453 vec_all_le(vector unsigned short __a, vector bool short __b)
10455 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, __a, (vector unsigned short)__b);
10458 static int __ATTRS_o_ai
10459 vec_all_le(vector bool short __a, vector short __b)
10461 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ,
10462 (vector unsigned short)__a,
10463 (vector unsigned short)__b);
10466 static int __ATTRS_o_ai
10467 vec_all_le(vector bool short __a, vector unsigned short __b)
10469 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)__a, __b);
10472 static int __ATTRS_o_ai
10473 vec_all_le(vector bool short __a, vector bool short __b)
10475 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ,
10476 (vector unsigned short)__a,
10477 (vector unsigned short)__b);
10480 static int __ATTRS_o_ai
10481 vec_all_le(vector int __a, vector int __b)
10483 return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, __a, __b);
10486 static int __ATTRS_o_ai
10487 vec_all_le(vector int __a, vector bool int __b)
10489 return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, __a, (vector int)__b);
10492 static int __ATTRS_o_ai
10493 vec_all_le(vector unsigned int __a, vector unsigned int __b)
10495 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __a, __b);
10498 static int __ATTRS_o_ai
10499 vec_all_le(vector unsigned int __a, vector bool int __b)
10501 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __a, (vector unsigned int)__b);
10504 static int __ATTRS_o_ai
10505 vec_all_le(vector bool int __a, vector int __b)
10507 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ,
10508 (vector unsigned int)__a,
10509 (vector unsigned int)__b);
10512 static int __ATTRS_o_ai
10513 vec_all_le(vector bool int __a, vector unsigned int __b)
10515 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)__a, __b);
10518 static int __ATTRS_o_ai
10519 vec_all_le(vector bool int __a, vector bool int __b)
10521 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ,
10522 (vector unsigned int)__a,
10523 (vector unsigned int)__b);
10526 static int __ATTRS_o_ai
10527 vec_all_le(vector float __a, vector float __b)
10529 return __builtin_altivec_vcmpgefp_p(__CR6_LT, __b, __a);
10534 static int __ATTRS_o_ai
10535 vec_all_lt(vector signed char __a, vector signed char __b)
10537 return __builtin_altivec_vcmpgtsb_p(__CR6_LT, __b, __a);
10540 static int __ATTRS_o_ai
10541 vec_all_lt(vector signed char __a, vector bool char __b)
10543 return __builtin_altivec_vcmpgtsb_p(__CR6_LT, (vector signed char)__b, __a);
10546 static int __ATTRS_o_ai
10547 vec_all_lt(vector unsigned char __a, vector unsigned char __b)
10549 return __builtin_altivec_vcmpgtub_p(__CR6_LT, __b, __a);
10552 static int __ATTRS_o_ai
10553 vec_all_lt(vector unsigned char __a, vector bool char __b)
10555 return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)__b, __a);
10558 static int __ATTRS_o_ai
10559 vec_all_lt(vector bool char __a, vector signed char __b)
10561 return __builtin_altivec_vcmpgtub_p(__CR6_LT,
10562 (vector unsigned char)__b,
10563 (vector unsigned char)__a);
10566 static int __ATTRS_o_ai
10567 vec_all_lt(vector bool char __a, vector unsigned char __b)
10569 return __builtin_altivec_vcmpgtub_p(__CR6_LT, __b, (vector unsigned char)__a);
10572 static int __ATTRS_o_ai
10573 vec_all_lt(vector bool char __a, vector bool char __b)
10575 return __builtin_altivec_vcmpgtub_p(__CR6_LT,
10576 (vector unsigned char)__b,
10577 (vector unsigned char)__a);
10580 static int __ATTRS_o_ai
10581 vec_all_lt(vector short __a, vector short __b)
10583 return __builtin_altivec_vcmpgtsh_p(__CR6_LT, __b, __a);
10586 static int __ATTRS_o_ai
10587 vec_all_lt(vector short __a, vector bool short __b)
10589 return __builtin_altivec_vcmpgtsh_p(__CR6_LT, (vector short)__b, __a);
10592 static int __ATTRS_o_ai
10593 vec_all_lt(vector unsigned short __a, vector unsigned short __b)
10595 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, __b, __a);
10598 static int __ATTRS_o_ai
10599 vec_all_lt(vector unsigned short __a, vector bool short __b)
10601 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)__b, __a);
10604 static int __ATTRS_o_ai
10605 vec_all_lt(vector bool short __a, vector short __b)
10607 return __builtin_altivec_vcmpgtuh_p(__CR6_LT,
10608 (vector unsigned short)__b,
10609 (vector unsigned short)__a);
10612 static int __ATTRS_o_ai
10613 vec_all_lt(vector bool short __a, vector unsigned short __b)
10615 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, __b, (vector unsigned short)__a);
10618 static int __ATTRS_o_ai
10619 vec_all_lt(vector bool short __a, vector bool short __b)
10621 return __builtin_altivec_vcmpgtuh_p(__CR6_LT,
10622 (vector unsigned short)__b,
10623 (vector unsigned short)__a);
10626 static int __ATTRS_o_ai
10627 vec_all_lt(vector int __a, vector int __b)
10629 return __builtin_altivec_vcmpgtsw_p(__CR6_LT, __b, __a);
10632 static int __ATTRS_o_ai
10633 vec_all_lt(vector int __a, vector bool int __b)
10635 return __builtin_altivec_vcmpgtsw_p(__CR6_LT, (vector int)__b, __a);
10638 static int __ATTRS_o_ai
10639 vec_all_lt(vector unsigned int __a, vector unsigned int __b)
10641 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __b, __a);
10644 static int __ATTRS_o_ai
10645 vec_all_lt(vector unsigned int __a, vector bool int __b)
10647 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)__b, __a);
10650 static int __ATTRS_o_ai
10651 vec_all_lt(vector bool int __a, vector int __b)
10653 return __builtin_altivec_vcmpgtuw_p(__CR6_LT,
10654 (vector unsigned int)__b,
10655 (vector unsigned int)__a);
10658 static int __ATTRS_o_ai
10659 vec_all_lt(vector bool int __a, vector unsigned int __b)
10661 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __b, (vector unsigned int)__a);
10664 static int __ATTRS_o_ai
10665 vec_all_lt(vector bool int __a, vector bool int __b)
10667 return __builtin_altivec_vcmpgtuw_p(__CR6_LT,
10668 (vector unsigned int)__b,
10669 (vector unsigned int)__a);
10672 static int __ATTRS_o_ai
10673 vec_all_lt(vector float __a, vector float __b)
10675 return __builtin_altivec_vcmpgtfp_p(__CR6_LT, __b, __a);
10680 static int __attribute__((__always_inline__))
10681 vec_all_nan(vector float __a)
10683 return __builtin_altivec_vcmpeqfp_p(__CR6_EQ, __a, __a);
10688 static int __ATTRS_o_ai
10689 vec_all_ne(vector signed char __a, vector signed char __b)
10691 return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b);
10694 static int __ATTRS_o_ai
10695 vec_all_ne(vector signed char __a, vector bool char __b)
10697 return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b);
10700 static int __ATTRS_o_ai
10701 vec_all_ne(vector unsigned char __a, vector unsigned char __b)
10703 return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b);
10706 static int __ATTRS_o_ai
10707 vec_all_ne(vector unsigned char __a, vector bool char __b)
10709 return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b);
10712 static int __ATTRS_o_ai
10713 vec_all_ne(vector bool char __a, vector signed char __b)
10715 return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b);
10718 static int __ATTRS_o_ai
10719 vec_all_ne(vector bool char __a, vector unsigned char __b)
10721 return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b);
10724 static int __ATTRS_o_ai
10725 vec_all_ne(vector bool char __a, vector bool char __b)
10727 return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b);
10730 static int __ATTRS_o_ai
10731 vec_all_ne(vector short __a, vector short __b)
10733 return __builtin_altivec_vcmpequh_p(__CR6_EQ, __a, __b);
10736 static int __ATTRS_o_ai
10737 vec_all_ne(vector short __a, vector bool short __b)
10739 return __builtin_altivec_vcmpequh_p(__CR6_EQ, __a, (vector short)__b);
10742 static int __ATTRS_o_ai
10743 vec_all_ne(vector unsigned short __a, vector unsigned short __b)
10746 __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b);
10749 static int __ATTRS_o_ai
10750 vec_all_ne(vector unsigned short __a, vector bool short __b)
10753 __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b);
10756 static int __ATTRS_o_ai
10757 vec_all_ne(vector bool short __a, vector short __b)
10760 __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b);
10763 static int __ATTRS_o_ai
10764 vec_all_ne(vector bool short __a, vector unsigned short __b)
10767 __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b);
10770 static int __ATTRS_o_ai
10771 vec_all_ne(vector bool short __a, vector bool short __b)
10774 __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b);
10777 static int __ATTRS_o_ai
10778 vec_all_ne(vector pixel __a, vector pixel __b)
10781 __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b);
10784 static int __ATTRS_o_ai
10785 vec_all_ne(vector int __a, vector int __b)
10787 return __builtin_altivec_vcmpequw_p(__CR6_EQ, __a, __b);
10790 static int __ATTRS_o_ai
10791 vec_all_ne(vector int __a, vector bool int __b)
10793 return __builtin_altivec_vcmpequw_p(__CR6_EQ, __a, (vector int)__b);
10796 static int __ATTRS_o_ai
10797 vec_all_ne(vector unsigned int __a, vector unsigned int __b)
10799 return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b);
10802 static int __ATTRS_o_ai
10803 vec_all_ne(vector unsigned int __a, vector bool int __b)
10805 return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b);
10808 static int __ATTRS_o_ai
10809 vec_all_ne(vector bool int __a, vector int __b)
10811 return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b);
10814 static int __ATTRS_o_ai
10815 vec_all_ne(vector bool int __a, vector unsigned int __b)
10817 return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b);
10820 static int __ATTRS_o_ai
10821 vec_all_ne(vector bool int __a, vector bool int __b)
10823 return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b);
10826 static int __ATTRS_o_ai
10827 vec_all_ne(vector float __a, vector float __b)
10829 return __builtin_altivec_vcmpeqfp_p(__CR6_EQ, __a, __b);
10834 static int __attribute__((__always_inline__))
10835 vec_all_nge(vector float __a, vector float __b)
10837 return __builtin_altivec_vcmpgefp_p(__CR6_EQ, __a, __b);
10842 static int __attribute__((__always_inline__))
10843 vec_all_ngt(vector float __a, vector float __b)
10845 return __builtin_altivec_vcmpgtfp_p(__CR6_EQ, __a, __b);
10850 static int __attribute__((__always_inline__))
10851 vec_all_nle(vector float __a, vector float __b)
10853 return __builtin_altivec_vcmpgefp_p(__CR6_EQ, __b, __a);
10858 static int __attribute__((__always_inline__))
10859 vec_all_nlt(vector float __a, vector float __b)
10861 return __builtin_altivec_vcmpgtfp_p(__CR6_EQ, __b, __a);
10864 /* vec_all_numeric */
10866 static int __attribute__((__always_inline__))
10867 vec_all_numeric(vector float __a)
10869 return __builtin_altivec_vcmpeqfp_p(__CR6_LT, __a, __a);
10874 static int __ATTRS_o_ai
10875 vec_any_eq(vector signed char __a, vector signed char __b)
10878 __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b);
10881 static int __ATTRS_o_ai
10882 vec_any_eq(vector signed char __a, vector bool char __b)
10885 __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b);
10888 static int __ATTRS_o_ai
10889 vec_any_eq(vector unsigned char __a, vector unsigned char __b)
10892 __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b);
10895 static int __ATTRS_o_ai
10896 vec_any_eq(vector unsigned char __a, vector bool char __b)
10899 __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b);
10902 static int __ATTRS_o_ai
10903 vec_any_eq(vector bool char __a, vector signed char __b)
10906 __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b);
10909 static int __ATTRS_o_ai
10910 vec_any_eq(vector bool char __a, vector unsigned char __b)
10913 __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b);
10916 static int __ATTRS_o_ai
10917 vec_any_eq(vector bool char __a, vector bool char __b)
10920 __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b);
10923 static int __ATTRS_o_ai
10924 vec_any_eq(vector short __a, vector short __b)
10926 return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, __a, __b);
10929 static int __ATTRS_o_ai
10930 vec_any_eq(vector short __a, vector bool short __b)
10932 return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, __a, (vector short)__b);
10935 static int __ATTRS_o_ai
10936 vec_any_eq(vector unsigned short __a, vector unsigned short __b)
10938 return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
10940 (vector short)__b);
10943 static int __ATTRS_o_ai
10944 vec_any_eq(vector unsigned short __a, vector bool short __b)
10946 return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
10948 (vector short)__b);
10951 static int __ATTRS_o_ai
10952 vec_any_eq(vector bool short __a, vector short __b)
10954 return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
10956 (vector short)__b);
10959 static int __ATTRS_o_ai
10960 vec_any_eq(vector bool short __a, vector unsigned short __b)
10962 return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
10964 (vector short)__b);
10967 static int __ATTRS_o_ai
10968 vec_any_eq(vector bool short __a, vector bool short __b)
10970 return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
10972 (vector short)__b);
10975 static int __ATTRS_o_ai
10976 vec_any_eq(vector pixel __a, vector pixel __b)
10978 return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
10980 (vector short)__b);
10983 static int __ATTRS_o_ai
10984 vec_any_eq(vector int __a, vector int __b)
10986 return __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, __a, __b);
10989 static int __ATTRS_o_ai
10990 vec_any_eq(vector int __a, vector bool int __b)
10992 return __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, __a, (vector int)__b);
10995 static int __ATTRS_o_ai
10996 vec_any_eq(vector unsigned int __a, vector unsigned int __b)
10999 __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b);
11002 static int __ATTRS_o_ai
11003 vec_any_eq(vector unsigned int __a, vector bool int __b)
11006 __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b);
11009 static int __ATTRS_o_ai
11010 vec_any_eq(vector bool int __a, vector int __b)
11013 __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b);
11016 static int __ATTRS_o_ai
11017 vec_any_eq(vector bool int __a, vector unsigned int __b)
11020 __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b);
11023 static int __ATTRS_o_ai
11024 vec_any_eq(vector bool int __a, vector bool int __b)
11027 __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b);
11030 static int __ATTRS_o_ai
11031 vec_any_eq(vector float __a, vector float __b)
11033 return __builtin_altivec_vcmpeqfp_p(__CR6_EQ_REV, __a, __b);
11038 static int __ATTRS_o_ai
11039 vec_any_ge(vector signed char __a, vector signed char __b)
11041 return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, __b, __a);
11044 static int __ATTRS_o_ai
11045 vec_any_ge(vector signed char __a, vector bool char __b)
11047 return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, (vector signed char)__b, __a);
11050 static int __ATTRS_o_ai
11051 vec_any_ge(vector unsigned char __a, vector unsigned char __b)
11053 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, __b, __a);
11056 static int __ATTRS_o_ai
11057 vec_any_ge(vector unsigned char __a, vector bool char __b)
11059 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)__b, __a);
11062 static int __ATTRS_o_ai
11063 vec_any_ge(vector bool char __a, vector signed char __b)
11065 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV,
11066 (vector unsigned char)__b,
11067 (vector unsigned char)__a);
11070 static int __ATTRS_o_ai
11071 vec_any_ge(vector bool char __a, vector unsigned char __b)
11073 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, __b, (vector unsigned char)__a);
11076 static int __ATTRS_o_ai
11077 vec_any_ge(vector bool char __a, vector bool char __b)
11079 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV,
11080 (vector unsigned char)__b,
11081 (vector unsigned char)__a);
11084 static int __ATTRS_o_ai
11085 vec_any_ge(vector short __a, vector short __b)
11087 return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, __b, __a);
11090 static int __ATTRS_o_ai
11091 vec_any_ge(vector short __a, vector bool short __b)
11093 return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, (vector short)__b, __a);
11096 static int __ATTRS_o_ai
11097 vec_any_ge(vector unsigned short __a, vector unsigned short __b)
11099 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, __b, __a);
11102 static int __ATTRS_o_ai
11103 vec_any_ge(vector unsigned short __a, vector bool short __b)
11106 __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)__b, __a);
11109 static int __ATTRS_o_ai
11110 vec_any_ge(vector bool short __a, vector short __b)
11112 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV,
11113 (vector unsigned short)__b,
11114 (vector unsigned short)__a);
11117 static int __ATTRS_o_ai
11118 vec_any_ge(vector bool short __a, vector unsigned short __b)
11121 __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, __b, (vector unsigned short)__a);
11124 static int __ATTRS_o_ai
11125 vec_any_ge(vector bool short __a, vector bool short __b)
11127 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV,
11128 (vector unsigned short)__b,
11129 (vector unsigned short)__a);
11132 static int __ATTRS_o_ai
11133 vec_any_ge(vector int __a, vector int __b)
11135 return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, __b, __a);
11138 static int __ATTRS_o_ai
11139 vec_any_ge(vector int __a, vector bool int __b)
11141 return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, (vector int)__b, __a);
11144 static int __ATTRS_o_ai
11145 vec_any_ge(vector unsigned int __a, vector unsigned int __b)
11147 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, __b, __a);
11150 static int __ATTRS_o_ai
11151 vec_any_ge(vector unsigned int __a, vector bool int __b)
11153 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)__b, __a);
11156 static int __ATTRS_o_ai
11157 vec_any_ge(vector bool int __a, vector int __b)
11159 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV,
11160 (vector unsigned int)__b,
11161 (vector unsigned int)__a);
11164 static int __ATTRS_o_ai
11165 vec_any_ge(vector bool int __a, vector unsigned int __b)
11167 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, __b, (vector unsigned int)__a);
11170 static int __ATTRS_o_ai
11171 vec_any_ge(vector bool int __a, vector bool int __b)
11173 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV,
11174 (vector unsigned int)__b,
11175 (vector unsigned int)__a);
11178 static int __ATTRS_o_ai
11179 vec_any_ge(vector float __a, vector float __b)
11181 return __builtin_altivec_vcmpgefp_p(__CR6_EQ_REV, __a, __b);
11186 static int __ATTRS_o_ai
11187 vec_any_gt(vector signed char __a, vector signed char __b)
11189 return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, __a, __b);
11192 static int __ATTRS_o_ai
11193 vec_any_gt(vector signed char __a, vector bool char __b)
11195 return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, __a, (vector signed char)__b);
11198 static int __ATTRS_o_ai
11199 vec_any_gt(vector unsigned char __a, vector unsigned char __b)
11201 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, __a, __b);
11204 static int __ATTRS_o_ai
11205 vec_any_gt(vector unsigned char __a, vector bool char __b)
11208 __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, __a, (vector unsigned char)__b);
11211 static int __ATTRS_o_ai
11212 vec_any_gt(vector bool char __a, vector signed char __b)
11214 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV,
11215 (vector unsigned char)__a,
11216 (vector unsigned char)__b);
11219 static int __ATTRS_o_ai
11220 vec_any_gt(vector bool char __a, vector unsigned char __b)
11223 __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)__a, __b);
11226 static int __ATTRS_o_ai
11227 vec_any_gt(vector bool char __a, vector bool char __b)
11229 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV,
11230 (vector unsigned char)__a,
11231 (vector unsigned char)__b);
11234 static int __ATTRS_o_ai
11235 vec_any_gt(vector short __a, vector short __b)
11237 return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, __a, __b);
11240 static int __ATTRS_o_ai
11241 vec_any_gt(vector short __a, vector bool short __b)
11243 return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, __a, (vector short)__b);
11246 static int __ATTRS_o_ai
11247 vec_any_gt(vector unsigned short __a, vector unsigned short __b)
11249 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, __a, __b);
11252 static int __ATTRS_o_ai
11253 vec_any_gt(vector unsigned short __a, vector bool short __b)
11256 __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, __a, (vector unsigned short)__b);
11259 static int __ATTRS_o_ai
11260 vec_any_gt(vector bool short __a, vector short __b)
11262 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV,
11263 (vector unsigned short)__a,
11264 (vector unsigned short)__b);
11267 static int __ATTRS_o_ai
11268 vec_any_gt(vector bool short __a, vector unsigned short __b)
11271 __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)__a, __b);
11274 static int __ATTRS_o_ai
11275 vec_any_gt(vector bool short __a, vector bool short __b)
11277 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV,
11278 (vector unsigned short)__a,
11279 (vector unsigned short)__b);
11282 static int __ATTRS_o_ai
11283 vec_any_gt(vector int __a, vector int __b)
11285 return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, __a, __b);
11288 static int __ATTRS_o_ai
11289 vec_any_gt(vector int __a, vector bool int __b)
11291 return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, __a, (vector int)__b);
11294 static int __ATTRS_o_ai
11295 vec_any_gt(vector unsigned int __a, vector unsigned int __b)
11297 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, __a, __b);
11300 static int __ATTRS_o_ai
11301 vec_any_gt(vector unsigned int __a, vector bool int __b)
11303 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, __a, (vector unsigned int)__b);
11306 static int __ATTRS_o_ai
11307 vec_any_gt(vector bool int __a, vector int __b)
11309 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV,
11310 (vector unsigned int)__a,
11311 (vector unsigned int)__b);
11314 static int __ATTRS_o_ai
11315 vec_any_gt(vector bool int __a, vector unsigned int __b)
11317 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)__a, __b);
11320 static int __ATTRS_o_ai
11321 vec_any_gt(vector bool int __a, vector bool int __b)
11323 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV,
11324 (vector unsigned int)__a,
11325 (vector unsigned int)__b);
11328 static int __ATTRS_o_ai
11329 vec_any_gt(vector float __a, vector float __b)
11331 return __builtin_altivec_vcmpgtfp_p(__CR6_EQ_REV, __a, __b);
11336 static int __ATTRS_o_ai
11337 vec_any_le(vector signed char __a, vector signed char __b)
11339 return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, __a, __b);
11342 static int __ATTRS_o_ai
11343 vec_any_le(vector signed char __a, vector bool char __b)
11345 return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, __a, (vector signed char)__b);
11348 static int __ATTRS_o_ai
11349 vec_any_le(vector unsigned char __a, vector unsigned char __b)
11351 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, __a, __b);
11354 static int __ATTRS_o_ai
11355 vec_any_le(vector unsigned char __a, vector bool char __b)
11358 __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, __a, (vector unsigned char)__b);
11361 static int __ATTRS_o_ai
11362 vec_any_le(vector bool char __a, vector signed char __b)
11364 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV,
11365 (vector unsigned char)__a,
11366 (vector unsigned char)__b);
11369 static int __ATTRS_o_ai
11370 vec_any_le(vector bool char __a, vector unsigned char __b)
11373 __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)__a, __b);
11376 static int __ATTRS_o_ai
11377 vec_any_le(vector bool char __a, vector bool char __b)
11379 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV,
11380 (vector unsigned char)__a,
11381 (vector unsigned char)__b);
11384 static int __ATTRS_o_ai
11385 vec_any_le(vector short __a, vector short __b)
11387 return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, __a, __b);
11390 static int __ATTRS_o_ai
11391 vec_any_le(vector short __a, vector bool short __b)
11393 return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, __a, (vector short)__b);
11396 static int __ATTRS_o_ai
11397 vec_any_le(vector unsigned short __a, vector unsigned short __b)
11399 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, __a, __b);
11402 static int __ATTRS_o_ai
11403 vec_any_le(vector unsigned short __a, vector bool short __b)
11406 __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, __a, (vector unsigned short)__b);
11409 static int __ATTRS_o_ai
11410 vec_any_le(vector bool short __a, vector short __b)
11412 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV,
11413 (vector unsigned short)__a,
11414 (vector unsigned short)__b);
11417 static int __ATTRS_o_ai
11418 vec_any_le(vector bool short __a, vector unsigned short __b)
11421 __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)__a, __b);
11424 static int __ATTRS_o_ai
11425 vec_any_le(vector bool short __a, vector bool short __b)
11427 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV,
11428 (vector unsigned short)__a,
11429 (vector unsigned short)__b);
11432 static int __ATTRS_o_ai
11433 vec_any_le(vector int __a, vector int __b)
11435 return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, __a, __b);
11438 static int __ATTRS_o_ai
11439 vec_any_le(vector int __a, vector bool int __b)
11441 return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, __a, (vector int)__b);
11444 static int __ATTRS_o_ai
11445 vec_any_le(vector unsigned int __a, vector unsigned int __b)
11447 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, __a, __b);
11450 static int __ATTRS_o_ai
11451 vec_any_le(vector unsigned int __a, vector bool int __b)
11453 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, __a, (vector unsigned int)__b);
11456 static int __ATTRS_o_ai
11457 vec_any_le(vector bool int __a, vector int __b)
11459 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV,
11460 (vector unsigned int)__a,
11461 (vector unsigned int)__b);
11464 static int __ATTRS_o_ai
11465 vec_any_le(vector bool int __a, vector unsigned int __b)
11467 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)__a, __b);
11470 static int __ATTRS_o_ai
11471 vec_any_le(vector bool int __a, vector bool int __b)
11473 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV,
11474 (vector unsigned int)__a,
11475 (vector unsigned int)__b);
11478 static int __ATTRS_o_ai
11479 vec_any_le(vector float __a, vector float __b)
11481 return __builtin_altivec_vcmpgefp_p(__CR6_EQ_REV, __b, __a);
11486 static int __ATTRS_o_ai
11487 vec_any_lt(vector signed char __a, vector signed char __b)
11489 return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, __b, __a);
11492 static int __ATTRS_o_ai
11493 vec_any_lt(vector signed char __a, vector bool char __b)
11495 return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, (vector signed char)__b, __a);
11498 static int __ATTRS_o_ai
11499 vec_any_lt(vector unsigned char __a, vector unsigned char __b)
11501 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, __b, __a);
11504 static int __ATTRS_o_ai
11505 vec_any_lt(vector unsigned char __a, vector bool char __b)
11508 __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)__b, __a);
11511 static int __ATTRS_o_ai
11512 vec_any_lt(vector bool char __a, vector signed char __b)
11514 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV,
11515 (vector unsigned char)__b,
11516 (vector unsigned char)__a);
11519 static int __ATTRS_o_ai
11520 vec_any_lt(vector bool char __a, vector unsigned char __b)
11523 __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, __b, (vector unsigned char)__a);
11526 static int __ATTRS_o_ai
11527 vec_any_lt(vector bool char __a, vector bool char __b)
11529 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV,
11530 (vector unsigned char)__b,
11531 (vector unsigned char)__a);
11534 static int __ATTRS_o_ai
11535 vec_any_lt(vector short __a, vector short __b)
11537 return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, __b, __a);
11540 static int __ATTRS_o_ai
11541 vec_any_lt(vector short __a, vector bool short __b)
11543 return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, (vector short)__b, __a);
11546 static int __ATTRS_o_ai
11547 vec_any_lt(vector unsigned short __a, vector unsigned short __b)
11549 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, __b, __a);
11552 static int __ATTRS_o_ai
11553 vec_any_lt(vector unsigned short __a, vector bool short __b)
11556 __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)__b, __a);
11559 static int __ATTRS_o_ai
11560 vec_any_lt(vector bool short __a, vector short __b)
11562 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV,
11563 (vector unsigned short)__b,
11564 (vector unsigned short)__a);
11567 static int __ATTRS_o_ai
11568 vec_any_lt(vector bool short __a, vector unsigned short __b)
11571 __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, __b, (vector unsigned short)__a);
11574 static int __ATTRS_o_ai
11575 vec_any_lt(vector bool short __a, vector bool short __b)
11577 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV,
11578 (vector unsigned short)__b,
11579 (vector unsigned short)__a);
11582 static int __ATTRS_o_ai
11583 vec_any_lt(vector int __a, vector int __b)
11585 return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, __b, __a);
11588 static int __ATTRS_o_ai
11589 vec_any_lt(vector int __a, vector bool int __b)
11591 return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, (vector int)__b, __a);
11594 static int __ATTRS_o_ai
11595 vec_any_lt(vector unsigned int __a, vector unsigned int __b)
11597 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, __b, __a);
11600 static int __ATTRS_o_ai
11601 vec_any_lt(vector unsigned int __a, vector bool int __b)
11603 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)__b, __a);
11606 static int __ATTRS_o_ai
11607 vec_any_lt(vector bool int __a, vector int __b)
11609 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV,
11610 (vector unsigned int)__b,
11611 (vector unsigned int)__a);
11614 static int __ATTRS_o_ai
11615 vec_any_lt(vector bool int __a, vector unsigned int __b)
11617 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, __b, (vector unsigned int)__a);
11620 static int __ATTRS_o_ai
11621 vec_any_lt(vector bool int __a, vector bool int __b)
11623 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV,
11624 (vector unsigned int)__b,
11625 (vector unsigned int)__a);
11628 static int __ATTRS_o_ai
11629 vec_any_lt(vector float __a, vector float __b)
11631 return __builtin_altivec_vcmpgtfp_p(__CR6_EQ_REV, __b, __a);
11636 static int __attribute__((__always_inline__))
11637 vec_any_nan(vector float __a)
11639 return __builtin_altivec_vcmpeqfp_p(__CR6_LT_REV, __a, __a);
11644 static int __ATTRS_o_ai
11645 vec_any_ne(vector signed char __a, vector signed char __b)
11648 __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b);
11651 static int __ATTRS_o_ai
11652 vec_any_ne(vector signed char __a, vector bool char __b)
11655 __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b);
11658 static int __ATTRS_o_ai
11659 vec_any_ne(vector unsigned char __a, vector unsigned char __b)
11662 __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b);
11665 static int __ATTRS_o_ai
11666 vec_any_ne(vector unsigned char __a, vector bool char __b)
11669 __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b);
11672 static int __ATTRS_o_ai
11673 vec_any_ne(vector bool char __a, vector signed char __b)
11676 __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b);
11679 static int __ATTRS_o_ai
11680 vec_any_ne(vector bool char __a, vector unsigned char __b)
11683 __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b);
11686 static int __ATTRS_o_ai
11687 vec_any_ne(vector bool char __a, vector bool char __b)
11690 __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b);
11693 static int __ATTRS_o_ai
11694 vec_any_ne(vector short __a, vector short __b)
11696 return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, __a, __b);
11699 static int __ATTRS_o_ai
11700 vec_any_ne(vector short __a, vector bool short __b)
11702 return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, __a, (vector short)__b);
11705 static int __ATTRS_o_ai
11706 vec_any_ne(vector unsigned short __a, vector unsigned short __b)
11708 return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
11710 (vector short)__b);
11713 static int __ATTRS_o_ai
11714 vec_any_ne(vector unsigned short __a, vector bool short __b)
11716 return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
11718 (vector short)__b);
11721 static int __ATTRS_o_ai
11722 vec_any_ne(vector bool short __a, vector short __b)
11724 return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
11726 (vector short)__b);
11729 static int __ATTRS_o_ai
11730 vec_any_ne(vector bool short __a, vector unsigned short __b)
11732 return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
11734 (vector short)__b);
11737 static int __ATTRS_o_ai
11738 vec_any_ne(vector bool short __a, vector bool short __b)
11740 return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
11742 (vector short)__b);
11745 static int __ATTRS_o_ai
11746 vec_any_ne(vector pixel __a, vector pixel __b)
11748 return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
11750 (vector short)__b);
11753 static int __ATTRS_o_ai
11754 vec_any_ne(vector int __a, vector int __b)
11756 return __builtin_altivec_vcmpequw_p(__CR6_LT_REV, __a, __b);
11759 static int __ATTRS_o_ai
11760 vec_any_ne(vector int __a, vector bool int __b)
11762 return __builtin_altivec_vcmpequw_p(__CR6_LT_REV, __a, (vector int)__b);
11765 static int __ATTRS_o_ai
11766 vec_any_ne(vector unsigned int __a, vector unsigned int __b)
11769 __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b);
11772 static int __ATTRS_o_ai
11773 vec_any_ne(vector unsigned int __a, vector bool int __b)
11776 __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b);
11779 static int __ATTRS_o_ai
11780 vec_any_ne(vector bool int __a, vector int __b)
11783 __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b);
11786 static int __ATTRS_o_ai
11787 vec_any_ne(vector bool int __a, vector unsigned int __b)
11790 __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b);
11793 static int __ATTRS_o_ai
11794 vec_any_ne(vector bool int __a, vector bool int __b)
11797 __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b);
11800 static int __ATTRS_o_ai
11801 vec_any_ne(vector float __a, vector float __b)
11803 return __builtin_altivec_vcmpeqfp_p(__CR6_LT_REV, __a, __b);
11808 static int __attribute__((__always_inline__))
11809 vec_any_nge(vector float __a, vector float __b)
11811 return __builtin_altivec_vcmpgefp_p(__CR6_LT_REV, __a, __b);
11816 static int __attribute__((__always_inline__))
11817 vec_any_ngt(vector float __a, vector float __b)
11819 return __builtin_altivec_vcmpgtfp_p(__CR6_LT_REV, __a, __b);
11824 static int __attribute__((__always_inline__))
11825 vec_any_nle(vector float __a, vector float __b)
11827 return __builtin_altivec_vcmpgefp_p(__CR6_LT_REV, __b, __a);
11832 static int __attribute__((__always_inline__))
11833 vec_any_nlt(vector float __a, vector float __b)
11835 return __builtin_altivec_vcmpgtfp_p(__CR6_LT_REV, __b, __a);
11838 /* vec_any_numeric */
11840 static int __attribute__((__always_inline__))
11841 vec_any_numeric(vector float __a)
11843 return __builtin_altivec_vcmpeqfp_p(__CR6_EQ_REV, __a, __a);
11848 static int __attribute__((__always_inline__))
11849 vec_any_out(vector float __a, vector float __b)
11851 return __builtin_altivec_vcmpbfp_p(__CR6_EQ_REV, __a, __b);
11854 #undef __ATTRS_o_ai
11856 #endif /* __ALTIVEC_H */