Lines Matching full:unsigned

51     vector signed char __a, vector signed char __b, vector unsigned char __c);
53 static __inline__ vector unsigned char __ATTRS_o_ai
54 vec_perm(vector unsigned char __a, vector unsigned char __b,
55 vector unsigned char __c);
58 vec_perm(vector bool char __a, vector bool char __b, vector unsigned char __c);
62 vector unsigned char __c);
64 static __inline__ vector unsigned short __ATTRS_o_ai
65 vec_perm(vector unsigned short __a, vector unsigned short __b,
66 vector unsigned char __c);
69 vector bool short __a, vector bool short __b, vector unsigned char __c);
73 vector unsigned char __c);
77 vector unsigned char __c);
79 static __inline__ vector unsigned int __ATTRS_o_ai vec_perm(
80 vector unsigned int __a, vector unsigned int __b, vector unsigned char __c);
83 vec_perm(vector bool int __a, vector bool int __b, vector unsigned char __c);
87 vector unsigned char __c);
92 vector unsigned char __c);
94 static __inline__ vector unsigned long long __ATTRS_o_ai
95 vec_perm(vector unsigned long long __a, vector unsigned long long __b,
96 vector unsigned char __c);
100 vector unsigned char __c);
104 vector unsigned char __c);
107 static __inline__ vector unsigned char __ATTRS_o_ai
108 vec_xor(vector unsigned char __a, vector unsigned char __b);
142 vector unsigned int __res =
143 (vector unsigned int)__a & (vector unsigned int)(0x7FFFFFFF);
180 static __inline__ vector unsigned char __ATTRS_o_ai
181 vec_absd(vector unsigned char __a, vector unsigned char __b) {
185 static __inline__ vector unsigned short __ATTRS_o_ai
186 vec_absd(vector unsigned short __a, vector unsigned short __b) {
190 static __inline__ vector unsigned int __ATTRS_o_ai
191 vec_absd(vector unsigned int __a, vector unsigned int __b) {
214 static __inline__ vector unsigned char __ATTRS_o_ai
215 vec_add(vector unsigned char __a, vector unsigned char __b) {
219 static __inline__ vector unsigned char __ATTRS_o_ai
220 vec_add(vector bool char __a, vector unsigned char __b) {
221 return (vector unsigned char)__a + __b;
224 static __inline__ vector unsigned char __ATTRS_o_ai
225 vec_add(vector unsigned char __a, vector bool char __b) {
226 return __a + (vector unsigned char)__b;
244 static __inline__ vector unsigned short __ATTRS_o_ai
245 vec_add(vector unsigned short __a, vector unsigned short __b) {
249 static __inline__ vector unsigned short __ATTRS_o_ai
250 vec_add(vector bool short __a, vector unsigned short __b) {
251 return (vector unsigned short)__a + __b;
254 static __inline__ vector unsigned short __ATTRS_o_ai
255 vec_add(vector unsigned short __a, vector bool short __b) {
256 return __a + (vector unsigned short)__b;
274 static __inline__ vector unsigned int __ATTRS_o_ai
275 vec_add(vector unsigned int __a, vector unsigned int __b) {
279 static __inline__ vector unsigned int __ATTRS_o_ai
280 vec_add(vector bool int __a, vector unsigned int __b) {
281 return (vector unsigned int)__a + __b;
284 static __inline__ vector unsigned int __ATTRS_o_ai
285 vec_add(vector unsigned int __a, vector bool int __b) {
286 return __a + (vector unsigned int)__b;
295 static __inline__ vector unsigned long long __ATTRS_o_ai
296 vec_add(vector unsigned long long __a, vector unsigned long long __b) {
306 static __inline__ vector unsigned __int128 __ATTRS_o_ai
307 vec_add(vector unsigned __int128 __a, vector unsigned __int128 __b) {
312 static __inline__ vector unsigned char __attribute__((__always_inline__))
313 vec_add_u128(vector unsigned char __a, vector unsigned char __b) {
314 return (vector unsigned char)__builtin_altivec_vadduqm(__a, __b);
324 vector unsigned int __res =
325 (vector unsigned int)__a + (vector unsigned int)__b;
326 vector unsigned int __carry = __builtin_altivec_vaddcuw(
327 (vector unsigned int)__a, (vector unsigned int)__b);
328 __carry = (vector unsigned int)__builtin_shufflevector(
329 (vector unsigned char)__carry, (vector unsigned char)__carry, 0, 0, 0, 7,
335 static __inline__ vector unsigned long long __ATTRS_o_ai
336 vec_add(vector unsigned long long __a, vector unsigned long long __b) {
337 return (vector unsigned long long)vec_add((vector signed long long)__a,
362 (vector unsigned __int128)__a, (vector unsigned __int128)__b,
363 (vector unsigned __int128)__c);
366 static __inline__ vector unsigned __int128 __ATTRS_o_ai
367 vec_adde(vector unsigned __int128 __a, vector unsigned __int128 __b,
368 vector unsigned __int128 __c) {
373 static __inline__ vector unsigned char __attribute__((__always_inline__))
374 vec_adde_u128(vector unsigned char __a, vector unsigned char __b,
375 vector unsigned char __c) {
376 return (vector unsigned char)__builtin_altivec_vaddeuqm_c(
377 (vector unsigned char)__a, (vector unsigned char)__b,
378 (vector unsigned char)__c);
390 static __inline__ vector unsigned int __ATTRS_o_ai
391 vec_adde(vector unsigned int __a, vector unsigned int __b,
392 vector unsigned int __c) {
393 vector unsigned int __mask = {1, 1, 1, 1};
394 vector unsigned int __carry = __c & __mask;
406 (vector unsigned __int128)__a, (vector unsigned __int128)__b,
407 (vector unsigned __int128)__c);
410 static __inline__ vector unsigned __int128 __ATTRS_o_ai
411 vec_addec(vector unsigned __int128 __a, vector unsigned __int128 __b,
412 vector unsigned __int128 __c) {
417 static __inline__ vector unsigned char __attribute__((__always_inline__))
418 vec_addec_u128(vector unsigned char __a, vector unsigned char __b,
419 vector unsigned char __c) {
420 return (vector unsigned char)__builtin_altivec_vaddecuq_c(
421 (vector unsigned char)__a, (vector unsigned char)__b,
422 (vector unsigned char)__c);
432 unsigned int __tempa = (unsigned int) __a[i];
433 unsigned int __tempb = (unsigned int) __b[i];
434 unsigned int __tempc = (unsigned int) __c[i];
436 unsigned long long __longa = (unsigned long long) __tempa;
437 unsigned long long __longb = (unsigned long long) __tempb;
438 unsigned long long __longc = (unsigned long long) __tempc;
439 unsigned long long __sum = __longa + __longb + __longc;
440 unsigned long long __res = (__sum >> 32) & 0x01;
441 unsigned long long __tempres = (unsigned int) __res;
449 static __inline__ vector unsigned int __ATTRS_o_ai
450 vec_addec(vector unsigned int __a, vector unsigned int __b,
451 vector unsigned int __c) {
453 unsigned int __result[4];
455 unsigned int __tempc = __c[i] & 1;
456 unsigned long long __longa = (unsigned long long) __a[i];
457 unsigned long long __longb = (unsigned long long) __b[i];
458 unsigned long long __longc = (unsigned long long) __tempc;
459 unsigned long long __sum = __longa + __longb + __longc;
460 unsigned long long __res = (__sum >> 32) & 0x01;
461 unsigned long long __tempres = (unsigned int) __res;
465 vector unsigned int ret = { __result[0], __result[1], __result[2], __result[3] };
490 static __inline__ vector unsigned char __ATTRS_o_ai
491 vec_vaddubm(vector unsigned char __a, vector unsigned char __b) {
495 static __inline__ vector unsigned char __ATTRS_o_ai
496 vec_vaddubm(vector bool char __a, vector unsigned char __b) {
497 return (vector unsigned char)__a + __b;
500 static __inline__ vector unsigned char __ATTRS_o_ai
501 vec_vaddubm(vector unsigned char __a, vector bool char __b) {
502 return __a + (vector unsigned char)__b;
524 static __inline__ vector unsigned short __ATTRS_o_ai
525 vec_vadduhm(vector unsigned short __a, vector unsigned short __b) {
529 static __inline__ vector unsigned short __ATTRS_o_ai
530 vec_vadduhm(vector bool short __a, vector unsigned short __b) {
531 return (vector unsigned short)__a + __b;
534 static __inline__ vector unsigned short __ATTRS_o_ai
535 vec_vadduhm(vector unsigned short __a, vector bool short __b) {
536 return __a + (vector unsigned short)__b;
558 static __inline__ vector unsigned int __ATTRS_o_ai
559 vec_vadduwm(vector unsigned int __a, vector unsigned int __b) {
563 static __inline__ vector unsigned int __ATTRS_o_ai
564 vec_vadduwm(vector bool int __a, vector unsigned int __b) {
565 return (vector unsigned int)__a + __b;
568 static __inline__ vector unsigned int __ATTRS_o_ai
569 vec_vadduwm(vector unsigned int __a, vector bool int __b) {
570 return __a + (vector unsigned int)__b;
586 return (vector signed int)__builtin_altivec_vaddcuw((vector unsigned int)__a,
587 (vector unsigned int)__b);
590 static __inline__ vector unsigned int __ATTRS_o_ai
591 vec_addc(vector unsigned int __a, vector unsigned int __b) {
600 (vector unsigned __int128)__a, (vector unsigned __int128)__b);
603 static __inline__ vector unsigned __int128 __ATTRS_o_ai
604 vec_addc(vector unsigned __int128 __a, vector unsigned __int128 __b) {
609 static __inline__ vector unsigned char __attribute__((__always_inline__))
610 vec_addc_u128(vector unsigned char __a, vector unsigned char __b) {
611 return (vector unsigned char)__builtin_altivec_vaddcuq_c(
612 (vector unsigned char)__a, (vector unsigned char)__b);
618 static __inline__ vector unsigned int __attribute__((__always_inline__))
619 vec_vaddcuw(vector unsigned int __a, vector unsigned int __b) {
640 static __inline__ vector unsigned char __ATTRS_o_ai
641 vec_adds(vector unsigned char __a, vector unsigned char __b) {
645 static __inline__ vector unsigned char __ATTRS_o_ai
646 vec_adds(vector bool char __a, vector unsigned char __b) {
647 return __builtin_altivec_vaddubs((vector unsigned char)__a, __b);
650 static __inline__ vector unsigned char __ATTRS_o_ai
651 vec_adds(vector unsigned char __a, vector bool char __b) {
652 return __builtin_altivec_vaddubs(__a, (vector unsigned char)__b);
670 static __inline__ vector unsigned short __ATTRS_o_ai
671 vec_adds(vector unsigned short __a, vector unsigned short __b) {
675 static __inline__ vector unsigned short __ATTRS_o_ai
676 vec_adds(vector bool short __a, vector unsigned short __b) {
677 return __builtin_altivec_vadduhs((vector unsigned short)__a, __b);
680 static __inline__ vector unsigned short __ATTRS_o_ai
681 vec_adds(vector unsigned short __a, vector bool short __b) {
682 return __builtin_altivec_vadduhs(__a, (vector unsigned short)__b);
700 static __inline__ vector unsigned int __ATTRS_o_ai
701 vec_adds(vector unsigned int __a, vector unsigned int __b) {
705 static __inline__ vector unsigned int __ATTRS_o_ai
706 vec_adds(vector bool int __a, vector unsigned int __b) {
707 return __builtin_altivec_vadduws((vector unsigned int)__a, __b);
710 static __inline__ vector unsigned int __ATTRS_o_ai
711 vec_adds(vector unsigned int __a, vector bool int __b) {
712 return __builtin_altivec_vadduws(__a, (vector unsigned int)__b);
734 static __inline__ vector unsigned char __ATTRS_o_ai
735 vec_vaddubs(vector unsigned char __a, vector unsigned char __b) {
739 static __inline__ vector unsigned char __ATTRS_o_ai
740 vec_vaddubs(vector bool char __a, vector unsigned char __b) {
741 return __builtin_altivec_vaddubs((vector unsigned char)__a, __b);
744 static __inline__ vector unsigned char __ATTRS_o_ai
745 vec_vaddubs(vector unsigned char __a, vector bool char __b) {
746 return __builtin_altivec_vaddubs(__a, (vector unsigned char)__b);
768 static __inline__ vector unsigned short __ATTRS_o_ai
769 vec_vadduhs(vector unsigned short __a, vector unsigned short __b) {
773 static __inline__ vector unsigned short __ATTRS_o_ai
774 vec_vadduhs(vector bool short __a, vector unsigned short __b) {
775 return __builtin_altivec_vadduhs((vector unsigned short)__a, __b);
778 static __inline__ vector unsigned short __ATTRS_o_ai
779 vec_vadduhs(vector unsigned short __a, vector bool short __b) {
780 return __builtin_altivec_vadduhs(__a, (vector unsigned short)__b);
802 static __inline__ vector unsigned int __ATTRS_o_ai
803 vec_vadduws(vector unsigned int __a, vector unsigned int __b) {
807 static __inline__ vector unsigned int __ATTRS_o_ai
808 vec_vadduws(vector bool int __a, vector unsigned int __b) {
809 return __builtin_altivec_vadduws((vector unsigned int)__a, __b);
812 static __inline__ vector unsigned int __ATTRS_o_ai
813 vec_vadduws(vector unsigned int __a, vector bool int __b) {
814 return __builtin_altivec_vadduws(__a, (vector unsigned int)__b);
826 static __inline__ vector unsigned __int128 __ATTRS_o_ai
827 vec_vadduqm(vector unsigned __int128 __a, vector unsigned __int128 __b) {
837 (vector unsigned __int128)__a, (vector unsigned __int128)__b,
838 (vector unsigned __int128)__c);
841 static __inline__ vector unsigned __int128 __ATTRS_o_ai
842 vec_vaddeuqm(vector unsigned __int128 __a, vector unsigned __int128 __b,
843 vector unsigned __int128 __c) {
852 (vector unsigned __int128)__a, (vector unsigned __int128)__b);
855 static __inline__ vector unsigned __int128 __ATTRS_o_ai
856 vec_vaddcuq(vector unsigned __int128 __a, vector unsigned __int128 __b) {
866 (vector unsigned __int128)__a, (vector unsigned __int128)__b,
867 (vector unsigned __int128)__c);
870 static __inline__ vector unsigned __int128 __ATTRS_o_ai
871 vec_vaddecuq(vector unsigned __int128 __a, vector unsigned __int128 __b,
872 vector unsigned __int128 __c) {
896 static __inline__ vector unsigned char __ATTRS_o_ai
897 vec_and(vector unsigned char __a, vector unsigned char __b) {
901 static __inline__ vector unsigned char __ATTRS_o_ai
902 vec_and(vector bool char __a, vector unsigned char __b) {
903 return (vector unsigned char)__a & __b;
906 static __inline__ vector unsigned char __ATTRS_o_ai
907 vec_and(vector unsigned char __a, vector bool char __b) {
908 return __a & (vector unsigned char)__b;
931 static __inline__ vector unsigned short __ATTRS_o_ai
932 vec_and(vector unsigned short __a, vector unsigned short __b) {
936 static __inline__ vector unsigned short __ATTRS_o_ai
937 vec_and(vector bool short __a, vector unsigned short __b) {
938 return (vector unsigned short)__a & __b;
941 static __inline__ vector unsigned short __ATTRS_o_ai
942 vec_and(vector unsigned short __a, vector bool short __b) {
943 return __a & (vector unsigned short)__b;
966 static __inline__ vector unsigned int __ATTRS_o_ai
967 vec_and(vector unsigned int __a, vector unsigned int __b) {
971 static __inline__ vector unsigned int __ATTRS_o_ai
972 vec_and(vector bool int __a, vector unsigned int __b) {
973 return (vector unsigned int)__a & __b;
976 static __inline__ vector unsigned int __ATTRS_o_ai
977 vec_and(vector unsigned int __a, vector bool int __b) {
978 return __a & (vector unsigned int)__b;
988 vector unsigned int __res =
989 (vector unsigned int)__a & (vector unsigned int)__b;
995 vector unsigned int __res =
996 (vector unsigned int)__a & (vector unsigned int)__b;
1002 vector unsigned int __res =
1003 (vector unsigned int)__a & (vector unsigned int)__b;
1010 vector unsigned long long __res =
1011 (vector unsigned long long)__a & (vector unsigned long long)__b;
1017 vector unsigned long long __res =
1018 (vector unsigned long long)__a & (vector unsigned long long)__b;
1024 vector unsigned long long __res =
1025 (vector unsigned long long)__a & (vector unsigned long long)__b;
1044 static __inline__ vector unsigned long long __ATTRS_o_ai
1045 vec_and(vector unsigned long long __a, vector unsigned long long __b) {
1049 static __inline__ vector unsigned long long __ATTRS_o_ai
1050 vec_and(vector bool long long __a, vector unsigned long long __b) {
1051 return (vector unsigned long long)__a & __b;
1054 static __inline__ vector unsigned long long __ATTRS_o_ai
1055 vec_and(vector unsigned long long __a, vector bool long long __b) {
1056 return __a & (vector unsigned long long)__b;
1082 static __inline__ vector unsigned char __ATTRS_o_ai
1083 vec_vand(vector unsigned char __a, vector unsigned char __b) {
1087 static __inline__ vector unsigned char __ATTRS_o_ai
1088 vec_vand(vector bool char __a, vector unsigned char __b) {
1089 return (vector unsigned char)__a & __b;
1092 static __inline__ vector unsigned char __ATTRS_o_ai
1093 vec_vand(vector unsigned char __a, vector bool char __b) {
1094 return __a & (vector unsigned char)__b;
1117 static __inline__ vector unsigned short __ATTRS_o_ai
1118 vec_vand(vector unsigned short __a, vector unsigned short __b) {
1122 static __inline__ vector unsigned short __ATTRS_o_ai
1123 vec_vand(vector bool short __a, vector unsigned short __b) {
1124 return (vector unsigned short)__a & __b;
1127 static __inline__ vector unsigned short __ATTRS_o_ai
1128 vec_vand(vector unsigned short __a, vector bool short __b) {
1129 return __a & (vector unsigned short)__b;
1152 static __inline__ vector unsigned int __ATTRS_o_ai
1153 vec_vand(vector unsigned int __a, vector unsigned int __b) {
1157 static __inline__ vector unsigned int __ATTRS_o_ai
1158 vec_vand(vector bool int __a, vector unsigned int __b) {
1159 return (vector unsigned int)__a & __b;
1162 static __inline__ vector unsigned int __ATTRS_o_ai
1163 vec_vand(vector unsigned int __a, vector bool int __b) {
1164 return __a & (vector unsigned int)__b;
1174 vector unsigned int __res =
1175 (vector unsigned int)__a & (vector unsigned int)__b;
1181 vector unsigned int __res =
1182 (vector unsigned int)__a & (vector unsigned int)__b;
1188 vector unsigned int __res =
1189 (vector unsigned int)__a & (vector unsigned int)__b;
1209 static __inline__ vector unsigned long long __ATTRS_o_ai
1210 vec_vand(vector unsigned long long __a, vector unsigned long long __b) {
1214 static __inline__ vector unsigned long long __ATTRS_o_ai
1215 vec_vand(vector bool long long __a, vector unsigned long long __b) {
1216 return (vector unsigned long long)__a & __b;
1219 static __inline__ vector unsigned long long __ATTRS_o_ai
1220 vec_vand(vector unsigned long long __a, vector bool long long __b) {
1221 return __a & (vector unsigned long long)__b;
1249 static __inline__ vector unsigned char __ATTRS_o_ai
1250 vec_andc(vector unsigned char __a, vector unsigned char __b) {
1254 static __inline__ vector unsigned char __ATTRS_o_ai
1255 vec_andc(vector bool char __a, vector unsigned char __b) {
1256 return (vector unsigned char)__a & ~__b;
1259 static __inline__ vector unsigned char __ATTRS_o_ai
1260 vec_andc(vector unsigned char __a, vector bool char __b) {
1261 return __a & ~(vector unsigned char)__b;
1284 static __inline__ vector unsigned short __ATTRS_o_ai
1285 vec_andc(vector unsigned short __a, vector unsigned short __b) {
1289 static __inline__ vector unsigned short __ATTRS_o_ai
1290 vec_andc(vector bool short __a, vector unsigned short __b) {
1291 return (vector unsigned short)__a & ~__b;
1294 static __inline__ vector unsigned short __ATTRS_o_ai
1295 vec_andc(vector unsigned short __a, vector bool short __b) {
1296 return __a & ~(vector unsigned short)__b;
1319 static __inline__ vector unsigned int __ATTRS_o_ai
1320 vec_andc(vector unsigned int __a, vector unsigned int __b) {
1324 static __inline__ vector unsigned int __ATTRS_o_ai
1325 vec_andc(vector bool int __a, vector unsigned int __b) {
1326 return (vector unsigned int)__a & ~__b;
1329 static __inline__ vector unsigned int __ATTRS_o_ai
1330 vec_andc(vector unsigned int __a, vector bool int __b) {
1331 return __a & ~(vector unsigned int)__b;
1341 vector unsigned int __res =
1342 (vector unsigned int)__a & ~(vector unsigned int)__b;
1348 vector unsigned int __res =
1349 (vector unsigned int)__a & ~(vector unsigned int)__b;
1355 vector unsigned int __res =
1356 (vector unsigned int)__a & ~(vector unsigned int)__b;
1363 vector unsigned long long __res =
1364 (vector unsigned long long)__a & ~(vector unsigned long long)__b;
1370 vector unsigned long long __res =
1371 (vector unsigned long long)__a & ~(vector unsigned long long)__b;
1377 vector unsigned long long __res =
1378 (vector unsigned long long)__a & ~(vector unsigned long long)__b;
1397 static __inline__ vector unsigned long long __ATTRS_o_ai
1398 vec_andc(vector unsigned long long __a, vector unsigned long long __b) {
1402 static __inline__ vector unsigned long long __ATTRS_o_ai
1403 vec_andc(vector bool long long __a, vector unsigned long long __b) {
1404 return (vector unsigned long long)__a & ~__b;
1407 static __inline__ vector unsigned long long __ATTRS_o_ai
1408 vec_andc(vector unsigned long long __a, vector bool long long __b) {
1409 return __a & ~(vector unsigned long long)__b;
1435 static __inline__ vector unsigned char __ATTRS_o_ai
1436 vec_vandc(vector unsigned char __a, vector unsigned char __b) {
1440 static __inline__ vector unsigned char __ATTRS_o_ai
1441 vec_vandc(vector bool char __a, vector unsigned char __b) {
1442 return (vector unsigned char)__a & ~__b;
1445 static __inline__ vector unsigned char __ATTRS_o_ai
1446 vec_vandc(vector unsigned char __a, vector bool char __b) {
1447 return __a & ~(vector unsigned char)__b;
1470 static __inline__ vector unsigned short __ATTRS_o_ai
1471 vec_vandc(vector unsigned short __a, vector unsigned short __b) {
1475 static __inline__ vector unsigned short __ATTRS_o_ai
1476 vec_vandc(vector bool short __a, vector unsigned short __b) {
1477 return (vector unsigned short)__a & ~__b;
1480 static __inline__ vector unsigned short __ATTRS_o_ai
1481 vec_vandc(vector unsigned short __a, vector bool short __b) {
1482 return __a & ~(vector unsigned short)__b;
1505 static __inline__ vector unsigned int __ATTRS_o_ai
1506 vec_vandc(vector unsigned int __a, vector unsigned int __b) {
1510 static __inline__ vector unsigned int __ATTRS_o_ai
1511 vec_vandc(vector bool int __a, vector unsigned int __b) {
1512 return (vector unsigned int)__a & ~__b;
1515 static __inline__ vector unsigned int __ATTRS_o_ai
1516 vec_vandc(vector unsigned int __a, vector bool int __b) {
1517 return __a & ~(vector unsigned int)__b;
1527 vector unsigned int __res =
1528 (vector unsigned int)__a & ~(vector unsigned int)__b;
1534 vector unsigned int __res =
1535 (vector unsigned int)__a & ~(vector unsigned int)__b;
1541 vector unsigned int __res =
1542 (vector unsigned int)__a & ~(vector unsigned int)__b;
1562 static __inline__ vector unsigned long long __ATTRS_o_ai
1563 vec_vandc(vector unsigned long long __a, vector unsigned long long __b) {
1567 static __inline__ vector unsigned long long __ATTRS_o_ai
1568 vec_vandc(vector bool long long __a, vector unsigned long long __b) {
1569 return (vector unsigned long long)__a & ~__b;
1572 static __inline__ vector unsigned long long __ATTRS_o_ai
1573 vec_vandc(vector unsigned long long __a, vector bool long long __b) {
1574 return __a & ~(vector unsigned long long)__b;
1590 static __inline__ vector unsigned char __ATTRS_o_ai
1591 vec_avg(vector unsigned char __a, vector unsigned char __b) {
1600 static __inline__ vector unsigned short __ATTRS_o_ai
1601 vec_avg(vector unsigned short __a, vector unsigned short __b) {
1610 static __inline__ vector unsigned int __ATTRS_o_ai
1611 vec_avg(vector unsigned int __a, vector unsigned int __b) {
1624 static __inline__ vector unsigned char __attribute__((__always_inline__))
1625 vec_vavgub(vector unsigned char __a, vector unsigned char __b) {
1638 static __inline__ vector unsigned short __attribute__((__always_inline__))
1639 vec_vavguh(vector unsigned short __a, vector unsigned short __b) {
1652 static __inline__ vector unsigned int __attribute__((__always_inline__))
1653 vec_vavguw(vector unsigned int __a, vector unsigned int __b) {
1714 vec_cmpeq(vector unsigned char __a, vector unsigned char __b) {
1731 vec_cmpeq(vector unsigned short __a, vector unsigned short __b) {
1748 vec_cmpeq(vector unsigned int __a, vector unsigned int __b) {
1766 vec_cmpeq(vector unsigned long long __a, vector unsigned long long __b) {
1793 vec_cmpeq(vector unsigned long long __a, vector unsigned long long __b) {
1823 (vector unsigned __int128)__a, (vector unsigned __int128)__b);
1827 vec_cmpeq(vector unsigned __int128 __a, vector unsigned __int128 __b) {
1829 (vector unsigned __int128)__a, (vector unsigned __int128)__b);
1835 (vector unsigned __int128)__a, (vector unsigned __int128)__b);
1855 vec_cmpne(vector unsigned char __a, vector unsigned char __b) {
1873 vec_cmpne(vector unsigned short __a, vector unsigned short __b) {
1891 vec_cmpne(vector unsigned int __a, vector unsigned int __b) {
1904 vec_cmpne(vector unsigned __int128 __a, vector unsigned __int128 __b) {
1906 (vector unsigned __int128)__a, (vector unsigned __int128)__b));
1912 (vector unsigned __int128)__a, (vector unsigned __int128)__b));
1918 (vector unsigned __int128)__a, (vector unsigned __int128)__b));
1931 vec_cmpnez(vector unsigned char __a, vector unsigned char __b) {
1943 vec_cmpnez(vector unsigned short __a, vector unsigned short __b) {
1955 vec_cmpnez(vector unsigned int __a, vector unsigned int __b) {
1963 return __builtin_altivec_vctzlsbb((vector unsigned char)__a);
1965 return __builtin_altivec_vclzlsbb((vector unsigned char)__a);
1970 vec_cntlz_lsbb(vector unsigned char __a) {
1972 return __builtin_altivec_vctzlsbb((vector unsigned char)__a);
1981 return __builtin_altivec_vclzlsbb((vector unsigned char)__a);
1983 return __builtin_altivec_vctzlsbb((vector unsigned char)__a);
1988 vec_cnttz_lsbb(vector unsigned char __a) {
1996 static __inline__ vector unsigned int __ATTRS_o_ai
1997 vec_parity_lsbb(vector unsigned int __a) {
2001 static __inline__ vector unsigned int __ATTRS_o_ai
2003 return __builtin_altivec_vprtybw((vector unsigned int)__a);
2007 static __inline__ vector unsigned __int128 __ATTRS_o_ai
2008 vec_parity_lsbb(vector unsigned __int128 __a) {
2012 static __inline__ vector unsigned __int128 __ATTRS_o_ai
2014 return __builtin_altivec_vprtybq((vector unsigned __int128)__a);
2018 static __inline__ vector unsigned long long __ATTRS_o_ai
2019 vec_parity_lsbb(vector unsigned long long __a) {
2023 static __inline__ vector unsigned long long __ATTRS_o_ai
2025 return __builtin_altivec_vprtybd((vector unsigned long long)__a);
2042 vec_cmpne(vector unsigned char __a, vector unsigned char __b) {
2057 vec_cmpne(vector unsigned short __a, vector unsigned short __b) {
2072 vec_cmpne(vector unsigned int __a, vector unsigned int __b) {
2096 vec_cmpne(vector unsigned long long __a, vector unsigned long long __b) {
2114 vec_cmpne(vector unsigned long long __a, vector unsigned long long __b) {
2136 vec_cmpgt(vector unsigned char __a, vector unsigned char __b) {
2146 vec_cmpgt(vector unsigned short __a, vector unsigned short __b) {
2156 vec_cmpgt(vector unsigned int __a, vector unsigned int __b) {
2167 vec_cmpgt(vector unsigned long long __a, vector unsigned long long __b) {
2175 vector unsigned int __ugtw = (vector unsigned int)vec_cmpgt(
2176 (vector unsigned int)__a, (vector unsigned int)__b);
2177 vector unsigned int __eqw = (vector unsigned int)vec_cmpeq(
2193 vec_cmpgt(vector unsigned long long __a, vector unsigned long long __b) {
2194 vector unsigned int __ugtw = (vector unsigned int)vec_cmpgt(
2195 (vector unsigned int)__a, (vector unsigned int)__b);
2196 vector unsigned int __eqw = (vector unsigned int)vec_cmpeq(
2235 vec_cmpgt(vector unsigned __int128 __a, vector unsigned __int128 __b) {
2248 vec_cmpge(vector unsigned char __a, vector unsigned char __b) {
2258 vec_cmpge(vector unsigned short __a, vector unsigned short __b) {
2268 vec_cmpge(vector unsigned int __a, vector unsigned int __b) {
2293 vec_cmpge(vector unsigned long long __a, vector unsigned long long __b) {
2305 vec_cmpge(vector unsigned __int128 __a, vector unsigned __int128 __b) {
2327 vec_vcmpgtub(vector unsigned char __a, vector unsigned char __b) {
2341 vec_vcmpgtuh(vector unsigned short __a, vector unsigned short __b) {
2355 vec_vcmpgtuw(vector unsigned int __a, vector unsigned int __b) {
2374 vec_cmple(vector unsigned char __a, vector unsigned char __b) {
2384 vec_cmple(vector unsigned short __a, vector unsigned short __b) {
2394 vec_cmple(vector unsigned int __a, vector unsigned int __b) {
2415 vec_cmple(vector unsigned long long __a, vector unsigned long long __b) {
2427 vec_cmple(vector unsigned __int128 __a, vector unsigned __int128 __b) {
2440 vec_cmplt(vector unsigned char __a, vector unsigned char __b) {
2450 vec_cmplt(vector unsigned short __a, vector unsigned short __b) {
2460 vec_cmplt(vector unsigned int __a, vector unsigned int __b) {
2483 vec_cmplt(vector unsigned __int128 __a, vector unsigned __int128 __b) {
2495 vec_cmplt(vector unsigned long long __a, vector unsigned long long __b) {
2503 static __inline__ vector unsigned char __ATTRS_o_ai
2505 return (vector unsigned char)__builtin_elementwise_popcount(
2506 (vector unsigned char)__a);
2508 static __inline__ vector unsigned char __ATTRS_o_ai
2509 vec_popcnt(vector unsigned char __a) {
2512 static __inline__ vector unsigned short __ATTRS_o_ai
2514 return (vector unsigned short)__builtin_elementwise_popcount(
2515 (vector unsigned short)__a);
2517 static __inline__ vector unsigned short __ATTRS_o_ai
2518 vec_popcnt(vector unsigned short __a) {
2521 static __inline__ vector unsigned int __ATTRS_o_ai
2523 return __builtin_elementwise_popcount((vector unsigned int)__a);
2525 static __inline__ vector unsigned int __ATTRS_o_ai
2526 vec_popcnt(vector unsigned int __a) {
2529 static __inline__ vector unsigned long long __ATTRS_o_ai
2531 return __builtin_elementwise_popcount((vector unsigned long long)__a);
2533 static __inline__ vector unsigned long long __ATTRS_o_ai
2534 vec_popcnt(vector unsigned long long __a) {
2543 return (vector signed char)__builtin_altivec_vclzb((vector unsigned char)__a);
2545 static __inline__ vector unsigned char __ATTRS_o_ai
2546 vec_cntlz(vector unsigned char __a) {
2552 (vector unsigned short)__a);
2554 static __inline__ vector unsigned short __ATTRS_o_ai
2555 vec_cntlz(vector unsigned short __a) {
2560 return (vector signed int)__builtin_altivec_vclzw((vector unsigned int)__a);
2562 static __inline__ vector unsigned int __ATTRS_o_ai
2563 vec_cntlz(vector unsigned int __a) {
2569 (vector unsigned long long)__a);
2571 static __inline__ vector unsigned long long __ATTRS_o_ai
2572 vec_cntlz(vector unsigned long long __a) {
2583 return (vector signed char)__builtin_altivec_vctzb((vector unsigned char)__a);
2585 static __inline__ vector unsigned char __ATTRS_o_ai
2586 vec_cnttz(vector unsigned char __a) {
2592 (vector unsigned short)__a);
2594 static __inline__ vector unsigned short __ATTRS_o_ai
2595 vec_cnttz(vector unsigned short __a) {
2600 return (vector signed int)__builtin_altivec_vctzw((vector unsigned int)__a);
2602 static __inline__ vector unsigned int __ATTRS_o_ai
2603 vec_cnttz(vector unsigned int __a) {
2609 (vector unsigned long long)__a);
2611 static __inline__ vector unsigned long long __ATTRS_o_ai
2612 vec_cnttz(vector unsigned long long __a) {
2618 static __inline__ unsigned __ATTRS_o_ai
2620 vector unsigned long long __res =
2622 vec_cnttz((vector unsigned long long)vec_cmpeq(__a, __b));
2624 vec_cntlz((vector unsigned long long)vec_cmpeq(__a, __b));
2632 static __inline__ unsigned __ATTRS_o_ai
2633 vec_first_match_index(vector unsigned char __a, vector unsigned char __b) {
2634 vector unsigned long long __res =
2636 vec_cnttz((vector unsigned long long)vec_cmpeq(__a, __b));
2638 vec_cntlz((vector unsigned long long)vec_cmpeq(__a, __b));
2646 static __inline__ unsigned __ATTRS_o_ai
2648 vector unsigned long long __res =
2650 vec_cnttz((vector unsigned long long)vec_cmpeq(__a, __b));
2652 vec_cntlz((vector unsigned long long)vec_cmpeq(__a, __b));
2660 static __inline__ unsigned __ATTRS_o_ai
2661 vec_first_match_index(vector unsigned short __a, vector unsigned short __b) {
2662 vector unsigned long long __res =
2664 vec_cnttz((vector unsigned long long)vec_cmpeq(__a, __b));
2666 vec_cntlz((vector unsigned long long)vec_cmpeq(__a, __b));
2674 static __inline__ unsigned __ATTRS_o_ai
2676 vector unsigned long long __res =
2678 vec_cnttz((vector unsigned long long)vec_cmpeq(__a, __b));
2680 vec_cntlz((vector unsigned long long)vec_cmpeq(__a, __b));
2688 static __inline__ unsigned __ATTRS_o_ai
2689 vec_first_match_index(vector unsigned int __a, vector unsigned int __b) {
2690 vector unsigned long long __res =
2692 vec_cnttz((vector unsigned long long)vec_cmpeq(__a, __b));
2694 vec_cntlz((vector unsigned long long)vec_cmpeq(__a, __b));
2704 static __inline__ unsigned __ATTRS_o_ai
2715 vector unsigned long long __res =
2717 vec_cnttz((vector unsigned long long)__tmp2);
2719 vec_cntlz((vector unsigned long long)__tmp2);
2727 static __inline__ unsigned __ATTRS_o_ai
2728 vec_first_match_or_eos_index(vector unsigned char __a,
2729 vector unsigned char __b) {
2732 vec_cmpeq((vector unsigned char)__tmp1, __a) |
2733 vec_cmpeq((vector unsigned char)__tmp1, __b);
2735 vector unsigned long long __res =
2737 vec_cnttz((vector unsigned long long)__tmp2);
2739 vec_cntlz((vector unsigned long long)__tmp2);
2747 static __inline__ unsigned __ATTRS_o_ai
2754 vector unsigned long long __res =
2756 vec_cnttz((vector unsigned long long)__tmp2);
2758 vec_cntlz((vector unsigned long long)__tmp2);
2766 static __inline__ unsigned __ATTRS_o_ai
2767 vec_first_match_or_eos_index(vector unsigned short __a,
2768 vector unsigned short __b) {
2771 vec_cmpeq((vector unsigned short)__tmp1, __a) |
2772 vec_cmpeq((vector unsigned short)__tmp1, __b);
2774 vector unsigned long long __res =
2776 vec_cnttz((vector unsigned long long)__tmp2);
2778 vec_cntlz((vector unsigned long long)__tmp2);
2786 static __inline__ unsigned __ATTRS_o_ai
2792 vector unsigned long long __res =
2794 vec_cnttz((vector unsigned long long)__tmp2);
2796 vec_cntlz((vector unsigned long long)__tmp2);
2804 static __inline__ unsigned __ATTRS_o_ai
2805 vec_first_match_or_eos_index(vector unsigned int __a, vector unsigned int __b) {
2808 vec_cmpeq((vector unsigned int)__tmp1, __a) |
2809 vec_cmpeq((vector unsigned int)__tmp1, __b);
2811 vector unsigned long long __res =
2813 vec_cnttz((vector unsigned long long)__tmp2);
2815 vec_cntlz((vector unsigned long long)__tmp2);
2825 static __inline__ unsigned __ATTRS_o_ai
2827 vector unsigned long long __res =
2829 vec_cnttz((vector unsigned long long)vec_cmpne(__a, __b));
2831 vec_cntlz((vector unsigned long long)vec_cmpne(__a, __b));
2839 static __inline__ unsigned __ATTRS_o_ai
2840 vec_first_mismatch_index(vector unsigned char __a, vector unsigned char __b) {
2841 vector unsigned long long __res =
2843 vec_cnttz((vector unsigned long long)vec_cmpne(__a, __b));
2845 vec_cntlz((vector unsigned long long)vec_cmpne(__a, __b));
2853 static __inline__ unsigned __ATTRS_o_ai
2855 vector unsigned long long __res =
2857 vec_cnttz((vector unsigned long long)vec_cmpne(__a, __b));
2859 vec_cntlz((vector unsigned long long)vec_cmpne(__a, __b));
2867 static __inline__ unsigned __ATTRS_o_ai
2868 vec_first_mismatch_index(vector unsigned short __a, vector unsigned short __b) {
2869 vector unsigned long long __res =
2871 vec_cnttz((vector unsigned long long)vec_cmpne(__a, __b));
2873 vec_cntlz((vector unsigned long long)vec_cmpne(__a, __b));
2881 static __inline__ unsigned __ATTRS_o_ai
2883 vector unsigned long long __res =
2885 vec_cnttz((vector unsigned long long)vec_cmpne(__a, __b));
2887 vec_cntlz((vector unsigned long long)vec_cmpne(__a, __b));
2895 static __inline__ unsigned __ATTRS_o_ai
2896 vec_first_mismatch_index(vector unsigned int __a, vector unsigned int __b) {
2897 vector unsigned long long __res =
2899 vec_cnttz((vector unsigned long long)vec_cmpne(__a, __b));
2901 vec_cntlz((vector unsigned long long)vec_cmpne(__a, __b));
2911 static __inline__ unsigned __ATTRS_o_ai
2914 vector unsigned long long __res =
2916 vec_cnttz((vector unsigned long long)vec_cmpnez(__a, __b));
2918 vec_cntlz((vector unsigned long long)vec_cmpnez(__a, __b));
2926 static __inline__ unsigned __ATTRS_o_ai
2927 vec_first_mismatch_or_eos_index(vector unsigned char __a,
2928 vector unsigned char __b) {
2929 vector unsigned long long __res =
2931 vec_cnttz((vector unsigned long long)vec_cmpnez(__a, __b));
2933 vec_cntlz((vector unsigned long long)vec_cmpnez(__a, __b));
2941 static __inline__ unsigned __ATTRS_o_ai
2944 vector unsigned long long __res =
2946 vec_cnttz((vector unsigned long long)vec_cmpnez(__a, __b));
2948 vec_cntlz((vector unsigned long long)vec_cmpnez(__a, __b));
2956 static __inline__ unsigned __ATTRS_o_ai
2957 vec_first_mismatch_or_eos_index(vector unsigned short __a,
2958 vector unsigned short __b) {
2959 vector unsigned long long __res =
2961 vec_cnttz((vector unsigned long long)vec_cmpnez(__a, __b));
2963 vec_cntlz((vector unsigned long long)vec_cmpnez(__a, __b));
2971 static __inline__ unsigned __ATTRS_o_ai
2973 vector unsigned long long __res =
2975 vec_cnttz((vector unsigned long long)vec_cmpnez(__a, __b));
2977 vec_cntlz((vector unsigned long long)vec_cmpnez(__a, __b));
2985 static __inline__ unsigned __ATTRS_o_ai
2986 vec_first_mismatch_or_eos_index(vector unsigned int __a,
2987 vector unsigned int __b) {
2988 vector unsigned long long __res =
2990 vec_cnttz((vector unsigned long long)vec_cmpnez(__a, __b));
2992 vec_cntlz((vector unsigned long long)vec_cmpnez(__a, __b));
3001 vec_insert_exp(vector double __a, vector unsigned long long __b) {
3002 return __builtin_vsx_xviexpdp((vector unsigned long long)__a,__b);
3006 vec_insert_exp(vector unsigned long long __a, vector unsigned long long __b) {
3011 vec_insert_exp(vector float __a, vector unsigned int __b) {
3012 return __builtin_vsx_xviexpsp((vector unsigned int)__a,__b);
3016 vec_insert_exp(vector unsigned int __a, vector unsigned int __b) {
3026 static __inline__ vector unsigned char __ATTRS_o_ai
3027 vec_xl_len(const unsigned char *__a, size_t __b) {
3028 return (vector unsigned char)__builtin_vsx_lxvl(__a, (__b << 56));
3036 static __inline__ vector unsigned short __ATTRS_o_ai
3037 vec_xl_len(const unsigned short *__a, size_t __b) {
3038 return (vector unsigned short)__builtin_vsx_lxvl(__a, (__b << 56));
3046 static __inline__ vector unsigned int __ATTRS_o_ai vec_xl_len(const unsigned int *__a,
3048 return (vector unsigned int)__builtin_vsx_lxvl(__a, (__b << 56));
3061 static __inline__ vector unsigned __int128 __ATTRS_o_ai
3062 vec_xl_len(const unsigned __int128 *__a, size_t __b) {
3063 return (vector unsigned __int128)__builtin_vsx_lxvl(__a, (__b << 56));
3072 static __inline__ vector unsigned long long __ATTRS_o_ai
3073 vec_xl_len(const unsigned long long *__a, size_t __b) {
3074 return (vector unsigned long long)__builtin_vsx_lxvl(__a, (__b << 56));
3082 static __inline__ vector unsigned char __ATTRS_o_ai
3083 vec_xl_len_r(const unsigned char *__a, size_t __b) {
3084 vector unsigned char __res =
3085 (vector unsigned char)__builtin_vsx_lxvll(__a, (__b << 56));
3086 vector unsigned char __mask =
3087 (vector unsigned char)__builtin_altivec_lvsr(16 - __b, (int *)NULL);
3088 return (vector unsigned char)__builtin_altivec_vperm_4si(
3093 static __inline__ void __ATTRS_o_ai vec_xst_len(vector unsigned char __a,
3094 unsigned char *__b,
3109 static __inline__ void __ATTRS_o_ai vec_xst_len(vector unsigned short __a,
3110 unsigned short *__b,
3120 static __inline__ void __ATTRS_o_ai vec_xst_len(vector unsigned int __a,
3121 unsigned int *__b, size_t __c) {
3137 static __inline__ void __ATTRS_o_ai vec_xst_len(vector unsigned __int128 __a,
3138 unsigned __int128 *__b,
3150 static __inline__ void __ATTRS_o_ai vec_xst_len(vector unsigned long long __a,
3151 unsigned long long *__b,
3161 static __inline__ void __ATTRS_o_ai vec_xst_len_r(vector unsigned char __a,
3162 unsigned char *__b,
3164 vector unsigned char __mask =
3165 (vector unsigned char)__builtin_altivec_lvsl(16 - __c, (int *)NULL);
3166 vector unsigned char __res =
3167 (vector unsigned char)__builtin_altivec_vperm_4si(
3175 #define __vec_ldrmb(PTR, CNT) vec_xl_len_r((const unsigned char *)(PTR), (CNT))
3177 vec_xst_len_r((VAL), (unsigned char *)(PTR), (CNT))
3208 vector unsigned int: (vector float)__builtin_altivec_vcfux( \
3209 (vector unsigned int)(__a), ((__b)&0x1F)), \
3210 vector unsigned long long: ( \
3212 (vector unsigned long long)(__a)) * \
3213 (vector float)(vector unsigned)((0x7f - \
3219 (vector float)(vector unsigned)((0x7f - \
3228 vector unsigned int: (vector float)__builtin_altivec_vcfux( \
3229 (vector unsigned int)(__a), ((__b)&0x1F)), \
3230 vector unsigned long long: ( \
3232 (vector unsigned long long)(__a), vector double) * \
3233 (vector double)(vector unsigned long long)((0x3ffULL - \
3239 (vector double)(vector unsigned long long)((0x3ffULL - \
3248 vector unsigned int: (vector float)__builtin_altivec_vcfux( \
3249 (vector unsigned int)(__a), ((__b)&0x1F)))
3258 (vector double)(vector unsigned long long)((0x3ffULL - \
3261 vector unsigned int: ( \
3262 vec_doublee((vector unsigned int)(__a)) * \
3263 (vector double)(vector unsigned long long)((0x3ffULL - \
3266 vector unsigned long long: ( \
3267 __builtin_convertvector((vector unsigned long long)(__a), \
3269 (vector double)(vector unsigned long long)((0x3ffULL - \
3275 (vector double)(vector unsigned long long)((0x3ffULL - \
3298 (vector double)(vector unsigned long long)((0x3ffULL + \
3311 (vector double)(vector unsigned long long)((0x3ffULL + \
3332 vector float: (vector unsigned int)__builtin_altivec_vctuxs( \
3337 (vector double)(vector unsigned long long)((0x3ffULL + \
3340 (vector unsigned long long)__builtin_vsx_xvcvdpuxws(__ret); \
3345 vector float: (vector unsigned int)__builtin_altivec_vctuxs( \
3350 (vector double)(vector unsigned long long)((0x3ffULL + \
3353 (vector unsigned long long)__builtin_convertvector( \
3354 __ret, vector unsigned long long); \
3371 (vector float)(vector unsigned)((0x7f + ((__b)&0x1F)) << 23); \
3378 (vector double)(vector unsigned long long)((0x3ffULL + \
3392 (vector float)(vector unsigned)((0x7f + ((__b)&0x1F)) << 23); \
3399 (vector double)(vector unsigned long long)((0x3ffULL + \
3402 __builtin_convertvector(__ret, vector unsigned long long); \
3414 (vector float)(vector unsigned)((0x7f + ((__b)&0x1F)) << 23); \
3420 (vector double)(vector unsigned long long)((0x3ffULL + \
3433 (vector float)(vector unsigned)((0x7f + ((__b)&0x1F)) \
3441 (vector double)(vector unsigned long long)((0x3ffULL + \
3444 __builtin_convertvector(__ret, vector unsigned long long); \
3492 vec_sld(vector signed int, vector signed int, unsigned const int __c);
3533 static __inline__ vector unsigned int __ATTRS_o_ai
3534 vec_sld(vector unsigned int, vector unsigned int, unsigned const int __c);
3536 static __inline__ vector unsigned int __ATTRS_o_ai
3538 return __builtin_convertvector(__a, vector unsigned int);
3542 static __inline__ vector unsigned long long __ATTRS_o_ai
3544 return __builtin_convertvector(__a, vector unsigned long long);
3547 static __inline__ vector unsigned int __attribute__((__always_inline__))
3549 return (vector unsigned int) { __a[0], __a[1], __b[0], __b[1] };
3552 static __inline__ vector unsigned int __ATTRS_o_ai
3555 vector unsigned int __ret = __builtin_vsx_xvcvdpuxws(__a);
3562 static __inline__ vector unsigned int __ATTRS_o_ai
3567 vector unsigned int __ret = __builtin_vsx_xvcvdpuxws(__a);
3576 vec_sld(vector float, vector float, unsigned const int __c);
3584 vec_float(vector unsigned int __a) {
3595 vec_float2(vector unsigned long long __a, vector unsigned long long __b) {
3615 vec_floate(vector unsigned long long __a) {
3645 vec_floato(vector unsigned long long __a) {
3674 vec_double(vector unsigned long long __a) {
3688 vec_doublee(vector unsigned int __a) {
3712 vec_doubleh(vector unsigned int __a) {
3730 vec_doublel(vector unsigned int __a) {
3751 vec_doubleo(vector unsigned int __a) {
3788 static __inline__ vector unsigned char __ATTRS_o_ai
3789 vec_div(vector unsigned char __a, vector unsigned char __b) {
3798 static __inline__ vector unsigned short __ATTRS_o_ai
3799 vec_div(vector unsigned short __a, vector unsigned short __b) {
3808 static __inline__ vector unsigned int __ATTRS_o_ai
3809 vec_div(vector unsigned int __a, vector unsigned int __b) {
3819 static __inline__ vector unsigned long long __ATTRS_o_ai
3820 vec_div(vector unsigned long long __a, vector unsigned long long __b) {
3843 static __inline__ vector unsigned int __ATTRS_o_ai
3844 vec_dive(vector unsigned int __a, vector unsigned int __b) {
3853 static __inline__ vector unsigned long long __ATTRS_o_ai
3854 vec_dive(vector unsigned long long __a, vector unsigned long long __b) {
3859 static __inline__ vector unsigned __int128 __ATTRS_o_ai
3860 vec_dive(vector unsigned __int128 __a, vector unsigned __int128 __b) {
3872 static __inline__ vector unsigned __int128 __ATTRS_o_ai
3873 vec_div(vector unsigned __int128 __a, vector unsigned __int128 __b) {
3928 return (vector signed char)__builtin_vsx_xxleqv((vector unsigned int)__a,
3929 (vector unsigned int)__b);
3932 static __inline__ vector unsigned char __ATTRS_o_ai
3933 vec_eqv(vector unsigned char __a, vector unsigned char __b) {
3934 return (vector unsigned char)__builtin_vsx_xxleqv((vector unsigned int)__a,
3935 (vector unsigned int)__b);
3940 return (vector bool char)__builtin_vsx_xxleqv((vector unsigned int)__a,
3941 (vector unsigned int)__b);
3946 return (vector signed short)__builtin_vsx_xxleqv((vector unsigned int)__a,
3947 (vector unsigned int)__b);
3950 static __inline__ vector unsigned short __ATTRS_o_ai
3951 vec_eqv(vector unsigned short __a, vector unsigned short __b) {
3952 return (vector unsigned short)__builtin_vsx_xxleqv((vector unsigned int)__a,
3953 (vector unsigned int)__b);
3958 return (vector bool short)__builtin_vsx_xxleqv((vector unsigned int)__a,
3959 (vector unsigned int)__b);
3964 return (vector signed int)__builtin_vsx_xxleqv((vector unsigned int)__a,
3965 (vector unsigned int)__b);
3968 static __inline__ vector unsigned int __ATTRS_o_ai
3969 vec_eqv(vector unsigned int __a, vector unsigned int __b) {
3975 return (vector bool int)__builtin_vsx_xxleqv((vector unsigned int)__a,
3976 (vector unsigned int)__b);
3982 (vector unsigned int)__a, (vector unsigned int)__b);
3985 static __inline__ vector unsigned long long __ATTRS_o_ai
3986 vec_eqv(vector unsigned long long __a, vector unsigned long long __b) {
3987 return (vector unsigned long long)__builtin_vsx_xxleqv(
3988 (vector unsigned int)__a, (vector unsigned int)__b);
3993 return (vector bool long long)__builtin_vsx_xxleqv((vector unsigned int)__a,
3994 (vector unsigned int)__b);
3999 return (vector float)__builtin_vsx_xxleqv((vector unsigned int)__a,
4000 (vector unsigned int)__b);
4005 return (vector double)__builtin_vsx_xxleqv((vector unsigned int)__a,
4006 (vector unsigned int)__b);
4070 static __inline__ vector unsigned char __ATTRS_o_ai
4071 vec_ld(long __a, const vector unsigned char *__b) {
4072 return (vector unsigned char)__builtin_altivec_lvx(__a, __b);
4075 static __inline__ vector unsigned char __ATTRS_o_ai
4076 vec_ld(long __a, const unsigned char *__b) {
4077 return (vector unsigned char)__builtin_altivec_lvx(__a, __b);
4094 static __inline__ vector unsigned short __ATTRS_o_ai
4095 vec_ld(long __a, const vector unsigned short *__b) {
4096 return (vector unsigned short)__builtin_altivec_lvx(__a, __b);
4099 static __inline__ vector unsigned short __ATTRS_o_ai
4100 vec_ld(long __a, const unsigned short *__b) {
4101 return (vector unsigned short)__builtin_altivec_lvx(__a, __b);
4123 static __inline__ vector unsigned int __ATTRS_o_ai
4124 vec_ld(long __a, const vector unsigned int *__b) {
4125 return (vector unsigned int)__builtin_altivec_lvx(__a, __b);
4128 static __inline__ vector unsigned int __ATTRS_o_ai
4129 vec_ld(long __a, const unsigned int *__b) {
4130 return (vector unsigned int)__builtin_altivec_lvx(__a, __b);
4159 static __inline__ vector unsigned char __ATTRS_o_ai
4160 vec_lvx(long __a, const vector unsigned char *__b) {
4161 return (vector unsigned char)__builtin_altivec_lvx(__a, __b);
4164 static __inline__ vector unsigned char __ATTRS_o_ai
4165 vec_lvx(long __a, const unsigned char *__b) {
4166 return (vector unsigned char)__builtin_altivec_lvx(__a, __b);
4183 static __inline__ vector unsigned short __ATTRS_o_ai
4184 vec_lvx(long __a, const vector unsigned short *__b) {
4185 return (vector unsigned short)__builtin_altivec_lvx(__a, __b);
4188 static __inline__ vector unsigned short __ATTRS_o_ai
4189 vec_lvx(long __a, const unsigned short *__b) {
4190 return (vector unsigned short)__builtin_altivec_lvx(__a, __b);
4212 static __inline__ vector unsigned int __ATTRS_o_ai
4213 vec_lvx(long __a, const vector unsigned int *__b) {
4214 return (vector unsigned int)__builtin_altivec_lvx(__a, __b);
4217 static __inline__ vector unsigned int __ATTRS_o_ai
4218 vec_lvx(long __a, const unsigned int *__b) {
4219 return (vector unsigned int)__builtin_altivec_lvx(__a, __b);
4243 static __inline__ vector unsigned char __ATTRS_o_ai
4244 vec_lde(long __a, const unsigned char *__b) {
4245 return (vector unsigned char)__builtin_altivec_lvebx(__a, __b);
4252 static __inline__ vector unsigned short __ATTRS_o_ai
4253 vec_lde(long __a, const unsigned short *__b) {
4254 return (vector unsigned short)__builtin_altivec_lvehx(__a, __b);
4261 static __inline__ vector unsigned int __ATTRS_o_ai
4262 vec_lde(long __a, const unsigned int *__b) {
4263 return (vector unsigned int)__builtin_altivec_lvewx(__a, __b);
4277 static __inline__ vector unsigned char __ATTRS_o_ai
4278 vec_lvebx(long __a, const unsigned char *__b) {
4279 return (vector unsigned char)__builtin_altivec_lvebx(__a, __b);
4289 static __inline__ vector unsigned short __ATTRS_o_ai
4290 vec_lvehx(long __a, const unsigned short *__b) {
4291 return (vector unsigned short)__builtin_altivec_lvehx(__a, __b);
4300 static __inline__ vector unsigned int __ATTRS_o_ai
4301 vec_lvewx(long __a, const unsigned int *__b) {
4302 return (vector unsigned int)__builtin_altivec_lvewx(__a, __b);
4322 static __inline__ vector unsigned char __ATTRS_o_ai
4323 vec_ldl(long __a, const vector unsigned char *__b) {
4324 return (vector unsigned char)__builtin_altivec_lvxl(__a, __b);
4327 static __inline__ vector unsigned char __ATTRS_o_ai
4328 vec_ldl(long __a, const unsigned char *__b) {
4329 return (vector unsigned char)__builtin_altivec_lvxl(__a, __b);
4346 static __inline__ vector unsigned short __ATTRS_o_ai
4347 vec_ldl(long __a, const vector unsigned short *__b) {
4348 return (vector unsigned short)__builtin_altivec_lvxl(__a, __b);
4351 static __inline__ vector unsigned short __ATTRS_o_ai
4352 vec_ldl(long __a, const unsigned short *__b) {
4353 return (vector unsigned short)__builtin_altivec_lvxl(__a, __b);
4375 static __inline__ vector unsigned int __ATTRS_o_ai
4376 vec_ldl(long __a, const vector unsigned int *__b) {
4377 return (vector unsigned int)__builtin_altivec_lvxl(__a, __b);
4380 static __inline__ vector unsigned int __ATTRS_o_ai
4381 vec_ldl(long __a, const unsigned int *__b) {
4382 return (vector unsigned int)__builtin_altivec_lvxl(__a, __b);
4411 static __inline__ vector unsigned char __ATTRS_o_ai
4412 vec_lvxl(long __a, const vector unsigned char *__b) {
4413 return (vector unsigned char)__builtin_altivec_lvxl(__a, __b);
4416 static __inline__ vector unsigned char __ATTRS_o_ai
4417 vec_lvxl(long __a, const unsigned char *__b) {
4418 return (vector unsigned char)__builtin_altivec_lvxl(__a, __b);
4436 static __inline__ vector unsigned short __ATTRS_o_ai
4437 vec_lvxl(long __a, const vector unsigned short *__b) {
4438 return (vector unsigned short)__builtin_altivec_lvxl(__a, __b);
4441 static __inline__ vector unsigned short __ATTRS_o_ai
4442 vec_lvxl(long __a, const unsigned short *__b) {
4443 return (vector unsigned short)__builtin_altivec_lvxl(__a, __b);
4465 static __inline__ vector unsigned int __ATTRS_o_ai
4466 vec_lvxl(long __a, const vector unsigned int *__b) {
4467 return (vector unsigned int)__builtin_altivec_lvxl(__a, __b);
4470 static __inline__ vector unsigned int __ATTRS_o_ai
4471 vec_lvxl(long __a, const unsigned int *__b) {
4472 return (vector unsigned int)__builtin_altivec_lvxl(__a, __b);
4507 static __inline__ vector unsigned char __ATTRS_o_ai
4510 vector unsigned char mask =
4511 (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4512 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4517 static __inline__ vector unsigned char __ATTRS_o_ai
4519 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4524 static __inline__ vector unsigned char __ATTRS_o_ai
4526 loads/stores"))) vec_lvsl(int __a, const unsigned char *__b) {
4527 vector unsigned char mask =
4528 (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4529 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4534 static __inline__ vector unsigned char __ATTRS_o_ai
4535 vec_lvsl(int __a, const unsigned char *__b) {
4536 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4541 static __inline__ vector unsigned char __ATTRS_o_ai
4544 vector unsigned char mask =
4545 (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4546 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4551 static __inline__ vector unsigned char __ATTRS_o_ai vec_lvsl(int __a,
4553 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4558 static __inline__ vector unsigned char __ATTRS_o_ai
4560 loads/stores"))) vec_lvsl(int __a, const unsigned short *__b) {
4561 vector unsigned char mask =
4562 (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4563 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4568 static __inline__ vector unsigned char __ATTRS_o_ai
4569 vec_lvsl(int __a, const unsigned short *__b) {
4570 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4575 static __inline__ vector unsigned char __ATTRS_o_ai
4578 vector unsigned char mask =
4579 (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4580 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4585 static __inline__ vector unsigned char __ATTRS_o_ai vec_lvsl(int __a,
4587 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4592 static __inline__ vector unsigned char __ATTRS_o_ai
4594 loads/stores"))) vec_lvsl(int __a, const unsigned int *__b) {
4595 vector unsigned char mask =
4596 (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4597 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4602 static __inline__ vector unsigned char __ATTRS_o_ai
4603 vec_lvsl(int __a, const unsigned int *__b) {
4604 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4609 static __inline__ vector unsigned char __ATTRS_o_ai
4612 vector unsigned char mask =
4613 (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4614 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4619 static __inline__ vector unsigned char __ATTRS_o_ai vec_lvsl(int __a,
4621 return (vector unsigned char)__builtin_altivec_lvsl(__a, __b);
4628 static __inline__ vector unsigned char __ATTRS_o_ai
4631 vector unsigned char mask =
4632 (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4633 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4638 static __inline__ vector unsigned char __ATTRS_o_ai
4640 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4645 static __inline__ vector unsigned char __ATTRS_o_ai
4647 loads/stores"))) vec_lvsr(int __a, const unsigned char *__b) {
4648 vector unsigned char mask =
4649 (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4650 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4655 static __inline__ vector unsigned char __ATTRS_o_ai
4656 vec_lvsr(int __a, const unsigned char *__b) {
4657 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4662 static __inline__ vector unsigned char __ATTRS_o_ai
4665 vector unsigned char mask =
4666 (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4667 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4672 static __inline__ vector unsigned char __ATTRS_o_ai vec_lvsr(int __a,
4674 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4679 static __inline__ vector unsigned char __ATTRS_o_ai
4681 loads/stores"))) vec_lvsr(int __a, const unsigned short *__b) {
4682 vector unsigned char mask =
4683 (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4684 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4689 static __inline__ vector unsigned char __ATTRS_o_ai
4690 vec_lvsr(int __a, const unsigned short *__b) {
4691 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4696 static __inline__ vector unsigned char __ATTRS_o_ai
4699 vector unsigned char mask =
4700 (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4701 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4706 static __inline__ vector unsigned char __ATTRS_o_ai vec_lvsr(int __a,
4708 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4713 static __inline__ vector unsigned char __ATTRS_o_ai
4715 loads/stores"))) vec_lvsr(int __a, const unsigned int *__b) {
4716 vector unsigned char mask =
4717 (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4718 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4723 static __inline__ vector unsigned char __ATTRS_o_ai
4724 vec_lvsr(int __a, const unsigned int *__b) {
4725 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4730 static __inline__ vector unsigned char __ATTRS_o_ai
4733 vector unsigned char mask =
4734 (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4735 vector unsigned char reverse = {15, 14, 13, 12, 11, 10, 9, 8,
4740 static __inline__ vector unsigned char __ATTRS_o_ai vec_lvsr(int __a,
4742 return (vector unsigned char)__builtin_altivec_lvsr(__a, __b);
4750 vec_mladd(vector signed short, vector unsigned short, vector unsigned short);
4752 vec_mladd(vector unsigned short, vector signed short, vector signed short);
4753 static __inline__ vector unsigned short __ATTRS_o_ai
4754 vec_mladd(vector unsigned short, vector unsigned short, vector unsigned short);
4762 vec_madd(vector signed short __a, vector unsigned short __b,
4763 vector unsigned short __c) {
4768 vec_madd(vector unsigned short __a, vector signed short __b,
4773 static __inline__ vector unsigned short __ATTRS_o_ai
4774 vec_madd(vector unsigned short __a, vector unsigned short __b,
4775 vector unsigned short __c) {
4852 static __inline__ vector unsigned char __ATTRS_o_ai
4853 vec_max(vector unsigned char __a, vector unsigned char __b) {
4857 static __inline__ vector unsigned char __ATTRS_o_ai
4858 vec_max(vector bool char __a, vector unsigned char __b) {
4859 return __builtin_altivec_vmaxub((vector unsigned char)__a, __b);
4862 static __inline__ vector unsigned char __ATTRS_o_ai
4863 vec_max(vector unsigned char __a, vector bool char __b) {
4864 return __builtin_altivec_vmaxub(__a, (vector unsigned char)__b);
4882 static __inline__ vector unsigned short __ATTRS_o_ai
4883 vec_max(vector unsigned short __a, vector unsigned short __b) {
4887 static __inline__ vector unsigned short __ATTRS_o_ai
4888 vec_max(vector bool short __a, vector unsigned short __b) {
4889 return __builtin_altivec_vmaxuh((vector unsigned short)__a, __b);
4892 static __inline__ vector unsigned short __ATTRS_o_ai
4893 vec_max(vector unsigned short __a, vector bool short __b) {
4894 return __builtin_altivec_vmaxuh(__a, (vector unsigned short)__b);
4912 static __inline__ vector unsigned int __ATTRS_o_ai
4913 vec_max(vector unsigned int __a, vector unsigned int __b) {
4917 static __inline__ vector unsigned int __ATTRS_o_ai
4918 vec_max(vector bool int __a, vector unsigned int __b) {
4919 return __builtin_altivec_vmaxuw((vector unsigned int)__a, __b);
4922 static __inline__ vector unsigned int __ATTRS_o_ai
4923 vec_max(vector unsigned int __a, vector bool int __b) {
4924 return __builtin_altivec_vmaxuw(__a, (vector unsigned int)__b);
4943 static __inline__ vector unsigned long long __ATTRS_o_ai
4944 vec_max(vector unsigned long long __a, vector unsigned long long __b) {
4948 static __inline__ vector unsigned long long __ATTRS_o_ai
4949 vec_max(vector bool long long __a, vector unsigned long long __b) {
4950 return __builtin_altivec_vmaxud((vector unsigned long long)__a, __b);
4953 static __inline__ vector unsigned long long __ATTRS_o_ai
4954 vec_max(vector unsigned long long __a, vector bool long long __b) {
4955 return __builtin_altivec_vmaxud(__a, (vector unsigned long long)__b);
4994 static __inline__ vector unsigned char __ATTRS_o_ai
4995 vec_vmaxub(vector unsigned char __a, vector unsigned char __b) {
4999 static __inline__ vector unsigned char __ATTRS_o_ai
5000 vec_vmaxub(vector bool char __a, vector unsigned char __b) {
5001 return __builtin_altivec_vmaxub((vector unsigned char)__a, __b);
5004 static __inline__ vector unsigned char __ATTRS_o_ai
5005 vec_vmaxub(vector unsigned char __a, vector bool char __b) {
5006 return __builtin_altivec_vmaxub(__a, (vector unsigned char)__b);
5028 static __inline__ vector unsigned short __ATTRS_o_ai
5029 vec_vmaxuh(vector unsigned short __a, vector unsigned short __b) {
5033 static __inline__ vector unsigned short __ATTRS_o_ai
5034 vec_vmaxuh(vector bool short __a, vector unsigned short __b) {
5035 return __builtin_altivec_vmaxuh((vector unsigned short)__a, __b);
5038 static __inline__ vector unsigned short __ATTRS_o_ai
5039 vec_vmaxuh(vector unsigned short __a, vector bool short __b) {
5040 return __builtin_altivec_vmaxuh(__a, (vector unsigned short)__b);
5062 static __inline__ vector unsigned int __ATTRS_o_ai
5063 vec_vmaxuw(vector unsigned int __a, vector unsigned int __b) {
5067 static __inline__ vector unsigned int __ATTRS_o_ai
5068 vec_vmaxuw(vector bool int __a, vector unsigned int __b) {
5069 return __builtin_altivec_vmaxuw((vector unsigned int)__a, __b);
5072 static __inline__ vector unsigned int __ATTRS_o_ai
5073 vec_vmaxuw(vector unsigned int __a, vector bool int __b) {
5074 return __builtin_altivec_vmaxuw(__a, (vector unsigned int)__b);
5093 (vector unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
5098 static __inline__ vector unsigned char __ATTRS_o_ai
5099 vec_mergeh(vector unsigned char __a, vector unsigned char __b) {
5101 (vector unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
5109 (vector unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
5117 (vector unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
5122 static __inline__ vector unsigned short __ATTRS_o_ai
5123 vec_mergeh(vector unsigned short __a, vector unsigned short __b) {
5125 (vector unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
5133 (vector unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
5141 (vector unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
5149 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5154 static __inline__ vector unsigned int __ATTRS_o_ai
5155 vec_mergeh(vector unsigned int __a, vector unsigned int __b) {
5157 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5165 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5173 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5182 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5190 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5198 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5203 static __inline__ vector unsigned long long __ATTRS_o_ai
5204 vec_mergeh(vector unsigned long long __a, vector unsigned long long __b) {
5206 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5211 static __inline__ vector unsigned long long __ATTRS_o_ai
5212 vec_mergeh(vector unsigned long long __a, vector bool long long __b) {
5213 return vec_perm(__a, (vector unsigned long long)__b,
5214 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5219 static __inline__ vector unsigned long long __ATTRS_o_ai
5220 vec_mergeh(vector bool long long __a, vector unsigned long long __b) {
5221 return vec_perm((vector unsigned long long)__a, __b,
5222 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5230 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5238 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5245 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5252 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
5265 (vector unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
5270 static __inline__ vector unsigned char __ATTRS_o_ai
5271 vec_vmrghb(vector unsigned char __a, vector unsigned char __b) {
5273 (vector unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
5281 (vector unsigned char)(0x00, 0x10, 0x01, 0x11, 0x02, 0x12,
5293 (vector unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
5298 static __inline__ vector unsigned short __ATTRS_o_ai
5299 vec_vmrghh(vector unsigned short __a, vector unsigned short __b) {
5301 (vector unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
5309 (vector unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
5317 (vector unsigned char)(0x00, 0x01, 0x10, 0x11, 0x02, 0x03,
5329 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5334 static __inline__ vector unsigned int __ATTRS_o_ai
5335 vec_vmrghw(vector unsigned int __a, vector unsigned int __b) {
5337 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5345 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5353 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5363 (vector unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
5368 static __inline__ vector unsigned char __ATTRS_o_ai
5369 vec_mergel(vector unsigned char __a, vector unsigned char __b) {
5371 (vector unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
5379 (vector unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
5387 (vector unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
5392 static __inline__ vector unsigned short __ATTRS_o_ai
5393 vec_mergel(vector unsigned short __a, vector unsigned short __b) {
5395 (vector unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
5403 (vector unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
5411 (vector unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
5419 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
5424 static __inline__ vector unsigned int __ATTRS_o_ai
5425 vec_mergel(vector unsigned int __a, vector unsigned int __b) {
5427 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
5435 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
5443 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
5452 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5459 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5466 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5470 static __inline__ vector unsigned long long __ATTRS_o_ai
5471 vec_mergel(vector unsigned long long __a, vector unsigned long long __b) {
5473 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5477 static __inline__ vector unsigned long long __ATTRS_o_ai
5478 vec_mergel(vector unsigned long long __a, vector bool long long __b) {
5479 return vec_perm(__a, (vector unsigned long long)__b,
5480 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5484 static __inline__ vector unsigned long long __ATTRS_o_ai
5485 vec_mergel(vector bool long long __a, vector unsigned long long __b) {
5486 return vec_perm((vector unsigned long long)__a, __b,
5487 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5494 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5501 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5508 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5515 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
5528 (vector unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
5533 static __inline__ vector unsigned char __ATTRS_o_ai
5534 vec_vmrglb(vector unsigned char __a, vector unsigned char __b) {
5536 (vector unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
5544 (vector unsigned char)(0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A,
5556 (vector unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
5561 static __inline__ vector unsigned short __ATTRS_o_ai
5562 vec_vmrglh(vector unsigned short __a, vector unsigned short __b) {
5564 (vector unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
5572 (vector unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
5580 (vector unsigned char)(0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B,
5592 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
5597 static __inline__ vector unsigned int __ATTRS_o_ai
5598 vec_vmrglw(vector unsigned int __a, vector unsigned int __b) {
5600 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
5608 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
5616 (vector unsigned char)(0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19,
5627 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5635 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5640 static __inline__ vector unsigned int __ATTRS_o_ai
5641 vec_mergee(vector unsigned int __a, vector unsigned int __b) {
5643 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5658 static __inline__ vector unsigned long long __ATTRS_o_ai
5659 vec_mergee(vector unsigned long long __a, vector unsigned long long __b) {
5666 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x10, 0x11,
5681 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x14, 0x15,
5689 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x14, 0x15,
5694 static __inline__ vector unsigned int __ATTRS_o_ai
5695 vec_mergeo(vector unsigned int __a, vector unsigned int __b) {
5697 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x14, 0x15,
5712 static __inline__ vector unsigned long long __ATTRS_o_ai
5713 vec_mergeo(vector unsigned long long __a, vector unsigned long long __b) {
5720 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x14, 0x15,
5734 static __inline__ vector unsigned short __attribute__((__always_inline__))
5756 static __inline__ vector unsigned char __ATTRS_o_ai
5757 vec_min(vector unsigned char __a, vector unsigned char __b) {
5761 static __inline__ vector unsigned char __ATTRS_o_ai
5762 vec_min(vector bool char __a, vector unsigned char __b) {
5763 return __builtin_altivec_vminub((vector unsigned char)__a, __b);
5766 static __inline__ vector unsigned char __ATTRS_o_ai
5767 vec_min(vector unsigned char __a, vector bool char __b) {
5768 return __builtin_altivec_vminub(__a, (vector unsigned char)__b);
5786 static __inline__ vector unsigned short __ATTRS_o_ai
5787 vec_min(vector unsigned short __a, vector unsigned short __b) {
5791 static __inline__ vector unsigned short __ATTRS_o_ai
5792 vec_min(vector bool short __a, vector unsigned short __b) {
5793 return __builtin_altivec_vminuh((vector unsigned short)__a, __b);
5796 static __inline__ vector unsigned short __ATTRS_o_ai
5797 vec_min(vector unsigned short __a, vector bool short __b) {
5798 return __builtin_altivec_vminuh(__a, (vector unsigned short)__b);
5816 static __inline__ vector unsigned int __ATTRS_o_ai
5817 vec_min(vector unsigned int __a, vector unsigned int __b) {
5821 static __inline__ vector unsigned int __ATTRS_o_ai
5822 vec_min(vector bool int __a, vector unsigned int __b) {
5823 return __builtin_altivec_vminuw((vector unsigned int)__a, __b);
5826 static __inline__ vector unsigned int __ATTRS_o_ai
5827 vec_min(vector unsigned int __a, vector bool int __b) {
5828 return __builtin_altivec_vminuw(__a, (vector unsigned int)__b);
5847 static __inline__ vector unsigned long long __ATTRS_o_ai
5848 vec_min(vector unsigned long long __a, vector unsigned long long __b) {
5852 static __inline__ vector unsigned long long __ATTRS_o_ai
5853 vec_min(vector bool long long __a, vector unsigned long long __b) {
5854 return __builtin_altivec_vminud((vector unsigned long long)__a, __b);
5857 static __inline__ vector unsigned long long __ATTRS_o_ai
5858 vec_min(vector unsigned long long __a, vector bool long long __b) {
5859 return __builtin_altivec_vminud(__a, (vector unsigned long long)__b);
5898 static __inline__ vector unsigned char __ATTRS_o_ai
5899 vec_vminub(vector unsigned char __a, vector unsigned char __b) {
5903 static __inline__ vector unsigned char __ATTRS_o_ai
5904 vec_vminub(vector bool char __a, vector unsigned char __b) {
5905 return __builtin_altivec_vminub((vector unsigned char)__a, __b);
5908 static __inline__ vector unsigned char __ATTRS_o_ai
5909 vec_vminub(vector unsigned char __a, vector bool char __b) {
5910 return __builtin_altivec_vminub(__a, (vector unsigned char)__b);
5932 static __inline__ vector unsigned short __ATTRS_o_ai
5933 vec_vminuh(vector unsigned short __a, vector unsigned short __b) {
5937 static __inline__ vector unsigned short __ATTRS_o_ai
5938 vec_vminuh(vector bool short __a, vector unsigned short __b) {
5939 return __builtin_altivec_vminuh((vector unsigned short)__a, __b);
5942 static __inline__ vector unsigned short __ATTRS_o_ai
5943 vec_vminuh(vector unsigned short __a, vector bool short __b) {
5944 return __builtin_altivec_vminuh(__a, (vector unsigned short)__b);
5966 static __inline__ vector unsigned int __ATTRS_o_ai
5967 vec_vminuw(vector unsigned int __a, vector unsigned int __b) {
5971 static __inline__ vector unsigned int __ATTRS_o_ai
5972 vec_vminuw(vector bool int __a, vector unsigned int __b) {
5973 return __builtin_altivec_vminuw((vector unsigned int)__a, __b);
5976 static __inline__ vector unsigned int __ATTRS_o_ai
5977 vec_vminuw(vector unsigned int __a, vector bool int __b) {
5978 return __builtin_altivec_vminuw(__a, (vector unsigned int)__b);
6003 vector short __a, vector unsigned short __b, vector unsigned short __c) {
6007 static __inline__ vector short __ATTRS_o_ai vec_mladd(vector unsigned short __a,
6013 static __inline__ vector unsigned short __ATTRS_o_ai
6014 vec_mladd(vector unsigned short __a, vector unsigned short __b,
6015 vector unsigned short __c) {
6028 vector short __a, vector unsigned short __b, vector unsigned short __c) {
6033 vec_vmladduhm(vector unsigned short __a, vector short __b, vector short __c) {
6037 static __inline__ vector unsigned short __ATTRS_o_ai
6038 vec_vmladduhm(vector unsigned short __a, vector unsigned short __b,
6039 vector unsigned short __c) {
6060 vector unsigned char __b,
6065 static __inline__ vector unsigned int __ATTRS_o_ai
6066 vec_msum(vector unsigned char __a, vector unsigned char __b,
6067 vector unsigned int __c) {
6077 static __inline__ vector unsigned int __ATTRS_o_ai
6078 vec_msum(vector unsigned short __a, vector unsigned short __b,
6079 vector unsigned int __c) {
6086 static __inline__ vector unsigned __int128 __ATTRS_o_ai
6087 vec_msumc(vector unsigned long long __a, vector unsigned long long __b,
6088 vector unsigned __int128 __c) {
6096 vec_vmsummbm(vector signed char __a, vector unsigned char __b, vector int __c) {
6102 static __inline__ vector unsigned int __attribute__((__always_inline__))
6103 vec_vmsumubm(vector unsigned char __a, vector unsigned char __b,
6104 vector unsigned int __c) {
6117 static __inline__ vector unsigned int __attribute__((__always_inline__))
6118 vec_vmsumuhm(vector unsigned short __a, vector unsigned short __b,
6119 vector unsigned int __c) {
6131 static __inline__ vector unsigned int __ATTRS_o_ai
6132 vec_msums(vector unsigned short __a, vector unsigned short __b,
6133 vector unsigned int __c) {
6146 static __inline__ vector unsigned int __attribute__((__always_inline__))
6147 vec_vmsumuhs(vector unsigned short __a, vector unsigned short __b,
6148 vector unsigned int __c) {
6158 static __inline__ void __ATTRS_o_ai vec_mtvscr(vector unsigned char __a) {
6170 static __inline__ void __ATTRS_o_ai vec_mtvscr(vector unsigned short __a) {
6186 static __inline__ void __ATTRS_o_ai vec_mtvscr(vector unsigned int __a) {
6209 static __inline__ vector unsigned char __ATTRS_o_ai
6210 vec_mul(vector unsigned char __a, vector unsigned char __b) {
6219 static __inline__ vector unsigned short __ATTRS_o_ai
6220 vec_mul(vector unsigned short __a, vector unsigned short __b) {
6229 static __inline__ vector unsigned int __ATTRS_o_ai
6230 vec_mul(vector unsigned int __a, vector unsigned int __b) {
6240 static __inline__ vector unsigned long long __ATTRS_o_ai
6241 vec_mul(vector unsigned long long __a, vector unsigned long long __b) {
6272 static __inline__ vector unsigned short __ATTRS_o_ai
6273 vec_mule(vector unsigned char __a, vector unsigned char __b) {
6290 static __inline__ vector unsigned int __ATTRS_o_ai
6291 vec_mule(vector unsigned short __a, vector unsigned short __b) {
6309 static __inline__ vector unsigned long long __ATTRS_o_ai
6310 vec_mule(vector unsigned int __a, vector unsigned int __b) {
6329 static __inline__ vector unsigned __int128 __ATTRS_o_ai
6330 vec_mule(vector unsigned long long __a, vector unsigned long long __b) {
6352 static __inline__ vector unsigned short __attribute__((__always_inline__))
6353 vec_vmuleub(vector unsigned char __a, vector unsigned char __b) {
6374 static __inline__ vector unsigned int __attribute__((__always_inline__))
6375 vec_vmuleuh(vector unsigned short __a, vector unsigned short __b) {
6391 static __inline__ vector unsigned int __ATTRS_o_ai
6392 vec_mulh(vector unsigned int __a, vector unsigned int __b) {
6401 static __inline__ vector unsigned long long __ATTRS_o_ai
6402 vec_mulh(vector unsigned long long __a, vector unsigned long long __b) {
6418 static __inline__ vector unsigned short __ATTRS_o_ai
6419 vec_mulo(vector unsigned char __a, vector unsigned char __b) {
6436 static __inline__ vector unsigned int __ATTRS_o_ai
6437 vec_mulo(vector unsigned short __a, vector unsigned short __b) {
6455 static __inline__ vector unsigned long long __ATTRS_o_ai
6456 vec_mulo(vector unsigned int __a, vector unsigned int __b) {
6475 static __inline__ vector unsigned __int128 __ATTRS_o_ai
6476 vec_mulo(vector unsigned long long __a, vector unsigned long long __b) {
6498 static __inline__ vector unsigned short __attribute__((__always_inline__))
6499 vec_vmuloub(vector unsigned char __a, vector unsigned char __b) {
6520 static __inline__ vector unsigned int __attribute__((__always_inline__))
6521 vec_vmulouh(vector unsigned short __a, vector unsigned short __b) {
6547 static __inline__ vector unsigned char __ATTRS_o_ai
6548 vec_nand(vector unsigned char __a, vector unsigned char __b) {
6552 static __inline__ vector unsigned char __ATTRS_o_ai
6553 vec_nand(vector unsigned char __a, vector bool char __b) {
6554 return ~(__a & (vector unsigned char)__b);
6557 static __inline__ vector unsigned char __ATTRS_o_ai
6558 vec_nand(vector bool char __a, vector unsigned char __b) {
6559 return (vector unsigned char)~(__a & (vector bool char)__b);
6582 static __inline__ vector unsigned short __ATTRS_o_ai
6583 vec_nand(vector unsigned short __a, vector unsigned short __b) {
6587 static __inline__ vector unsigned short __ATTRS_o_ai
6588 vec_nand(vector unsigned short __a, vector bool short __b) {
6589 return ~(__a & (vector unsigned short)__b);
6612 static __inline__ vector unsigned int __ATTRS_o_ai
6613 vec_nand(vector unsigned int __a, vector unsigned int __b) {
6617 static __inline__ vector unsigned int __ATTRS_o_ai
6618 vec_nand(vector unsigned int __a, vector bool int __b) {
6619 return ~(__a & (vector unsigned int)__b);
6622 static __inline__ vector unsigned int __ATTRS_o_ai
6623 vec_nand(vector bool int __a, vector unsigned int __b) {
6624 return (vector unsigned int)~(__a & (vector bool int)__b);
6634 return (vector float)(~((vector unsigned int)__a &
6635 (vector unsigned int)__b));
6653 static __inline__ vector unsigned long long __ATTRS_o_ai
6654 vec_nand(vector unsigned long long __a, vector unsigned long long __b) {
6658 static __inline__ vector unsigned long long __ATTRS_o_ai
6659 vec_nand(vector unsigned long long __a, vector bool long long __b) {
6660 return ~(__a & (vector unsigned long long)__b);
6663 static __inline__ vector unsigned long long __ATTRS_o_ai
6664 vec_nand(vector bool long long __a, vector unsigned long long __b) {
6665 return (vector unsigned long long)~(__a & (vector bool long long)__b);
6675 return (vector double)(~((vector unsigned long long)__a &
6676 (vector unsigned long long)__b));
6733 static __inline__ vector unsigned char __ATTRS_o_ai
6734 vec_nor(vector unsigned char __a, vector unsigned char __b) {
6748 static __inline__ vector unsigned short __ATTRS_o_ai
6749 vec_nor(vector unsigned short __a, vector unsigned short __b) {
6763 static __inline__ vector unsigned int __ATTRS_o_ai
6764 vec_nor(vector unsigned int __a, vector unsigned int __b) {
6775 vector unsigned int __res =
6776 ~((vector unsigned int)__a | (vector unsigned int)__b);
6783 vector unsigned long long __res =
6784 ~((vector unsigned long long)__a | (vector unsigned long long)__b);
6796 static __inline__ vector unsigned char __ATTRS_o_ai
6797 vec_vnor(vector unsigned char __a, vector unsigned char __b) {
6811 static __inline__ vector unsigned short __ATTRS_o_ai
6812 vec_vnor(vector unsigned short __a, vector unsigned short __b) {
6826 static __inline__ vector unsigned int __ATTRS_o_ai
6827 vec_vnor(vector unsigned int __a, vector unsigned int __b) {
6838 vector unsigned int __res =
6839 ~((vector unsigned int)__a | (vector unsigned int)__b);
6849 static __inline__ vector unsigned long long __ATTRS_o_ai
6850 vec_nor(vector unsigned long long __a, vector unsigned long long __b) {
6879 static __inline__ vector unsigned char __ATTRS_o_ai
6880 vec_or(vector unsigned char __a, vector unsigned char __b) {
6884 static __inline__ vector unsigned char __ATTRS_o_ai
6885 vec_or(vector bool char __a, vector unsigned char __b) {
6886 return (vector unsigned char)__a | __b;
6889 static __inline__ vector unsigned char __ATTRS_o_ai
6890 vec_or(vector unsigned char __a, vector bool char __b) {
6891 return __a | (vector unsigned char)__b;
6914 static __inline__ vector unsigned short __ATTRS_o_ai
6915 vec_or(vector unsigned short __a, vector unsigned short __b) {
6919 static __inline__ vector unsigned short __ATTRS_o_ai
6920 vec_or(vector bool short __a, vector unsigned short __b) {
6921 return (vector unsigned short)__a | __b;
6924 static __inline__ vector unsigned short __ATTRS_o_ai
6925 vec_or(vector unsigned short __a, vector bool short __b) {
6926 return __a | (vector unsigned short)__b;
6949 static __inline__ vector unsigned int __ATTRS_o_ai
6950 vec_or(vector unsigned int __a, vector unsigned int __b) {
6954 static __inline__ vector unsigned int __ATTRS_o_ai
6955 vec_or(vector bool int __a, vector unsigned int __b) {
6956 return (vector unsigned int)__a | __b;
6959 static __inline__ vector unsigned int __ATTRS_o_ai
6960 vec_or(vector unsigned int __a, vector bool int __b) {
6961 return __a | (vector unsigned int)__b;
6971 vector unsigned int __res =
6972 (vector unsigned int)__a | (vector unsigned int)__b;
6978 vector unsigned int __res =
6979 (vector unsigned int)__a | (vector unsigned int)__b;
6985 vector unsigned int __res =
6986 (vector unsigned int)__a | (vector unsigned int)__b;
6993 return (vector double)((vector unsigned long long)__a |
6994 (vector unsigned long long)__b);
6999 return (vector double)((vector unsigned long long)__a |
7000 (vector unsigned long long)__b);
7005 return (vector double)((vector unsigned long long)__a |
7006 (vector unsigned long long)__b);
7024 static __inline__ vector unsigned long long __ATTRS_o_ai
7025 vec_or(vector unsigned long long __a, vector unsigned long long __b) {
7029 static __inline__ vector unsigned long long __ATTRS_o_ai
7030 vec_or(vector bool long long __a, vector unsigned long long __b) {
7031 return (vector unsigned long long)__a | __b;
7034 static __inline__ vector unsigned long long __ATTRS_o_ai
7035 vec_or(vector unsigned long long __a, vector bool long long __b) {
7036 return __a | (vector unsigned long long)__b;
7061 static __inline__ vector unsigned char __ATTRS_o_ai
7062 vec_orc(vector unsigned char __a, vector unsigned char __b) {
7066 static __inline__ vector unsigned char __ATTRS_o_ai
7067 vec_orc(vector unsigned char __a, vector bool char __b) {
7068 return __a | (vector unsigned char)~__b;
7071 static __inline__ vector unsigned char __ATTRS_o_ai
7072 vec_orc(vector bool char __a, vector unsigned char __b) {
7073 return (vector unsigned char)(__a | (vector bool char)~__b);
7096 static __inline__ vector unsigned short __ATTRS_o_ai
7097 vec_orc(vector unsigned short __a, vector unsigned short __b) {
7101 static __inline__ vector unsigned short __ATTRS_o_ai
7102 vec_orc(vector unsigned short __a, vector bool short __b) {
7103 return __a | (vector unsigned short)~__b;
7106 static __inline__ vector unsigned short __ATTRS_o_ai
7107 vec_orc(vector bool short __a, vector unsigned short __b) {
7108 return (vector unsigned short)(__a | (vector bool short)~__b);
7131 static __inline__ vector unsigned int __ATTRS_o_ai
7132 vec_orc(vector unsigned int __a, vector unsigned int __b) {
7136 static __inline__ vector unsigned int __ATTRS_o_ai
7137 vec_orc(vector unsigned int __a, vector bool int __b) {
7138 return __a | (vector unsigned int)~__b;
7141 static __inline__ vector unsigned int __ATTRS_o_ai
7142 vec_orc(vector bool int __a, vector unsigned int __b) {
7143 return (vector unsigned int)(__a | (vector bool int)~__b);
7163 return (vector float)((vector unsigned int)__a | ~(vector unsigned int)__b);
7181 static __inline__ vector unsigned long long __ATTRS_o_ai
7182 vec_orc(vector unsigned long long __a, vector unsigned long long __b) {
7186 static __inline__ vector unsigned long long __ATTRS_o_ai
7187 vec_orc(vector unsigned long long __a, vector bool long long __b) {
7188 return __a | (vector unsigned long long)~__b;
7191 static __inline__ vector unsigned long long __ATTRS_o_ai
7192 vec_orc(vector bool long long __a, vector unsigned long long __b) {
7193 return (vector unsigned long long)(__a | (vector bool long long)~__b);
7213 return (vector double)((vector unsigned long long)__a |
7214 ~(vector unsigned long long)__b);
7235 static __inline__ vector unsigned char __ATTRS_o_ai
7236 vec_vor(vector unsigned char __a, vector unsigned char __b) {
7240 static __inline__ vector unsigned char __ATTRS_o_ai
7241 vec_vor(vector bool char __a, vector unsigned char __b) {
7242 return (vector unsigned char)__a | __b;
7245 static __inline__ vector unsigned char __ATTRS_o_ai
7246 vec_vor(vector unsigned char __a, vector bool char __b) {
7247 return __a | (vector unsigned char)__b;
7270 static __inline__ vector unsigned short __ATTRS_o_ai
7271 vec_vor(vector unsigned short __a, vector unsigned short __b) {
7275 static __inline__ vector unsigned short __ATTRS_o_ai
7276 vec_vor(vector bool short __a, vector unsigned short __b) {
7277 return (vector unsigned short)__a | __b;
7280 static __inline__ vector unsigned short __ATTRS_o_ai
7281 vec_vor(vector unsigned short __a, vector bool short __b) {
7282 return __a | (vector unsigned short)__b;
7305 static __inline__ vector unsigned int __ATTRS_o_ai
7306 vec_vor(vector unsigned int __a, vector unsigned int __b) {
7310 static __inline__ vector unsigned int __ATTRS_o_ai
7311 vec_vor(vector bool int __a, vector unsigned int __b) {
7312 return (vector unsigned int)__a | __b;
7315 static __inline__ vector unsigned int __ATTRS_o_ai
7316 vec_vor(vector unsigned int __a, vector bool int __b) {
7317 return __a | (vector unsigned int)__b;
7327 vector unsigned int __res =
7328 (vector unsigned int)__a | (vector unsigned int)__b;
7334 vector unsigned int __res =
7335 (vector unsigned int)__a | (vector unsigned int)__b;
7341 vector unsigned int __res =
7342 (vector unsigned int)__a | (vector unsigned int)__b;
7362 static __inline__ vector unsigned long long __ATTRS_o_ai
7363 vec_vor(vector unsigned long long __a, vector unsigned long long __b) {
7367 static __inline__ vector unsigned long long __ATTRS_o_ai
7368 vec_vor(vector bool long long __a, vector unsigned long long __b) {
7369 return (vector unsigned long long)__a | __b;
7372 static __inline__ vector unsigned long long __ATTRS_o_ai
7373 vec_vor(vector unsigned long long __a, vector bool long long __b) {
7374 return __a | (vector unsigned long long)__b;
7393 (vector unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
7398 (vector unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
7403 static __inline__ vector unsigned char __ATTRS_o_ai
7404 vec_pack(vector unsigned short __a, vector unsigned short __b) {
7406 return (vector unsigned char)vec_perm(
7408 (vector unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
7411 return (vector unsigned char)vec_perm(
7413 (vector unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
7423 (vector unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
7428 (vector unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
7438 (vector unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
7443 (vector unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
7448 static __inline__ vector unsigned short __ATTRS_o_ai
7449 vec_pack(vector unsigned int __a, vector unsigned int __b) {
7451 return (vector unsigned short)vec_perm(
7453 (vector unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
7456 return (vector unsigned short)vec_perm(
7458 (vector unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
7468 (vector unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
7473 (vector unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
7484 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
7489 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
7493 static __inline__ vector unsigned int __ATTRS_o_ai
7494 vec_pack(vector unsigned long long __a, vector unsigned long long __b) {
7496 return (vector unsigned int)vec_perm(
7498 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
7501 return (vector unsigned int)vec_perm(
7503 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
7513 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
7518 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
7530 static __inline__ vector unsigned short __ATTRS_o_ai
7535 return (vector unsigned short)vec_mergee(__resa, __resb);
7537 return (vector unsigned short)vec_mergeo(__resa, __resb);
7551 (vector unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
7556 (vector unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
7561 static __inline__ vector unsigned char __ATTRS_o_ai
7562 vec_vpkuhum(vector unsigned short __a, vector unsigned short __b) {
7564 return (vector unsigned char)vec_perm(
7566 (vector unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
7569 return (vector unsigned char)vec_perm(
7571 (vector unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
7581 (vector unsigned char)(0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E,
7586 (vector unsigned char)(0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
7600 (vector unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
7605 (vector unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
7610 static __inline__ vector unsigned short __ATTRS_o_ai
7611 vec_vpkuwum(vector unsigned int __a, vector unsigned int __b) {
7613 return (vector unsigned short)vec_perm(
7615 (vector unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
7618 return (vector unsigned short)vec_perm(
7620 (vector unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
7630 (vector unsigned char)(0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D,
7635 (vector unsigned char)(0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
7650 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
7655 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
7660 static __inline__ vector unsigned int __ATTRS_o_ai
7661 vec_vpkudum(vector unsigned long long __a, vector unsigned long long __b) {
7663 return (vector unsigned int)vec_perm(
7665 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
7668 return (vector unsigned int)vec_perm(
7670 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
7680 (vector unsigned char)(0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B,
7685 (vector unsigned char)(0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F,
7694 vec_packpx(vector unsigned int __a, vector unsigned int __b) {
7705 vec_vpkpx(vector unsigned int __a, vector unsigned int __b) {
7724 static __inline__ vector unsigned char __ATTRS_o_ai
7725 vec_packs(vector unsigned short __a, vector unsigned short __b) {
7742 static __inline__ vector unsigned short __ATTRS_o_ai
7743 vec_packs(vector unsigned int __a, vector unsigned int __b) {
7761 static __inline__ vector unsigned int __ATTRS_o_ai
7762 vec_packs(vector unsigned long long __a, vector unsigned long long __b) {
7797 static __inline__ vector unsigned char __attribute__((__always_inline__))
7798 vec_vpkuhus(vector unsigned short __a, vector unsigned short __b) {
7809 static __inline__ vector unsigned int __attribute__((__always_inline__))
7810 vec_vpkudus(vector unsigned long long __a, vector unsigned long long __b) {
7832 static __inline__ vector unsigned short __attribute__((__always_inline__))
7833 vec_vpkuwus(vector unsigned int __a, vector unsigned int __b) {
7843 static __inline__ vector unsigned char __ATTRS_o_ai
7852 static __inline__ vector unsigned char __ATTRS_o_ai
7853 vec_packsu(vector unsigned short __a, vector unsigned short __b) {
7861 static __inline__ vector unsigned short __ATTRS_o_ai
7870 static __inline__ vector unsigned short __ATTRS_o_ai
7871 vec_packsu(vector unsigned int __a, vector unsigned int __b) {
7880 static __inline__ vector unsigned int __ATTRS_o_ai
7889 static __inline__ vector unsigned int __ATTRS_o_ai
7890 vec_packsu(vector unsigned long long __a, vector unsigned long long __b) {
7901 static __inline__ vector unsigned char __ATTRS_o_ai
7910 static __inline__ vector unsigned char __ATTRS_o_ai
7911 vec_vpkshus(vector unsigned short __a, vector unsigned short __b) {
7921 static __inline__ vector unsigned short __ATTRS_o_ai
7930 static __inline__ vector unsigned short __ATTRS_o_ai
7931 vec_vpkswus(vector unsigned int __a, vector unsigned int __b) {
7942 static __inline__ vector unsigned int __ATTRS_o_ai
7963 vector signed char __a, vector signed char __b, vector unsigned char __c) {
7965 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
7976 static __inline__ vector unsigned char __ATTRS_o_ai
7977 vec_perm(vector unsigned char __a, vector unsigned char __b,
7978 vector unsigned char __c) {
7980 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
7983 return (vector unsigned char)__builtin_altivec_vperm_4si(
7986 return (vector unsigned char)__builtin_altivec_vperm_4si(
7992 vec_perm(vector bool char __a, vector bool char __b, vector unsigned char __c) {
7994 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8007 vector unsigned char __c) {
8009 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8020 static __inline__ vector unsigned short __ATTRS_o_ai
8021 vec_perm(vector unsigned short __a, vector unsigned short __b,
8022 vector unsigned char __c) {
8024 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8027 return (vector unsigned short)__builtin_altivec_vperm_4si(
8030 return (vector unsigned short)__builtin_altivec_vperm_4si(
8036 vector bool short __a, vector bool short __b, vector unsigned char __c) {
8038 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8051 vector unsigned char __c) {
8053 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8066 vector unsigned char __c) {
8068 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8077 static __inline__ vector unsigned int __ATTRS_o_ai
8078 vec_perm(vector unsigned int __a, vector unsigned int __b,
8079 vector unsigned char __c) {
8081 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8084 return (vector unsigned int)__builtin_altivec_vperm_4si((vector int)__b,
8087 return (vector unsigned int)__builtin_altivec_vperm_4si((vector int)__a,
8093 vec_perm(vector bool int __a, vector bool int __b, vector unsigned char __c) {
8095 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8108 vector unsigned char __c) {
8110 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8124 vector unsigned char __c) {
8126 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8137 static __inline__ vector unsigned long long __ATTRS_o_ai
8138 vec_perm(vector unsigned long long __a, vector unsigned long long __b,
8139 vector unsigned char __c) {
8141 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8144 return (vector unsigned long long)__builtin_altivec_vperm_4si(
8147 return (vector unsigned long long)__builtin_altivec_vperm_4si(
8154 vector unsigned char __c) {
8156 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8168 vec_perm(vector double __a, vector double __b, vector unsigned char __c) {
8170 vector unsigned char __d = {255, 255, 255, 255, 255, 255, 255, 255,
8185 vector signed char __a, vector signed char __b, vector unsigned char __c) {
8189 static __inline__ vector unsigned char __ATTRS_o_ai
8190 vec_vperm(vector unsigned char __a, vector unsigned char __b,
8191 vector unsigned char __c) {
8196 vector bool char __a, vector bool char __b, vector unsigned char __c) {
8201 vec_vperm(vector short __a, vector short __b, vector unsigned char __c) {
8205 static __inline__ vector unsigned short __ATTRS_o_ai
8206 vec_vperm(vector unsigned short __a, vector unsigned short __b,
8207 vector unsigned char __c) {
8212 vector bool short __a, vector bool short __b, vector unsigned char __c) {
8217 vec_vperm(vector pixel __a, vector pixel __b, vector unsigned char __c) {
8223 vector unsigned char __c) {
8227 static __inline__ vector unsigned int __ATTRS_o_ai
8228 vec_vperm(vector unsigned int __a, vector unsigned int __b,
8229 vector unsigned char __c) {
8234 vec_vperm(vector bool int __a, vector bool int __b, vector unsigned char __c) {
8239 vec_vperm(vector float __a, vector float __b, vector unsigned char __c) {
8245 vector long long __a, vector long long __b, vector unsigned char __c) {
8249 static __inline__ vector unsigned long long __ATTRS_o_ai
8250 vec_vperm(vector unsigned long long __a, vector unsigned long long __b,
8251 vector unsigned char __c) {
8256 vec_vperm(vector double __a, vector double __b, vector unsigned char __c) {
8287 vec_rl(vector signed char __a, vector unsigned char __b) {
8291 static __inline__ vector unsigned char __ATTRS_o_ai
8292 vec_rl(vector unsigned char __a, vector unsigned char __b) {
8293 return (vector unsigned char)__builtin_altivec_vrlb((vector char)__a, __b);
8297 vector unsigned short __b) {
8301 static __inline__ vector unsigned short __ATTRS_o_ai
8302 vec_rl(vector unsigned short __a, vector unsigned short __b) {
8303 return (vector unsigned short)__builtin_altivec_vrlh((vector short)__a, __b);
8307 vector unsigned int __b) {
8311 static __inline__ vector unsigned int __ATTRS_o_ai
8312 vec_rl(vector unsigned int __a, vector unsigned int __b) {
8313 return (vector unsigned int)__builtin_altivec_vrlw((vector int)__a, __b);
8318 vec_rl(vector signed long long __a, vector unsigned long long __b) {
8322 static __inline__ vector unsigned long long __ATTRS_o_ai
8323 vec_rl(vector unsigned long long __a, vector unsigned long long __b) {
8324 return (vector unsigned long long)__builtin_altivec_vrld(
8331 vec_rl(vector signed __int128 __a, vector unsigned __int128 __b) {
8332 return (vector signed __int128)(((vector unsigned __int128)__b
8333 << (vector unsigned __int128)__a) |
8334 ((vector unsigned __int128)__b >>
8336 sizeof(vector unsigned __int128)) -
8337 (vector unsigned __int128)__a)));
8340 static __inline__ vector unsigned __int128 __ATTRS_o_ai
8341 vec_rl(vector unsigned __int128 __a, vector unsigned __int128 __b) {
8342 return (__b << __a)|(__b >> ((__CHAR_BIT__ * sizeof(vector unsigned __int128)) - __a));
8348 static __inline__ vector unsigned int __ATTRS_o_ai
8349 vec_rlmi(vector unsigned int __a, vector unsigned int __b,
8350 vector unsigned int __c) {
8354 static __inline__ vector unsigned long long __ATTRS_o_ai
8355 vec_rlmi(vector unsigned long long __a, vector unsigned long long __b,
8356 vector unsigned long long __c) {
8362 static __inline__ vector unsigned __int128 __ATTRS_o_ai
8363 vec_rlmi(vector unsigned __int128 __a, vector unsigned __int128 __b,
8364 vector unsigned __int128 __c) {
8372 (vector unsigned __int128)__a, (vector unsigned __int128)__c,
8373 (vector unsigned __int128)__b);
8379 static __inline__ vector unsigned int __ATTRS_o_ai
8380 vec_rlnm(vector unsigned int __a, vector unsigned int __b,
8381 vector unsigned int __c) {
8382 vector unsigned int OneByte = { 0x8, 0x8, 0x8, 0x8 };
8386 static __inline__ vector unsigned long long __ATTRS_o_ai
8387 vec_rlnm(vector unsigned long long __a, vector unsigned long long __b,
8388 vector unsigned long long __c) {
8389 vector unsigned long long OneByte = { 0x8, 0x8 };
8395 static __inline__ vector unsigned __int128 __ATTRS_o_ai
8396 vec_rlnm(vector unsigned __int128 __a, vector unsigned __int128 __b,
8397 vector unsigned __int128 __c) {
8399 vector unsigned char TmpB = (vector unsigned char)__b;
8400 vector unsigned char TmpC = (vector unsigned char)__c;
8401 vector unsigned char MaskAndShift =
8409 return __builtin_altivec_vrlqnm(__a, (vector unsigned __int128) MaskAndShift);
8416 vector unsigned char TmpB = (vector unsigned char)__b;
8417 vector unsigned char TmpC = (vector unsigned char)__c;
8418 vector unsigned char MaskAndShift =
8427 (vector unsigned __int128)__a, (vector unsigned __int128)MaskAndShift);
8434 vec_vrlb(vector signed char __a, vector unsigned char __b) {
8438 static __inline__ vector unsigned char __ATTRS_o_ai
8439 vec_vrlb(vector unsigned char __a, vector unsigned char __b) {
8440 return (vector unsigned char)__builtin_altivec_vrlb((vector char)__a, __b);
8446 vec_vrlh(vector short __a, vector unsigned short __b) {
8450 static __inline__ vector unsigned short __ATTRS_o_ai
8451 vec_vrlh(vector unsigned short __a, vector unsigned short __b) {
8452 return (vector unsigned short)__builtin_altivec_vrlh((vector short)__a, __b);
8458 vector unsigned int __b) {
8462 static __inline__ vector unsigned int __ATTRS_o_ai
8463 vec_vrlw(vector unsigned int __a, vector unsigned int __b) {
8464 return (vector unsigned int)__builtin_altivec_vrlw((vector int)__a, __b);
8589 vector signed char __a, vector signed char __b, vector unsigned char __c) {
8598 static __inline__ vector unsigned char __ATTRS_o_ai
8599 vec_sel(vector unsigned char __a, vector unsigned char __b,
8600 vector unsigned char __c) {
8604 static __inline__ vector unsigned char __ATTRS_o_ai vec_sel(
8605 vector unsigned char __a, vector unsigned char __b, vector bool char __c) {
8606 return (__a & ~(vector unsigned char)__c) | (__b & (vector unsigned char)__c);
8610 vec_sel(vector bool char __a, vector bool char __b, vector unsigned char __c) {
8622 vector unsigned short __c) {
8632 static __inline__ vector unsigned short __ATTRS_o_ai
8633 vec_sel(vector unsigned short __a, vector unsigned short __b,
8634 vector unsigned short __c) {
8638 static __inline__ vector unsigned short __ATTRS_o_ai
8639 vec_sel(vector unsigned short __a, vector unsigned short __b,
8641 return (__a & ~(vector unsigned short)__c) |
8642 (__b & (vector unsigned short)__c);
8646 vector bool short __a, vector bool short __b, vector unsigned short __c) {
8657 vector unsigned int __c) {
8667 static __inline__ vector unsigned int __ATTRS_o_ai vec_sel(
8668 vector unsigned int __a, vector unsigned int __b, vector unsigned int __c) {
8672 static __inline__ vector unsigned int __ATTRS_o_ai
8673 vec_sel(vector unsigned int __a, vector unsigned int __b, vector bool int __c) {
8674 return (__a & ~(vector unsigned int)__c) | (__b & (vector unsigned int)__c);
8678 vec_sel(vector bool int __a, vector bool int __b, vector unsigned int __c) {
8690 vector unsigned int __c) {
8713 vec_sel(vector double __a, vector double __b, vector unsigned long long __c) {
8727 vector unsigned long long __c) {
8741 vector unsigned long long __c) {
8746 static __inline__ vector unsigned long long __ATTRS_o_ai
8747 vec_sel(vector unsigned long long __a, vector unsigned long long __b,
8749 return (__a & ~(vector unsigned long long)__c) |
8750 (__b & (vector unsigned long long)__c);
8753 static __inline__ vector unsigned long long __ATTRS_o_ai
8754 vec_sel(vector unsigned long long __a, vector unsigned long long __b,
8755 vector unsigned long long __c) {
8763 vector signed char __a, vector signed char __b, vector unsigned char __c) {
8772 static __inline__ vector unsigned char __ATTRS_o_ai
8773 vec_vsel(vector unsigned char __a, vector unsigned char __b,
8774 vector unsigned char __c) {
8778 static __inline__ vector unsigned char __ATTRS_o_ai vec_vsel(
8779 vector unsigned char __a, vector unsigned char __b, vector bool char __c) {
8780 return (__a & ~(vector unsigned char)__c) | (__b & (vector unsigned char)__c);
8784 vec_vsel(vector bool char __a, vector bool char __b, vector unsigned char __c) {
8795 vec_vsel(vector short __a, vector short __b, vector unsigned short __c) {
8805 static __inline__ vector unsigned short __ATTRS_o_ai
8806 vec_vsel(vector unsigned short __a, vector unsigned short __b,
8807 vector unsigned short __c) {
8811 static __inline__ vector unsigned short __ATTRS_o_ai
8812 vec_vsel(vector unsigned short __a, vector unsigned short __b,
8814 return (__a & ~(vector unsigned short)__c) |
8815 (__b & (vector unsigned short)__c);
8819 vector bool short __a, vector bool short __b, vector unsigned short __c) {
8830 vector unsigned int __c) {
8840 static __inline__ vector unsigned int __ATTRS_o_ai vec_vsel(
8841 vector unsigned int __a, vector unsigned int __b, vector unsigned int __c) {
8845 static __inline__ vector unsigned int __ATTRS_o_ai vec_vsel(
8846 vector unsigned int __a, vector unsigned int __b, vector bool int __c) {
8847 return (__a & ~(vector unsigned int)__c) | (__b & (vector unsigned int)__c);
8851 vec_vsel(vector bool int __a, vector bool int __b, vector unsigned int __c) {
8863 vector unsigned int __c) {
8881 static __inline__ vector unsigned char __ATTRS_o_ai
8882 vec_sl(vector unsigned char __a, vector unsigned char __b) {
8884 (vector unsigned char)(sizeof(unsigned char) * __CHAR_BIT__));
8888 vec_sl(vector signed char __a, vector unsigned char __b) {
8889 return (vector signed char)vec_sl((vector unsigned char)__a, __b);
8892 static __inline__ vector unsigned short __ATTRS_o_ai
8893 vec_sl(vector unsigned short __a, vector unsigned short __b) {
8894 return __a << (__b % (vector unsigned short)(sizeof(unsigned short) *
8899 vector unsigned short __b) {
8900 return (vector short)vec_sl((vector unsigned short)__a, __b);
8903 static __inline__ vector unsigned int __ATTRS_o_ai
8904 vec_sl(vector unsigned int __a, vector unsigned int __b) {
8906 (vector unsigned int)(sizeof(unsigned int) * __CHAR_BIT__));
8910 vector unsigned int __b) {
8911 return (vector int)vec_sl((vector unsigned int)__a, __b);
8915 static __inline__ vector unsigned long long __ATTRS_o_ai
8916 vec_sl(vector unsigned long long __a, vector unsigned long long __b) {
8917 return __a << (__b % (vector unsigned long long)(sizeof(unsigned long long) *
8922 vec_sl(vector long long __a, vector unsigned long long __b) {
8923 return (vector long long)vec_sl((vector unsigned long long)__a, __b);
8926 static __inline__ vector unsigned char __ATTRS_o_ai
8927 vec_vspltb(vector unsigned char __a, unsigned char __b);
8928 static __inline__ vector unsigned long long __ATTRS_o_ai
8929 vec_sl(vector unsigned long long __a, vector unsigned long long __b) {
8930 __b %= (vector unsigned long long)(sizeof(unsigned long long) * __CHAR_BIT__);
8941 (vector signed int)vec_vspltb((vector unsigned char)__b, 0));
8945 (vector signed int)vec_vspltb((vector unsigned char)__b, 15));
8955 (vector signed int)vec_vspltb((vector unsigned char)__b, 0));
8956 return (vector unsigned long long)__builtin_shufflevector(__rightelt,
8961 (vector signed int)vec_vspltb((vector unsigned char)__b, 15));
8962 return (vector unsigned long long)__builtin_shufflevector(__leftelt,
8968 vec_sl(vector long long __a, vector unsigned long long __b) {
8969 return (vector long long)vec_sl((vector unsigned long long)__a, __b);
8978 vec_vslb(vector signed char __a, vector unsigned char __b) {
8982 static __inline__ vector unsigned char __ATTRS_o_ai
8983 vec_vslb(vector unsigned char __a, vector unsigned char __b) {
8992 vec_vslh(vector short __a, vector unsigned short __b) {
8996 static __inline__ vector unsigned short __ATTRS_o_ai
8997 vec_vslh(vector unsigned short __a, vector unsigned short __b) {
9006 vector unsigned int __b) {
9010 static __inline__ vector unsigned int __ATTRS_o_ai
9011 vec_vslw(vector unsigned int __a, vector unsigned int __b) {
9020 vector signed char __a, vector signed char __b, unsigned const int __c) {
9021 unsigned char __d = __c & 0x0F;
9024 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9031 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9037 static __inline__ vector unsigned char __ATTRS_o_ai
9038 vec_sld(vector unsigned char __a, vector unsigned char __b,
9039 unsigned const int __c) {
9040 unsigned char __d = __c & 0x0F;
9043 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9050 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9057 vec_sld(vector bool char __a, vector bool char __b, unsigned const int __c) {
9058 unsigned char __d = __c & 0x0F;
9061 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9068 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9075 vector signed short __a, vector signed short __b, unsigned const int __c) {
9076 unsigned char __d = __c & 0x0F;
9079 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9086 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9092 static __inline__ vector unsigned short __ATTRS_o_ai
9093 vec_sld(vector unsigned short __a, vector unsigned short __b,
9094 unsigned const int __c) {
9095 unsigned char __d = __c & 0x0F;
9098 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9105 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9112 vec_sld(vector bool short __a, vector bool short __b, unsigned const int __c) {
9113 unsigned char __d = __c & 0x0F;
9116 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9123 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9131 unsigned const int __c) {
9132 unsigned char __d = __c & 0x0F;
9135 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9142 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9149 vec_sld(vector signed int __a, vector signed int __b, unsigned const int __c) {
9150 unsigned char __d = __c & 0x0F;
9153 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9160 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9166 static __inline__ vector unsigned int __ATTRS_o_ai vec_sld(
9167 vector unsigned int __a, vector unsigned int __b, unsigned const int __c) {
9168 unsigned char __d = __c & 0x0F;
9171 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9178 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9186 unsigned const int __c) {
9187 unsigned char __d = __c & 0x0F;
9190 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9197 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9205 unsigned const int __c) {
9206 unsigned char __d = __c & 0x0F;
9209 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9216 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9225 unsigned const int __c) {
9226 unsigned char __d = __c & 0x0F;
9229 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9236 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9244 unsigned const int __c) {
9245 unsigned char __d = __c & 0x0F;
9248 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9255 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9261 static __inline__ vector unsigned long long __ATTRS_o_ai
9262 vec_sld(vector unsigned long long __a, vector unsigned long long __b,
9263 unsigned const int __c) {
9264 unsigned char __d = __c & 0x0F;
9267 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9274 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9282 unsigned const int __c) {
9283 unsigned char __d = __c & 0x0F;
9286 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9293 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9302 vector signed char __a, vector signed char __b, unsigned const int __c) {
9306 static __inline__ vector unsigned char __ATTRS_o_ai
9307 vec_sldw(vector unsigned char __a, vector unsigned char __b,
9308 unsigned const int __c) {
9313 vector signed short __a, vector signed short __b, unsigned const int __c) {
9317 static __inline__ vector unsigned short __ATTRS_o_ai
9318 vec_sldw(vector unsigned short __a, vector unsigned short __b,
9319 unsigned const int __c) {
9324 vec_sldw(vector signed int __a, vector signed int __b, unsigned const int __c) {
9328 static __inline__ vector unsigned int __ATTRS_o_ai vec_sldw(
9329 vector unsigned int __a, vector unsigned int __b, unsigned const int __c) {
9334 vector float __a, vector float __b, unsigned const int __c) {
9341 unsigned const int __c) {
9345 static __inline__ vector unsigned long long __ATTRS_o_ai
9346 vec_sldw(vector unsigned long long __a, vector unsigned long long __b,
9347 unsigned const int __c) {
9352 vector double __a, vector double __b, unsigned const int __c) {
9359 static __inline__ vector unsigned char __ATTRS_o_ai
9360 vec_slv(vector unsigned char __a, vector unsigned char __b) {
9365 static __inline__ vector unsigned char __ATTRS_o_ai
9366 vec_srv(vector unsigned char __a, vector unsigned char __b) {
9374 vec_vsldoi(vector signed char __a, vector signed char __b, unsigned char __c) {
9375 unsigned char __d = __c & 0x0F;
9378 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9385 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9391 static __inline__ vector unsigned char __ATTRS_o_ai vec_vsldoi(
9392 vector unsigned char __a, vector unsigned char __b, unsigned char __c) {
9393 unsigned char __d = __c & 0x0F;
9396 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9403 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9411 unsigned char __c) {
9412 unsigned char __d = __c & 0x0F;
9415 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9422 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9428 static __inline__ vector unsigned short __ATTRS_o_ai vec_vsldoi(
9429 vector unsigned short __a, vector unsigned short __b, unsigned char __c) {
9430 unsigned char __d = __c & 0x0F;
9433 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9440 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9448 unsigned char __c) {
9449 unsigned char __d = __c & 0x0F;
9452 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9459 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9467 unsigned char __c) {
9468 unsigned char __d = __c & 0x0F;
9471 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9478 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9484 static __inline__ vector unsigned int __ATTRS_o_ai vec_vsldoi(
9485 vector unsigned int __a, vector unsigned int __b, unsigned char __c) {
9486 unsigned char __d = __c & 0x0F;
9489 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9496 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9504 unsigned char __c) {
9505 unsigned char __d = __c & 0x0F;
9508 __b, __a, (vector unsigned char)(16 - __d, 17 - __d, 18 - __d, 19 - __d,
9515 (vector unsigned char)(__d, __d + 1, __d + 2, __d + 3, __d + 4, __d + 5,
9524 vec_sll(vector signed char __a, vector unsigned char __b) {
9530 vec_sll(vector signed char __a, vector unsigned short __b) {
9536 vec_sll(vector signed char __a, vector unsigned int __b) {
9541 static __inline__ vector unsigned char __ATTRS_o_ai
9542 vec_sll(vector unsigned char __a, vector unsigned char __b) {
9543 return (vector unsigned char)__builtin_altivec_vsl((vector int)__a,
9547 static __inline__ vector unsigned char __ATTRS_o_ai
9548 vec_sll(vector unsigned char __a, vector unsigned short __b) {
9549 return (vector unsigned char)__builtin_altivec_vsl((vector int)__a,
9553 static __inline__ vector unsigned char __ATTRS_o_ai
9554 vec_sll(vector unsigned char __a, vector unsigned int __b) {
9555 return (vector unsigned char)__builtin_altivec_vsl((vector int)__a,
9560 vec_sll(vector bool char __a, vector unsigned char __b) {
9566 vec_sll(vector bool char __a, vector unsigned short __b) {
9572 vec_sll(vector bool char __a, vector unsigned int __b) {
9578 vector unsigned char __b) {
9583 vector unsigned short __b) {
9588 vector unsigned int __b) {
9592 static __inline__ vector unsigned short __ATTRS_o_ai
9593 vec_sll(vector unsigned short __a, vector unsigned char __b) {
9594 return (vector unsigned short)__builtin_altivec_vsl((vector int)__a,
9598 static __inline__ vector unsigned short __ATTRS_o_ai
9599 vec_sll(vector unsigned short __a, vector unsigned short __b) {
9600 return (vector unsigned short)__builtin_altivec_vsl((vector int)__a,
9604 static __inline__ vector unsigned short __ATTRS_o_ai
9605 vec_sll(vector unsigned short __a, vector unsigned int __b) {
9606 return (vector unsigned short)__builtin_altivec_vsl((vector int)__a,
9611 vec_sll(vector bool short __a, vector unsigned char __b) {
9617 vec_sll(vector bool short __a, vector unsigned short __b) {
9623 vec_sll(vector bool short __a, vector unsigned int __b) {
9629 vector unsigned char __b) {
9634 vector unsigned short __b) {
9639 vector unsigned int __b) {
9644 vector unsigned char __b) {
9649 vector unsigned short __b) {
9654 vector unsigned int __b) {
9658 static __inline__ vector unsigned int __ATTRS_o_ai
9659 vec_sll(vector unsigned int __a, vector unsigned char __b) {
9660 return (vector unsigned int)__builtin_altivec_vsl((vector int)__a,
9664 static __inline__ vector unsigned int __ATTRS_o_ai
9665 vec_sll(vector unsigned int __a, vector unsigned short __b) {
9666 return (vector unsigned int)__builtin_altivec_vsl((vector int)__a,
9670 static __inline__ vector unsigned int __ATTRS_o_ai
9671 vec_sll(vector unsigned int __a, vector unsigned int __b) {
9672 return (vector unsigned int)__builtin_altivec_vsl((vector int)__a,
9677 vec_sll(vector bool int __a, vector unsigned char __b) {
9683 vec_sll(vector bool int __a, vector unsigned short __b) {
9689 vec_sll(vector bool int __a, vector unsigned int __b) {
9696 vec_sll(vector signed long long __a, vector unsigned char __b) {
9701 static __inline__ vector unsigned long long __ATTRS_o_ai
9702 vec_sll(vector unsigned long long __a, vector unsigned char __b) {
9703 return (vector unsigned long long)__builtin_altivec_vsl((vector int)__a,
9711 vec_vsl(vector signed char __a, vector unsigned char __b) {
9717 vec_vsl(vector signed char __a, vector unsigned short __b) {
9723 vec_vsl(vector signed char __a, vector unsigned int __b) {
9728 static __inline__ vector unsigned char __ATTRS_o_ai
9729 vec_vsl(vector unsigned char __a, vector unsigned char __b) {
9730 return (vector unsigned char)__builtin_altivec_vsl((vector int)__a,
9734 static __inline__ vector unsigned char __ATTRS_o_ai
9735 vec_vsl(vector unsigned char __a, vector unsigned short __b) {
9736 return (vector unsigned char)__builtin_altivec_vsl((vector int)__a,
9740 static __inline__ vector unsigned char __ATTRS_o_ai
9741 vec_vsl(vector unsigned char __a, vector unsigned int __b) {
9742 return (vector unsigned char)__builtin_altivec_vsl((vector int)__a,
9747 vec_vsl(vector bool char __a, vector unsigned char __b) {
9753 vec_vsl(vector bool char __a, vector unsigned short __b) {
9759 vec_vsl(vector bool char __a, vector unsigned int __b) {
9765 vector unsigned char __b) {
9770 vector unsigned short __b) {
9775 vector unsigned int __b) {
9779 static __inline__ vector unsigned short __ATTRS_o_ai
9780 vec_vsl(vector unsigned short __a, vector unsigned char __b) {
9781 return (vector unsigned short)__builtin_altivec_vsl((vector int)__a,
9785 static __inline__ vector unsigned short __ATTRS_o_ai
9786 vec_vsl(vector unsigned short __a, vector unsigned short __b) {
9787 return (vector unsigned short)__builtin_altivec_vsl((vector int)__a,
9791 static __inline__ vector unsigned short __ATTRS_o_ai
9792 vec_vsl(vector unsigned short __a, vector unsigned int __b) {
9793 return (vector unsigned short)__builtin_altivec_vsl((vector int)__a,
9798 vec_vsl(vector bool short __a, vector unsigned char __b) {
9804 vec_vsl(vector bool short __a, vector unsigned short __b) {
9810 vec_vsl(vector bool short __a, vector unsigned int __b) {
9816 vector unsigned char __b) {
9821 vector unsigned short __b) {
9826 vector unsigned int __b) {
9831 vector unsigned char __b) {
9836 vector unsigned short __b) {
9841 vector unsigned int __b) {
9845 static __inline__ vector unsigned int __ATTRS_o_ai
9846 vec_vsl(vector unsigned int __a, vector unsigned char __b) {
9847 return (vector unsigned int)__builtin_altivec_vsl((vector int)__a,
9851 static __inline__ vector unsigned int __ATTRS_o_ai
9852 vec_vsl(vector unsigned int __a, vector unsigned short __b) {
9853 return (vector unsigned int)__builtin_altivec_vsl((vector int)__a,
9857 static __inline__ vector unsigned int __ATTRS_o_ai
9858 vec_vsl(vector unsigned int __a, vector unsigned int __b) {
9859 return (vector unsigned int)__builtin_altivec_vsl((vector int)__a,
9864 vec_vsl(vector bool int __a, vector unsigned char __b) {
9870 vec_vsl(vector bool int __a, vector unsigned short __b) {
9876 vec_vsl(vector bool int __a, vector unsigned int __b) {
9890 vec_slo(vector signed char __a, vector unsigned char __b) {
9895 static __inline__ vector unsigned char __ATTRS_o_ai
9896 vec_slo(vector unsigned char __a, vector signed char __b) {
9897 return (vector unsigned char)__builtin_altivec_vslo((vector int)__a,
9901 static __inline__ vector unsigned char __ATTRS_o_ai
9902 vec_slo(vector unsigned char __a, vector unsigned char __b) {
9903 return (vector unsigned char)__builtin_altivec_vslo((vector int)__a,
9913 vector unsigned char __b) {
9917 static __inline__ vector unsigned short __ATTRS_o_ai
9918 vec_slo(vector unsigned short __a, vector signed char __b) {
9919 return (vector unsigned short)__builtin_altivec_vslo((vector int)__a,
9923 static __inline__ vector unsigned short __ATTRS_o_ai
9924 vec_slo(vector unsigned short __a, vector unsigned char __b) {
9925 return (vector unsigned short)__builtin_altivec_vslo((vector int)__a,
9935 vector unsigned char __b) {
9945 vector unsigned char __b) {
9949 static __inline__ vector unsigned int __ATTRS_o_ai
9950 vec_slo(vector unsigned int __a, vector signed char __b) {
9951 return (vector unsigned int)__builtin_altivec_vslo((vector int)__a,
9955 static __inline__ vector unsigned int __ATTRS_o_ai
9956 vec_slo(vector unsigned int __a, vector unsigned char __b) {
9957 return (vector unsigned int)__builtin_altivec_vslo((vector int)__a,
9967 vector unsigned char __b) {
9979 vec_slo(vector signed long long __a, vector unsigned char __b) {
9984 static __inline__ vector unsigned long long __ATTRS_o_ai
9985 vec_slo(vector unsigned long long __a, vector signed char __b) {
9986 return (vector unsigned long long)__builtin_altivec_vslo((vector int)__a,
9990 static __inline__ vector unsigned long long __ATTRS_o_ai
9991 vec_slo(vector unsigned long long __a, vector unsigned char __b) {
9992 return (vector unsigned long long)__builtin_altivec_vslo((vector int)__a,
10006 vec_vslo(vector signed char __a, vector unsigned char __b) {
10011 static __inline__ vector unsigned char __ATTRS_o_ai
10012 vec_vslo(vector unsigned char __a, vector signed char __b) {
10013 return (vector unsigned char)__builtin_altivec_vslo((vector int)__a,
10017 static __inline__ vector unsigned char __ATTRS_o_ai
10018 vec_vslo(vector unsigned char __a, vector unsigned char __b) {
10019 return (vector unsigned char)__builtin_altivec_vslo((vector int)__a,
10029 vector unsigned char __b) {
10033 static __inline__ vector unsigned short __ATTRS_o_ai
10034 vec_vslo(vector unsigned short __a, vector signed char __b) {
10035 return (vector unsigned short)__builtin_altivec_vslo((vector int)__a,
10039 static __inline__ vector unsigned short __ATTRS_o_ai
10040 vec_vslo(vector unsigned short __a, vector unsigned char __b) {
10041 return (vector unsigned short)__builtin_altivec_vslo((vector int)__a,
10051 vector unsigned char __b) {
10061 vector unsigned char __b) {
10065 static __inline__ vector unsigned int __ATTRS_o_ai
10066 vec_vslo(vector unsigned int __a, vector signed char __b) {
10067 return (vector unsigned int)__builtin_altivec_vslo((vector int)__a,
10071 static __inline__ vector unsigned int __ATTRS_o_ai
10072 vec_vslo(vector unsigned int __a, vector unsigned char __b) {
10073 return (vector unsigned int)__builtin_altivec_vslo((vector int)__a,
10083 vector unsigned char __b) {
10090 vec_splat(vector signed char __a, unsigned const int __b) {
10091 return vec_perm(__a, __a, (vector unsigned char)(__b & 0x0F));
10094 static __inline__ vector unsigned char __ATTRS_o_ai
10095 vec_splat(vector unsigned char __a, unsigned const int __b) {
10096 return vec_perm(__a, __a, (vector unsigned char)(__b & 0x0F));
10100 vec_splat(vector bool char __a, unsigned const int __b) {
10101 return vec_perm(__a, __a, (vector unsigned char)(__b & 0x0F));
10105 vec_splat(vector signed short __a, unsigned const int __b) {
10106 unsigned char b0 = (__b & 0x07) * 2;
10107 unsigned char b1 = b0 + 1;
10109 (vector unsigned char)(b0, b1, b0, b1, b0, b1, b0, b1, b0, b1,
10113 static __inline__ vector unsigned short __ATTRS_o_ai
10114 vec_splat(vector unsigned short __a, unsigned const int __b) {
10115 unsigned char b0 = (__b & 0x07) * 2;
10116 unsigned char b1 = b0 + 1;
10118 (vector unsigned char)(b0, b1, b0, b1, b0, b1, b0, b1, b0, b1,
10123 vec_splat(vector bool short __a, unsigned const int __b) {
10124 unsigned char b0 = (__b & 0x07) * 2;
10125 unsigned char b1 = b0 + 1;
10127 (vector unsigned char)(b0, b1, b0, b1, b0, b1, b0, b1, b0, b1,
10132 unsigned const int __b) {
10133 unsigned char b0 = (__b & 0x07) * 2;
10134 unsigned char b1 = b0 + 1;
10136 (vector unsigned char)(b0, b1, b0, b1, b0, b1, b0, b1, b0, b1,
10141 vec_splat(vector signed int __a, unsigned const int __b) {
10142 unsigned char b0 = (__b & 0x03) * 4;
10143 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3;
10145 (vector unsigned char)(b0, b1, b2, b3, b0, b1, b2, b3, b0, b1,
10149 static __inline__ vector unsigned int __ATTRS_o_ai
10150 vec_splat(vector unsigned int __a, unsigned const int __b) {
10151 unsigned char b0 = (__b & 0x03) * 4;
10152 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3;
10154 (vector unsigned char)(b0, b1, b2, b3, b0, b1, b2, b3, b0, b1,
10159 vec_splat(vector bool int __a, unsigned const int __b) {
10160 unsigned char b0 = (__b & 0x03) * 4;
10161 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3;
10163 (vector unsigned char)(b0, b1, b2, b3, b0, b1, b2, b3, b0, b1,
10168 unsigned const int __b) {
10169 unsigned char b0 = (__b & 0x03) * 4;
10170 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3;
10172 (vector unsigned char)(b0, b1, b2, b3, b0, b1, b2, b3, b0, b1,
10178 unsigned const int __b) {
10179 unsigned char b0 = (__b & 0x01) * 8;
10180 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3, b4 = b0 + 4, b5 = b0 + 5,
10183 (vector unsigned char)(b0, b1, b2, b3, b4, b5, b6, b7, b0, b1,
10187 vec_splat(vector bool long long __a, unsigned const int __b) {
10188 unsigned char b0 = (__b & 0x01) * 8;
10189 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3, b4 = b0 + 4, b5 = b0 + 5,
10192 (vector unsigned char)(b0, b1, b2, b3, b4, b5, b6, b7, b0, b1,
10196 vec_splat(vector signed long long __a, unsigned const int __b) {
10197 unsigned char b0 = (__b & 0x01) * 8;
10198 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3, b4 = b0 + 4, b5 = b0 + 5,
10201 (vector unsigned char)(b0, b1, b2, b3, b4, b5, b6, b7, b0, b1,
10204 static __inline__ vector unsigned long long __ATTRS_o_ai
10205 vec_splat(vector unsigned long long __a, unsigned const int __b) {
10206 unsigned char b0 = (__b & 0x01) * 8;
10207 unsigned char b1 = b0 + 1, b2 = b0 + 2, b3 = b0 + 3, b4 = b0 + 4, b5 = b0 + 5,
10210 (vector unsigned char)(b0, b1, b2, b3, b4, b5, b6, b7, b0, b1,
10220 vec_vspltb(vector signed char __a, unsigned char __b) {
10221 return vec_perm(__a, __a, (vector unsigned char)(__b));
10224 static __inline__ vector unsigned char __ATTRS_o_ai
10225 vec_vspltb(vector unsigned char __a, unsigned char __b) {
10226 return vec_perm(__a, __a, (vector unsigned char)(__b));
10230 unsigned char __b) {
10231 return vec_perm(__a, __a, (vector unsigned char)(__b));
10239 unsigned char __b) {
10241 unsigned char b1 = __b + 1;
10243 (vector unsigned char)(__b, b1, __b, b1, __b, b1, __b, b1,
10247 static __inline__ vector unsigned short __ATTRS_o_ai
10248 vec_vsplth(vector unsigned short __a, unsigned char __b) {
10250 unsigned char b1 = __b + 1;
10252 (vector unsigned char)(__b, b1, __b, b1, __b, b1, __b, b1,
10257 vec_vsplth(vector bool short __a, unsigned char __b) {
10259 unsigned char b1 = __b + 1;
10261 (vector unsigned char)(__b, b1, __b, b1, __b, b1, __b, b1,
10266 unsigned char __b) {
10268 unsigned char b1 = __b + 1;
10270 (vector unsigned char)(__b, b1, __b, b1, __b, b1, __b, b1,
10279 unsigned char __b) {
10281 unsigned char b1 = __b + 1, b2 = __b + 2, b3 = __b + 3;
10283 (vector unsigned char)(__b, b1, b2, b3, __b, b1, b2, b3, __b,
10287 static __inline__ vector unsigned int __ATTRS_o_ai
10288 vec_vspltw(vector unsigned int __a, unsigned char __b) {
10290 unsigned char b1 = __b + 1, b2 = __b + 2, b3 = __b + 3;
10292 (vector unsigned char)(__b, b1, b2, b3, __b, b1, b2, b3, __b,
10297 unsigned char __b) {
10299 unsigned char b1 = __b + 1, b2 = __b + 2, b3 = __b + 3;
10301 (vector unsigned char)(__b, b1, b2, b3, __b, b1, b2, b3, __b,
10306 unsigned char __b) {
10308 unsigned char b1 = __b + 1, b2 = __b + 2, b3 = __b + 3;
10310 (vector unsigned char)(__b, b1, b2, b3, __b, b1, b2, b3, __b,
10367 static __inline__ vector unsigned char __ATTRS_o_ai
10368 vec_splat_u8(unsigned char __a) {
10369 return (vector unsigned char)(__a);
10375 static __inline__ vector unsigned short __ATTRS_o_ai
10377 return (vector unsigned short)(__a);
10383 static __inline__ vector unsigned int __ATTRS_o_ai
10385 return (vector unsigned int)(__a);
10392 static __inline__ vector unsigned char __ATTRS_o_ai
10393 vec_sr(vector unsigned char __a, vector unsigned char __b) {
10395 (__b % (vector unsigned char)(sizeof(unsigned char) * __CHAR_BIT__));
10399 vec_sr(vector signed char __a, vector unsigned char __b) {
10400 return (vector signed char)vec_sr((vector unsigned char)__a, __b);
10403 static __inline__ vector unsigned short __ATTRS_o_ai
10404 vec_sr(vector unsigned short __a, vector unsigned short __b) {
10406 (__b % (vector unsigned short)(sizeof(unsigned short) * __CHAR_BIT__));
10410 vector unsigned short __b) {
10411 return (vector short)vec_sr((vector unsigned short)__a, __b);
10414 static __inline__ vector unsigned int __ATTRS_o_ai
10415 vec_sr(vector unsigned int __a, vector unsigned int __b) {
10417 (__b % (vector unsigned int)(sizeof(unsigned int) * __CHAR_BIT__));
10421 vector unsigned int __b) {
10422 return (vector int)vec_sr((vector unsigned int)__a, __b);
10426 static __inline__ vector unsigned long long __ATTRS_o_ai
10427 vec_sr(vector unsigned long long __a, vector unsigned long long __b) {
10428 return __a >> (__b % (vector unsigned long long)(sizeof(unsigned long long) *
10433 vec_sr(vector long long __a, vector unsigned long long __b) {
10434 return (vector long long)vec_sr((vector unsigned long long)__a, __b);
10437 static __inline__ vector unsigned long long __ATTRS_o_ai
10438 vec_sr(vector unsigned long long __a, vector unsigned long long __b) {
10439 __b %= (vector unsigned long long)(sizeof(unsigned long long) * __CHAR_BIT__);
10445 vector unsigned long long __swapshift =
10447 vector unsigned long long __leftelt =
10448 (vector unsigned long long)__builtin_altivec_vsro(
10451 __leftelt = (vector unsigned long long)__builtin_altivec_vsr(
10453 (vector signed int)vec_vspltb((vector unsigned char)__swapshift, 0));
10455 __leftelt = (vector unsigned long long)__builtin_altivec_vsr(
10457 (vector signed int)vec_vspltb((vector unsigned char)__swapshift, 15));
10460 vector unsigned long long __rightelt =
10461 (vector unsigned long long)__builtin_altivec_vsro((vector signed int)__a,
10464 __rightelt = (vector unsigned long long)__builtin_altivec_vsr(
10466 (vector signed int)vec_vspltb((vector unsigned char)__b, 0));
10469 __rightelt = (vector unsigned long long)__builtin_altivec_vsr(
10471 (vector signed int)vec_vspltb((vector unsigned char)__b, 15));
10477 vec_sr(vector long long __a, vector unsigned long long __b) {
10478 return (vector long long)vec_sr((vector unsigned long long)__a, __b);
10487 vec_vsrb(vector signed char __a, vector unsigned char __b) {
10491 static __inline__ vector unsigned char __ATTRS_o_ai
10492 vec_vsrb(vector unsigned char __a, vector unsigned char __b) {
10501 vec_vsrh(vector short __a, vector unsigned short __b) {
10505 static __inline__ vector unsigned short __ATTRS_o_ai
10506 vec_vsrh(vector unsigned short __a, vector unsigned short __b) {
10515 vector unsigned int __b) {
10519 static __inline__ vector unsigned int __ATTRS_o_ai
10520 vec_vsrw(vector unsigned int __a, vector unsigned int __b) {
10527 vec_sra(vector signed char __a, vector unsigned char __b) {
10531 static __inline__ vector unsigned char __ATTRS_o_ai
10532 vec_sra(vector unsigned char __a, vector unsigned char __b) {
10533 return (vector unsigned char)__builtin_altivec_vsrab((vector char)__a, __b);
10537 vector unsigned short __b) {
10538 return __builtin_altivec_vsrah(__a, (vector unsigned short)__b);
10541 static __inline__ vector unsigned short __ATTRS_o_ai
10542 vec_sra(vector unsigned short __a, vector unsigned short __b) {
10543 return (vector unsigned short)__builtin_altivec_vsrah((vector short)__a, __b);
10547 vector unsigned int __b) {
10551 static __inline__ vector unsigned int __ATTRS_o_ai
10552 vec_sra(vector unsigned int __a, vector unsigned int __b) {
10553 return (vector unsigned int)__builtin_altivec_vsraw((vector int)__a, __b);
10558 vec_sra(vector signed long long __a, vector unsigned long long __b) {
10562 static __inline__ vector unsigned long long __ATTRS_o_ai
10563 vec_sra(vector unsigned long long __a, vector unsigned long long __b) {
10564 return (vector unsigned long long)((vector signed long long)__a >> __b);
10568 vec_sra(vector signed long long __a, vector unsigned long long __b) {
10569 __b %= (vector unsigned long long)(sizeof(unsigned long long) * __CHAR_BIT__);
10573 static __inline__ vector unsigned long long __ATTRS_o_ai
10574 vec_sra(vector unsigned long long __a, vector unsigned long long __b) {
10575 __b %= (vector unsigned long long)(sizeof(unsigned long long) * __CHAR_BIT__);
10576 return (vector unsigned long long)((vector signed long long)__a >> __b);
10583 vec_vsrab(vector signed char __a, vector unsigned char __b) {
10587 static __inline__ vector unsigned char __ATTRS_o_ai
10588 vec_vsrab(vector unsigned char __a, vector unsigned char __b) {
10589 return (vector unsigned char)__builtin_altivec_vsrab((vector char)__a, __b);
10595 vec_vsrah(vector short __a, vector unsigned short __b) {
10596 return __builtin_altivec_vsrah(__a, (vector unsigned short)__b);
10599 static __inline__ vector unsigned short __ATTRS_o_ai
10600 vec_vsrah(vector unsigned short __a, vector unsigned short __b) {
10601 return (vector unsigned short)__builtin_altivec_vsrah((vector short)__a, __b);
10607 vector unsigned int __b) {
10611 static __inline__ vector unsigned int __ATTRS_o_ai
10612 vec_vsraw(vector unsigned int __a, vector unsigned int __b) {
10613 return (vector unsigned int)__builtin_altivec_vsraw((vector int)__a, __b);
10619 vec_srl(vector signed char __a, vector unsigned char __b) {
10625 vec_srl(vector signed char __a, vector unsigned short __b) {
10631 vec_srl(vector signed char __a, vector unsigned int __b) {
10636 static __inline__ vector unsigned char __ATTRS_o_ai
10637 vec_srl(vector unsigned char __a, vector unsigned char __b) {
10638 return (vector unsigned char)__builtin_altivec_vsr((vector int)__a,
10642 static __inline__ vector unsigned char __ATTRS_o_ai
10643 vec_srl(vector unsigned char __a, vector unsigned short __b) {
10644 return (vector unsigned char)__builtin_altivec_vsr((vector int)__a,
10648 static __inline__ vector unsigned char __ATTRS_o_ai
10649 vec_srl(vector unsigned char __a, vector unsigned int __b) {
10650 return (vector unsigned char)__builtin_altivec_vsr((vector int)__a,
10655 vec_srl(vector bool char __a, vector unsigned char __b) {
10661 vec_srl(vector bool char __a, vector unsigned short __b) {
10667 vec_srl(vector bool char __a, vector unsigned int __b) {
10673 vector unsigned char __b) {
10678 vector unsigned short __b) {
10683 vector unsigned int __b) {
10687 static __inline__ vector unsigned short __ATTRS_o_ai
10688 vec_srl(vector unsigned short __a, vector unsigned char __b) {
10689 return (vector unsigned short)__builtin_altivec_vsr((vector int)__a,
10693 static __inline__ vector unsigned short __ATTRS_o_ai
10694 vec_srl(vector unsigned short __a, vector unsigned short __b) {
10695 return (vector unsigned short)__builtin_altivec_vsr((vector int)__a,
10699 static __inline__ vector unsigned short __ATTRS_o_ai
10700 vec_srl(vector unsigned short __a, vector unsigned int __b) {
10701 return (vector unsigned short)__builtin_altivec_vsr((vector int)__a,
10706 vec_srl(vector bool short __a, vector unsigned char __b) {
10712 vec_srl(vector bool short __a, vector unsigned short __b) {
10718 vec_srl(vector bool short __a, vector unsigned int __b) {
10724 vector unsigned char __b) {
10729 vector unsigned short __b) {
10734 vector unsigned int __b) {
10739 vector unsigned char __b) {
10744 vector unsigned short __b) {
10749 vector unsigned int __b) {
10753 static __inline__ vector unsigned int __ATTRS_o_ai
10754 vec_srl(vector unsigned int __a, vector unsigned char __b) {
10755 return (vector unsigned int)__builtin_altivec_vsr((vector int)__a,
10759 static __inline__ vector unsigned int __ATTRS_o_ai
10760 vec_srl(vector unsigned int __a, vector unsigned short __b) {
10761 return (vector unsigned int)__builtin_altivec_vsr((vector int)__a,
10765 static __inline__ vector unsigned int __ATTRS_o_ai
10766 vec_srl(vector unsigned int __a, vector unsigned int __b) {
10767 return (vector unsigned int)__builtin_altivec_vsr((vector int)__a,
10772 vec_srl(vector bool int __a, vector unsigned char __b) {
10778 vec_srl(vector bool int __a, vector unsigned short __b) {
10784 vec_srl(vector bool int __a, vector unsigned int __b) {
10791 vec_srl(vector signed long long __a, vector unsigned char __b) {
10796 static __inline__ vector unsigned long long __ATTRS_o_ai
10797 vec_srl(vector unsigned long long __a, vector unsigned char __b) {
10798 return (vector unsigned long long)__builtin_altivec_vsr((vector int)__a,
10806 vec_vsr(vector signed char __a, vector unsigned char __b) {
10812 vec_vsr(vector signed char __a, vector unsigned short __b) {
10818 vec_vsr(vector signed char __a, vector unsigned int __b) {
10823 static __inline__ vector unsigned char __ATTRS_o_ai
10824 vec_vsr(vector unsigned char __a, vector unsigned char __b) {
10825 return (vector unsigned char)__builtin_altivec_vsr((vector int)__a,
10829 static __inline__ vector unsigned char __ATTRS_o_ai
10830 vec_vsr(vector unsigned char __a, vector unsigned short __b) {
10831 return (vector unsigned char)__builtin_altivec_vsr((vector int)__a,
10835 static __inline__ vector unsigned char __ATTRS_o_ai
10836 vec_vsr(vector unsigned char __a, vector unsigned int __b) {
10837 return (vector unsigned char)__builtin_altivec_vsr((vector int)__a,
10842 vec_vsr(vector bool char __a, vector unsigned char __b) {
10848 vec_vsr(vector bool char __a, vector unsigned short __b) {
10854 vec_vsr(vector bool char __a, vector unsigned int __b) {
10860 vector unsigned char __b) {
10865 vector unsigned short __b) {
10870 vector unsigned int __b) {
10874 static __inline__ vector unsigned short __ATTRS_o_ai
10875 vec_vsr(vector unsigned short __a, vector unsigned char __b) {
10876 return (vector unsigned short)__builtin_altivec_vsr((vector int)__a,
10880 static __inline__ vector unsigned short __ATTRS_o_ai
10881 vec_vsr(vector unsigned short __a, vector unsigned short __b) {
10882 return (vector unsigned short)__builtin_altivec_vsr((vector int)__a,
10886 static __inline__ vector unsigned short __ATTRS_o_ai
10887 vec_vsr(vector unsigned short __a, vector unsigned int __b) {
10888 return (vector unsigned short)__builtin_altivec_vsr((vector int)__a,
10893 vec_vsr(vector bool short __a, vector unsigned char __b) {
10899 vec_vsr(vector bool short __a, vector unsigned short __b) {
10905 vec_vsr(vector bool short __a, vector unsigned int __b) {
10911 vector unsigned char __b) {
10916 vector unsigned short __b) {
10921 vector unsigned int __b) {
10926 vector unsigned char __b) {
10931 vector unsigned short __b) {
10936 vector unsigned int __b) {
10940 static __inline__ vector unsigned int __ATTRS_o_ai
10941 vec_vsr(vector unsigned int __a, vector unsigned char __b) {
10942 return (vector unsigned int)__builtin_altivec_vsr((vector int)__a,
10946 static __inline__ vector unsigned int __ATTRS_o_ai
10947 vec_vsr(vector unsigned int __a, vector unsigned short __b) {
10948 return (vector unsigned int)__builtin_altivec_vsr((vector int)__a,
10952 static __inline__ vector unsigned int __ATTRS_o_ai
10953 vec_vsr(vector unsigned int __a, vector unsigned int __b) {
10954 return (vector unsigned int)__builtin_altivec_vsr((vector int)__a,
10959 vec_vsr(vector bool int __a, vector unsigned char __b) {
10965 vec_vsr(vector bool int __a, vector unsigned short __b) {
10971 vec_vsr(vector bool int __a, vector unsigned int __b) {
10985 vec_sro(vector signed char __a, vector unsigned char __b) {
10990 static __inline__ vector unsigned char __ATTRS_o_ai
10991 vec_sro(vector unsigned char __a, vector signed char __b) {
10992 return (vector unsigned char)__builtin_altivec_vsro((vector int)__a,
10996 static __inline__ vector unsigned char __ATTRS_o_ai
10997 vec_sro(vector unsigned char __a, vector unsigned char __b) {
10998 return (vector unsigned char)__builtin_altivec_vsro((vector int)__a,
11008 vector unsigned char __b) {
11012 static __inline__ vector unsigned short __ATTRS_o_ai
11013 vec_sro(vector unsigned short __a, vector signed char __b) {
11014 return (vector unsigned short)__builtin_altivec_vsro((vector int)__a,
11018 static __inline__ vector unsigned short __ATTRS_o_ai
11019 vec_sro(vector unsigned short __a, vector unsigned char __b) {
11020 return (vector unsigned short)__builtin_altivec_vsro((vector int)__a,
11030 vector unsigned char __b) {
11040 vector unsigned char __b) {
11044 static __inline__ vector unsigned int __ATTRS_o_ai
11045 vec_sro(vector unsigned int __a, vector signed char __b) {
11046 return (vector unsigned int)__builtin_altivec_vsro((vector int)__a,
11050 static __inline__ vector unsigned int __ATTRS_o_ai
11051 vec_sro(vector unsigned int __a, vector unsigned char __b) {
11052 return (vector unsigned int)__builtin_altivec_vsro((vector int)__a,
11062 vector unsigned char __b) {
11074 vec_sro(vector signed long long __a, vector unsigned char __b) {
11079 static __inline__ vector unsigned long long __ATTRS_o_ai
11080 vec_sro(vector unsigned long long __a, vector signed char __b) {
11081 return (vector unsigned long long)__builtin_altivec_vsro((vector int)__a,
11085 static __inline__ vector unsigned long long __ATTRS_o_ai
11086 vec_sro(vector unsigned long long __a, vector unsigned char __b) {
11087 return (vector unsigned long long)__builtin_altivec_vsro((vector int)__a,
11101 vec_vsro(vector signed char __a, vector unsigned char __b) {
11106 static __inline__ vector unsigned char __ATTRS_o_ai
11107 vec_vsro(vector unsigned char __a, vector signed char __b) {
11108 return (vector unsigned char)__builtin_altivec_vsro((vector int)__a,
11112 static __inline__ vector unsigned char __ATTRS_o_ai
11113 vec_vsro(vector unsigned char __a, vector unsigned char __b) {
11114 return (vector unsigned char)__builtin_altivec_vsro((vector int)__a,
11124 vector unsigned char __b) {
11128 static __inline__ vector unsigned short __ATTRS_o_ai
11129 vec_vsro(vector unsigned short __a, vector signed char __b) {
11130 return (vector unsigned short)__builtin_altivec_vsro((vector int)__a,
11134 static __inline__ vector unsigned short __ATTRS_o_ai
11135 vec_vsro(vector unsigned short __a, vector unsigned char __b) {
11136 return (vector unsigned short)__builtin_altivec_vsro((vector int)__a,
11146 vector unsigned char __b) {
11156 vector unsigned char __b) {
11160 static __inline__ vector unsigned int __ATTRS_o_ai
11161 vec_vsro(vector unsigned int __a, vector signed char __b) {
11162 return (vector unsigned int)__builtin_altivec_vsro((vector int)__a,
11166 static __inline__ vector unsigned int __ATTRS_o_ai
11167 vec_vsro(vector unsigned int __a, vector unsigned char __b) {
11168 return (vector unsigned int)__builtin_altivec_vsro((vector int)__a,
11178 vector unsigned char __b) {
11194 static __inline__ void __ATTRS_o_ai vec_st(vector unsigned char __a, long __b,
11195 vector unsigned char *__c) {
11199 static __inline__ void __ATTRS_o_ai vec_st(vector unsigned char __a, long __b,
11200 unsigned char *__c) {
11210 unsigned char *__c) {
11229 static __inline__ void __ATTRS_o_ai vec_st(vector unsigned short __a, long __b,
11230 vector unsigned short *__c) {
11234 static __inline__ void __ATTRS_o_ai vec_st(vector unsigned short __a, long __b,
11235 unsigned short *__c) {
11245 unsigned short *__c) {
11260 unsigned short *__c) {
11278 static __inline__ void __ATTRS_o_ai vec_st(vector unsigned int __a, long __b,
11279 vector unsigned int *__c) {
11283 static __inline__ void __ATTRS_o_ai vec_st(vector unsigned int __a, long __b,
11284 unsigned int *__c) {
11294 unsigned int *__c) {
11325 static __inline__ void __ATTRS_o_ai vec_stvx(vector unsigned char __a, long __b,
11326 vector unsigned char *__c) {
11330 static __inline__ void __ATTRS_o_ai vec_stvx(vector unsigned char __a, long __b,
11331 unsigned char *__c) {
11341 unsigned char *__c) {
11360 static __inline__ void __ATTRS_o_ai vec_stvx(vector unsigned short __a, long __b,
11361 vector unsigned short *__c) {
11365 static __inline__ void __ATTRS_o_ai vec_stvx(vector unsigned short __a, long __b,
11366 unsigned short *__c) {
11376 unsigned short *__c) {
11391 unsigned short *__c) {
11410 static __inline__ void __ATTRS_o_ai vec_stvx(vector unsigned int __a, long __b,
11411 vector unsigned int *__c) {
11415 static __inline__ void __ATTRS_o_ai vec_stvx(vector unsigned int __a, long __b,
11416 unsigned int *__c) {
11426 unsigned int *__c) {
11452 static __inline__ void __ATTRS_o_ai vec_ste(vector unsigned char __a, long __b,
11453 unsigned char *__c) {
11463 unsigned char *__c) {
11472 static __inline__ void __ATTRS_o_ai vec_ste(vector unsigned short __a, long __b,
11473 unsigned short *__c) {
11483 unsigned short *__c) {
11493 unsigned short *__c) {
11501 static __inline__ void __ATTRS_o_ai vec_ste(vector unsigned int __a, long __b,
11502 unsigned int *__c) {
11512 unsigned int *__c) {
11528 static __inline__ void __ATTRS_o_ai vec_stvebx(vector unsigned char __a,
11529 long __b, unsigned char *__c) {
11539 unsigned char *__c) {
11550 static __inline__ void __ATTRS_o_ai vec_stvehx(vector unsigned short __a,
11551 long __b, unsigned short *__c) {
11561 unsigned short *__c) {
11571 unsigned short *__c) {
11582 static __inline__ void __ATTRS_o_ai vec_stvewx(vector unsigned int __a, long __b,
11583 unsigned int *__c) {
11593 unsigned int *__c) {
11614 static __inline__ void __ATTRS_o_ai vec_stl(vector unsigned char __a, int __b,
11615 vector unsigned char *__c) {
11619 static __inline__ void __ATTRS_o_ai vec_stl(vector unsigned char __a, int __b,
11620 unsigned char *__c) {
11630 unsigned char *__c) {
11649 static __inline__ void __ATTRS_o_ai vec_stl(vector unsigned short __a, int __b,
11650 vector unsigned short *__c) {
11654 static __inline__ void __ATTRS_o_ai vec_stl(vector unsigned short __a, int __b,
11655 unsigned short *__c) {
11665 unsigned short *__c) {
11680 unsigned short *__c) {
11698 static __inline__ void __ATTRS_o_ai vec_stl(vector unsigned int __a, int __b,
11699 vector unsigned int *__c) {
11703 static __inline__ void __ATTRS_o_ai vec_stl(vector unsigned int __a, int __b,
11704 unsigned int *__c) {
11714 unsigned int *__c) {
11745 static __inline__ void __ATTRS_o_ai vec_stvxl(vector unsigned char __a, int __b,
11746 vector unsigned char *__c) {
11750 static __inline__ void __ATTRS_o_ai vec_stvxl(vector unsigned char __a, int __b,
11751 unsigned char *__c) {
11761 unsigned char *__c) {
11780 static __inline__ void __ATTRS_o_ai vec_stvxl(vector unsigned short __a,
11782 vector unsigned short *__c) {
11786 static __inline__ void __ATTRS_o_ai vec_stvxl(vector unsigned short __a,
11787 int __b, unsigned short *__c) {
11797 unsigned short *__c) {
11812 unsigned short *__c) {
11831 static __inline__ void __ATTRS_o_ai vec_stvxl(vector unsigned int __a, int __b,
11832 vector unsigned int *__c) {
11836 static __inline__ void __ATTRS_o_ai vec_stvxl(vector unsigned int __a, int __b,
11837 unsigned int *__c) {
11847 unsigned int *__c) {
11883 static __inline__ vector unsigned char __ATTRS_o_ai
11884 vec_sub(vector unsigned char __a, vector unsigned char __b) {
11888 static __inline__ vector unsigned char __ATTRS_o_ai
11889 vec_sub(vector bool char __a, vector unsigned char __b) {
11890 return (vector unsigned char)__a - __b;
11893 static __inline__ vector unsigned char __ATTRS_o_ai
11894 vec_sub(vector unsigned char __a, vector bool char __b) {
11895 return __a - (vector unsigned char)__b;
11913 static __inline__ vector unsigned short __ATTRS_o_ai
11914 vec_sub(vector unsigned short __a, vector unsigned short __b) {
11918 static __inline__ vector unsigned short __ATTRS_o_ai
11919 vec_sub(vector bool short __a, vector unsigned short __b) {
11920 return (vector unsigned short)__a - __b;
11923 static __inline__ vector unsigned short __ATTRS_o_ai
11924 vec_sub(vector unsigned short __a, vector bool short __b) {
11925 return __a - (vector unsigned short)__b;
11943 static __inline__ vector unsigned int __ATTRS_o_ai
11944 vec_sub(vector unsigned int __a, vector unsigned int __b) {
11948 static __inline__ vector unsigned int __ATTRS_o_ai
11949 vec_sub(vector bool int __a, vector unsigned int __b) {
11950 return (vector unsigned int)__a - __b;
11953 static __inline__ vector unsigned int __ATTRS_o_ai
11954 vec_sub(vector unsigned int __a, vector bool int __b) {
11955 return __a - (vector unsigned int)__b;
11965 static __inline__ vector unsigned __int128 __ATTRS_o_ai
11966 vec_sub(vector unsigned __int128 __a, vector unsigned __int128 __b) {
11978 static __inline__ vector unsigned long long __ATTRS_o_ai
11979 vec_sub(vector unsigned long long __a, vector unsigned long long __b) {
12013 static __inline__ vector unsigned char __ATTRS_o_ai
12014 vec_vsububm(vector unsigned char __a, vector unsigned char __b) {
12018 static __inline__ vector unsigned char __ATTRS_o_ai
12019 vec_vsububm(vector bool char __a, vector unsigned char __b) {
12020 return (vector unsigned char)__a - __b;
12023 static __inline__ vector unsigned char __ATTRS_o_ai
12024 vec_vsububm(vector unsigned char __a, vector bool char __b) {
12025 return __a - (vector unsigned char)__b;
12047 static __inline__ vector unsigned short __ATTRS_o_ai
12048 vec_vsubuhm(vector unsigned short __a, vector unsigned short __b) {
12052 static __inline__ vector unsigned short __ATTRS_o_ai
12053 vec_vsubuhm(vector bool short __a, vector unsigned short __b) {
12054 return (vector unsigned short)__a - __b;
12057 static __inline__ vector unsigned short __ATTRS_o_ai
12058 vec_vsubuhm(vector unsigned short __a, vector bool short __b) {
12059 return __a - (vector unsigned short)__b;
12081 static __inline__ vector unsigned int __ATTRS_o_ai
12082 vec_vsubuwm(vector unsigned int __a, vector unsigned int __b) {
12086 static __inline__ vector unsigned int __ATTRS_o_ai
12087 vec_vsubuwm(vector bool int __a, vector unsigned int __b) {
12088 return (vector unsigned int)__a - __b;
12091 static __inline__ vector unsigned int __ATTRS_o_ai
12092 vec_vsubuwm(vector unsigned int __a, vector bool int __b) {
12093 return __a - (vector unsigned int)__b;
12109 return (vector signed int)__builtin_altivec_vsubcuw((vector unsigned int)__a,
12110 (vector unsigned int) __b);
12113 static __inline__ vector unsigned int __ATTRS_o_ai
12114 vec_subc(vector unsigned int __a, vector unsigned int __b) {
12120 static __inline__ vector unsigned __int128 __ATTRS_o_ai
12121 vec_subc(vector unsigned __int128 __a, vector unsigned __int128 __b) {
12128 (vector unsigned __int128)__a, (vector unsigned __int128)__b);
12132 static __inline__ vector unsigned char __attribute__((__always_inline__))
12133 vec_subc_u128(vector unsigned char __a, vector unsigned char __b) {
12134 return (vector unsigned char)__builtin_altivec_vsubcuq_c(
12135 (vector unsigned char)__a, (vector unsigned char)__b);
12141 static __inline__ vector unsigned int __attribute__((__always_inline__))
12142 vec_vsubcuw(vector unsigned int __a, vector unsigned int __b) {
12163 static __inline__ vector unsigned char __ATTRS_o_ai
12164 vec_subs(vector unsigned char __a, vector unsigned char __b) {
12168 static __inline__ vector unsigned char __ATTRS_o_ai
12169 vec_subs(vector bool char __a, vector unsigned char __b) {
12170 return __builtin_altivec_vsububs((vector unsigned char)__a, __b);
12173 static __inline__ vector unsigned char __ATTRS_o_ai
12174 vec_subs(vector unsigned char __a, vector bool char __b) {
12175 return __builtin_altivec_vsububs(__a, (vector unsigned char)__b);
12193 static __inline__ vector unsigned short __ATTRS_o_ai
12194 vec_subs(vector unsigned short __a, vector unsigned short __b) {
12198 static __inline__ vector unsigned short __ATTRS_o_ai
12199 vec_subs(vector bool short __a, vector unsigned short __b) {
12200 return __builtin_altivec_vsubuhs((vector unsigned short)__a, __b);
12203 static __inline__ vector unsigned short __ATTRS_o_ai
12204 vec_subs(vector unsigned short __a, vector bool short __b) {
12205 return __builtin_altivec_vsubuhs(__a, (vector unsigned short)__b);
12223 static __inline__ vector unsigned int __ATTRS_o_ai
12224 vec_subs(vector unsigned int __a, vector unsigned int __b) {
12228 static __inline__ vector unsigned int __ATTRS_o_ai
12229 vec_subs(vector bool int __a, vector unsigned int __b) {
12230 return __builtin_altivec_vsubuws((vector unsigned int)__a, __b);
12233 static __inline__ vector unsigned int __ATTRS_o_ai
12234 vec_subs(vector unsigned int __a, vector bool int __b) {
12235 return __builtin_altivec_vsubuws(__a, (vector unsigned int)__b);
12257 static __inline__ vector unsigned char __ATTRS_o_ai
12258 vec_vsububs(vector unsigned char __a, vector unsigned char __b) {
12262 static __inline__ vector unsigned char __ATTRS_o_ai
12263 vec_vsububs(vector bool char __a, vector unsigned char __b) {
12264 return __builtin_altivec_vsububs((vector unsigned char)__a, __b);
12267 static __inline__ vector unsigned char __ATTRS_o_ai
12268 vec_vsububs(vector unsigned char __a, vector bool char __b) {
12269 return __builtin_altivec_vsububs(__a, (vector unsigned char)__b);
12291 static __inline__ vector unsigned short __ATTRS_o_ai
12292 vec_vsubuhs(vector unsigned short __a, vector unsigned short __b) {
12296 static __inline__ vector unsigned short __ATTRS_o_ai
12297 vec_vsubuhs(vector bool short __a, vector unsigned short __b) {
12298 return __builtin_altivec_vsubuhs((vector unsigned short)__a, __b);
12301 static __inline__ vector unsigned short __ATTRS_o_ai
12302 vec_vsubuhs(vector unsigned short __a, vector bool short __b) {
12303 return __builtin_altivec_vsubuhs(__a, (vector unsigned short)__b);
12325 static __inline__ vector unsigned int __ATTRS_o_ai
12326 vec_vsubuws(vector unsigned int __a, vector unsigned int __b) {
12330 static __inline__ vector unsigned int __ATTRS_o_ai
12331 vec_vsubuws(vector bool int __a, vector unsigned int __b) {
12332 return __builtin_altivec_vsubuws((vector unsigned int)__a, __b);
12335 static __inline__ vector unsigned int __ATTRS_o_ai
12336 vec_vsubuws(vector unsigned int __a, vector bool int __b) {
12337 return __builtin_altivec_vsubuws(__a, (vector unsigned int)__b);
12349 static __inline__ vector unsigned __int128 __ATTRS_o_ai
12350 vec_vsubuqm(vector unsigned __int128 __a, vector unsigned __int128 __b) {
12355 static __inline__ vector unsigned char __attribute__((__always_inline__))
12356 vec_sub_u128(vector unsigned char __a, vector unsigned char __b) {
12357 return (vector unsigned char)__builtin_altivec_vsubuqm(__a, __b);
12367 (vector unsigned __int128)__a, (vector unsigned __int128)__b,
12368 (vector unsigned __int128)__c);
12371 static __inline__ vector unsigned __int128 __ATTRS_o_ai
12372 vec_vsubeuqm(vector unsigned __int128 __a, vector unsigned __int128 __b,
12373 vector unsigned __int128 __c) {
12381 (vector unsigned __int128)__a, (vector unsigned __int128)__b,
12382 (vector unsigned __int128)__c);
12385 static __inline__ vector unsigned __int128 __ATTRS_o_ai
12386 vec_sube(vector unsigned __int128 __a, vector unsigned __int128 __b,
12387 vector unsigned __int128 __c) {
12392 static __inline__ vector unsigned char __attribute__((__always_inline__))
12393 vec_sube_u128(vector unsigned char __a, vector unsigned char __b,
12394 vector unsigned char __c) {
12395 return (vector unsigned char)__builtin_altivec_vsubeuqm_c(
12396 (vector unsigned char)__a, (vector unsigned char)__b,
12397 (vector unsigned char)__c);
12406 (vector unsigned __int128)__a, (vector unsigned __int128)__b);
12409 static __inline__ vector unsigned __int128 __ATTRS_o_ai
12410 vec_vsubcuq(vector unsigned __int128 __a, vector unsigned __int128 __b) {
12420 (vector unsigned __int128)__a, (vector unsigned __int128)__b,
12421 (vector unsigned __int128)__c);
12424 static __inline__ vector unsigned __int128 __ATTRS_o_ai
12425 vec_vsubecuq(vector unsigned __int128 __a, vector unsigned __int128 __b,
12426 vector unsigned __int128 __c) {
12438 static __inline__ vector unsigned int __ATTRS_o_ai
12439 vec_subec(vector unsigned int __a, vector unsigned int __b,
12440 vector unsigned int __c) {
12450 (vector unsigned __int128)__a, (vector unsigned __int128)__b,
12451 (vector unsigned __int128)__c);
12454 static __inline__ vector unsigned __int128 __ATTRS_o_ai
12455 vec_subec(vector unsigned __int128 __a, vector unsigned __int128 __b,
12456 vector unsigned __int128 __c) {
12461 static __inline__ vector unsigned char __attribute__((__always_inline__))
12462 vec_subec_u128(vector unsigned char __a, vector unsigned char __b,
12463 vector unsigned char __c) {
12464 return (vector unsigned char)__builtin_altivec_vsubecuq_c(
12465 (vector unsigned char)__a, (vector unsigned char)__b,
12466 (vector unsigned char)__c);
12478 static __inline__ vector unsigned int __ATTRS_o_ai
12479 vec_sube(vector unsigned int __a, vector unsigned int __b,
12480 vector unsigned int __c) {
12481 vector unsigned int __mask = {1, 1, 1, 1};
12482 vector unsigned int __carry = __c & __mask;
12492 static __inline__ vector unsigned int __ATTRS_o_ai
12493 vec_sum4s(vector unsigned char __a, vector unsigned int __b) {
12511 static __inline__ vector unsigned int __attribute__((__always_inline__))
12512 vec_vsum4ubs(vector unsigned char __a, vector unsigned int __b) {
12535 __b, __b, (vector unsigned char)(4, 5, 6, 7, 0, 1, 2, 3, 12, 13, 14, 15,
12539 __c, __c, (vector unsigned char)(4, 5, 6, 7, 0, 1, 2, 3, 12, 13, 14, 15,
12552 __b, __b, (vector unsigned char)(4, 5, 6, 7, 0, 1, 2, 3, 12, 13, 14, 15,
12556 __c, __c, (vector unsigned char)(4, 5, 6, 7, 0, 1, 2, 3, 12, 13, 14, 15,
12676 static __inline__ vector unsigned int __ATTRS_o_ai
12679 return (vector unsigned int)__builtin_altivec_vupklpx((vector short)__a);
12681 return (vector unsigned int)__builtin_altivec_vupkhpx((vector short)__a);
12748 static __inline__ vector unsigned int __ATTRS_o_ai
12751 return (vector unsigned int)__builtin_altivec_vupklpx((vector short)__a);
12753 return (vector unsigned int)__builtin_altivec_vupkhpx((vector short)__a);
12815 static __inline__ vector unsigned int __ATTRS_o_ai
12818 return (vector unsigned int)__builtin_altivec_vupkhpx((vector short)__a);
12820 return (vector unsigned int)__builtin_altivec_vupklpx((vector short)__a);
12887 static __inline__ vector unsigned int __ATTRS_o_ai
12890 return (vector unsigned int)__builtin_altivec_vupkhpx((vector short)__a);
12892 return (vector unsigned int)__builtin_altivec_vupklpx((vector short)__a);
12936 static __inline__ vector unsigned int __ATTRS_o_ai
12937 vec_vsx_ld(int __a, const vector unsigned int *__b) {
12938 return (vector unsigned int)__builtin_vsx_lxvw4x(__a, __b);
12941 static __inline__ vector unsigned int __ATTRS_o_ai
12942 vec_vsx_ld(int __a, const unsigned int *__b) {
12943 return (vector unsigned int)__builtin_vsx_lxvw4x(__a, __b);
12961 static __inline__ vector unsigned long long __ATTRS_o_ai
12962 vec_vsx_ld(int __a, const vector unsigned long long *__b) {
12963 return (vector unsigned long long)__builtin_vsx_lxvd2x(__a, __b);
12991 static __inline__ vector unsigned short __ATTRS_o_ai
12992 vec_vsx_ld(int __a, const vector unsigned short *__b) {
12993 return (vector unsigned short)__builtin_vsx_lxvw4x(__a, __b);
12996 static __inline__ vector unsigned short __ATTRS_o_ai
12997 vec_vsx_ld(int __a, const unsigned short *__b) {
12998 return (vector unsigned short)__builtin_vsx_lxvw4x(__a, __b);
13016 static __inline__ vector unsigned char __ATTRS_o_ai
13017 vec_vsx_ld(int __a, const vector unsigned char *__b) {
13018 return (vector unsigned char)__builtin_vsx_lxvw4x(__a, __b);
13021 static __inline__ vector unsigned char __ATTRS_o_ai
13022 vec_vsx_ld(int __a, const unsigned char *__b) {
13023 return (vector unsigned char)__builtin_vsx_lxvw4x(__a, __b);
13043 unsigned int *__c) {
13057 static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned int __a, int __b,
13058 vector unsigned int *__c) {
13062 static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned int __a, int __b,
13063 unsigned int *__c) {
13083 static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned long long __a,
13085 vector unsigned long long *__c) {
13110 unsigned short *__c) {
13123 static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned short __a,
13125 vector unsigned short *__c) {
13129 static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned short __a,
13130 int __b, unsigned short *__c) {
13145 unsigned char *__c) {
13159 static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned char __a,
13161 vector unsigned char *__c) {
13165 static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned char __a,
13166 int __b, unsigned char *__c) {
13179 vector unsigned long long \
13206 static __inline__ vector unsigned char __ATTRS_o_ai
13207 vec_xor(vector unsigned char __a, vector unsigned char __b) {
13211 static __inline__ vector unsigned char __ATTRS_o_ai
13212 vec_xor(vector bool char __a, vector unsigned char __b) {
13213 return (vector unsigned char)__a ^ __b;
13216 static __inline__ vector unsigned char __ATTRS_o_ai
13217 vec_xor(vector unsigned char __a, vector bool char __b) {
13218 return __a ^ (vector unsigned char)__b;
13241 static __inline__ vector unsigned short __ATTRS_o_ai
13242 vec_xor(vector unsigned short __a, vector unsigned short __b) {
13246 static __inline__ vector unsigned short __ATTRS_o_ai
13247 vec_xor(vector bool short __a, vector unsigned short __b) {
13248 return (vector unsigned short)__a ^ __b;
13251 static __inline__ vector unsigned short __ATTRS_o_ai
13252 vec_xor(vector unsigned short __a, vector bool short __b) {
13253 return __a ^ (vector unsigned short)__b;
13276 static __inline__ vector unsigned int __ATTRS_o_ai
13277 vec_xor(vector unsigned int __a, vector unsigned int __b) {
13281 static __inline__ vector unsigned int __ATTRS_o_ai
13282 vec_xor(vector bool int __a, vector unsigned int __b) {
13283 return (vector unsigned int)__a ^ __b;
13286 static __inline__ vector unsigned int __ATTRS_o_ai
13287 vec_xor(vector unsigned int __a, vector bool int __b) {
13288 return __a ^ (vector unsigned int)__b;
13298 vector unsigned int __res =
13299 (vector unsigned int)__a ^ (vector unsigned int)__b;
13305 vector unsigned int __res =
13306 (vector unsigned int)__a ^ (vector unsigned int)__b;
13312 vector unsigned int __res =
13313 (vector unsigned int)__a ^ (vector unsigned int)__b;
13333 static __inline__ vector unsigned long long __ATTRS_o_ai
13334 vec_xor(vector unsigned long long __a, vector unsigned long long __b) {
13338 static __inline__ vector unsigned long long __ATTRS_o_ai
13339 vec_xor(vector bool long long __a, vector unsigned long long __b) {
13340 return (vector unsigned long long)__a ^ __b;
13343 static __inline__ vector unsigned long long __ATTRS_o_ai
13344 vec_xor(vector unsigned long long __a, vector bool long long __b) {
13345 return __a ^ (vector unsigned long long)__b;
13355 return (vector double)((vector unsigned long long)__a ^
13356 (vector unsigned long long)__b);
13361 return (vector double)((vector unsigned long long)__a ^
13362 (vector unsigned long long)__b);
13367 return (vector double)((vector unsigned long long)__a ^
13368 (vector unsigned long long)__b);
13389 static __inline__ vector unsigned char __ATTRS_o_ai
13390 vec_vxor(vector unsigned char __a, vector unsigned char __b) {
13394 static __inline__ vector unsigned char __ATTRS_o_ai
13395 vec_vxor(vector bool char __a, vector unsigned char __b) {
13396 return (vector unsigned char)__a ^ __b;
13399 static __inline__ vector unsigned char __ATTRS_o_ai
13400 vec_vxor(vector unsigned char __a, vector bool char __b) {
13401 return __a ^ (vector unsigned char)__b;
13424 static __inline__ vector unsigned short __ATTRS_o_ai
13425 vec_vxor(vector unsigned short __a, vector unsigned short __b) {
13429 static __inline__ vector unsigned short __ATTRS_o_ai
13430 vec_vxor(vector bool short __a, vector unsigned short __b) {
13431 return (vector unsigned short)__a ^ __b;
13434 static __inline__ vector unsigned short __ATTRS_o_ai
13435 vec_vxor(vector unsigned short __a, vector bool short __b) {
13436 return __a ^ (vector unsigned short)__b;
13459 static __inline__ vector unsigned int __ATTRS_o_ai
13460 vec_vxor(vector unsigned int __a, vector unsigned int __b) {
13464 static __inline__ vector unsigned int __ATTRS_o_ai
13465 vec_vxor(vector bool int __a, vector unsigned int __b) {
13466 return (vector unsigned int)__a ^ __b;
13469 static __inline__ vector unsigned int __ATTRS_o_ai
13470 vec_vxor(vector unsigned int __a, vector bool int __b) {
13471 return __a ^ (vector unsigned int)__b;
13481 vector unsigned int __res =
13482 (vector unsigned int)__a ^ (vector unsigned int)__b;
13488 vector unsigned int __res =
13489 (vector unsigned int)__a ^ (vector unsigned int)__b;
13495 vector unsigned int __res =
13496 (vector unsigned int)__a ^ (vector unsigned int)__b;
13516 static __inline__ vector unsigned long long __ATTRS_o_ai
13517 vec_vxor(vector unsigned long long __a, vector unsigned long long __b) {
13521 static __inline__ vector unsigned long long __ATTRS_o_ai
13522 vec_vxor(vector bool long long __a, vector unsigned long long __b) {
13523 return (vector unsigned long long)__a ^ __b;
13526 static __inline__ vector unsigned long long __ATTRS_o_ai
13527 vec_vxor(vector unsigned long long __a, vector bool long long __b) {
13528 return __a ^ (vector unsigned long long)__b;
13546 static __inline__ unsigned char __ATTRS_o_ai
13547 vec_extract(vector unsigned char __a, signed int __b) {
13551 static __inline__ unsigned char __ATTRS_o_ai vec_extract(vector bool char __a,
13561 static __inline__ unsigned short __ATTRS_o_ai
13562 vec_extract(vector unsigned short __a, signed int __b) {
13566 static __inline__ unsigned short __ATTRS_o_ai vec_extract(vector bool short __a,
13576 static __inline__ unsigned int __ATTRS_o_ai vec_extract(vector unsigned int __a,
13581 static __inline__ unsigned int __ATTRS_o_ai vec_extract(vector bool int __a,
13592 static __inline__ unsigned long long __ATTRS_o_ai
13593 vec_extract(vector unsigned long long __a, signed int __b) {
13597 static __inline__ unsigned long long __ATTRS_o_ai
13620 static __inline__ vector unsigned int __ATTRS_o_ai
13625 static __inline__ vector unsigned long long __ATTRS_o_ai
13632 static __inline__ vector unsigned int __ATTRS_o_ai
13637 static __inline__ vector unsigned long long __ATTRS_o_ai
13643 vec_extract_fp32_from_shorth(vector unsigned short __a) {
13644 vector unsigned short __b =
13654 vec_extract_fp32_from_shortl(vector unsigned short __a) {
13655 vector unsigned short __b =
13673 static __inline__ vector unsigned char __ATTRS_o_ai
13674 vec_insert(unsigned char __a, vector unsigned char __b, int __c) {
13679 static __inline__ vector bool char __ATTRS_o_ai vec_insert(unsigned char __a,
13692 static __inline__ vector unsigned short __ATTRS_o_ai
13693 vec_insert(unsigned short __a, vector unsigned short __b, int __c) {
13699 vec_insert(unsigned short __a, vector bool short __b, int __c) {
13710 static __inline__ vector unsigned int __ATTRS_o_ai
13711 vec_insert(unsigned int __a, vector unsigned int __b, int __c) {
13716 static __inline__ vector bool int __ATTRS_o_ai vec_insert(unsigned int __a,
13730 static __inline__ vector unsigned long long __ATTRS_o_ai
13731 vec_insert(unsigned long long __a, vector unsigned long long __b, int __c) {
13737 vec_insert(unsigned long long __a, vector bool long long __b, int __c) {
13767 vec_lvsl(__a, (unsigned char *)__b));
13770 static __inline__ vector unsigned char __ATTRS_o_ai
13771 vec_lvlx(int __a, const unsigned char *__b) {
13772 return vec_perm(vec_ld(__a, __b), (vector unsigned char)(0),
13776 static __inline__ vector unsigned char __ATTRS_o_ai
13777 vec_lvlx(int __a, const vector unsigned char *__b) {
13778 return vec_perm(vec_ld(__a, __b), (vector unsigned char)(0),
13779 vec_lvsl(__a, (unsigned char *)__b));
13785 vec_lvsl(__a, (unsigned char *)__b));
13796 vec_lvsl(__a, (unsigned char *)__b));
13799 static __inline__ vector unsigned short __ATTRS_o_ai
13800 vec_lvlx(int __a, const unsigned short *__b) {
13801 return vec_perm(vec_ld(__a, __b), (vector unsigned short)(0),
13805 static __inline__ vector unsigned short __ATTRS_o_ai
13806 vec_lvlx(int __a, const vector unsigned short *__b) {
13807 return vec_perm(vec_ld(__a, __b), (vector unsigned short)(0),
13808 vec_lvsl(__a, (unsigned char *)__b));
13814 vec_lvsl(__a, (unsigned char *)__b));
13820 vec_lvsl(__a, (unsigned char *)__b));
13830 vec_lvsl(__a, (unsigned char *)__b));
13833 static __inline__ vector unsigned int __ATTRS_o_ai
13834 vec_lvlx(int __a, const unsigned int *__b) {
13835 return vec_perm(vec_ld(__a, __b), (vector unsigned int)(0),
13839 static __inline__ vector unsigned int __ATTRS_o_ai
13840 vec_lvlx(int __a, const vector unsigned int *__b) {
13841 return vec_perm(vec_ld(__a, __b), (vector unsigned int)(0),
13842 vec_lvsl(__a, (unsigned char *)__b));
13848 vec_lvsl(__a, (unsigned char *)__b));
13859 vec_lvsl(__a, (unsigned char *)__b));
13873 vec_lvsl(__a, (unsigned char *)__b));
13876 static __inline__ vector unsigned char __ATTRS_o_ai
13877 vec_lvlxl(int __a, const unsigned char *__b) {
13878 return vec_perm(vec_ldl(__a, __b), (vector unsigned char)(0),
13882 static __inline__ vector unsigned char __ATTRS_o_ai
13883 vec_lvlxl(int __a, const vector unsigned char *__b) {
13884 return vec_perm(vec_ldl(__a, __b), (vector unsigned char)(0),
13885 vec_lvsl(__a, (unsigned char *)__b));
13891 vec_lvsl(__a, (unsigned char *)__b));
13902 vec_lvsl(__a, (unsigned char *)__b));
13905 static __inline__ vector unsigned short __ATTRS_o_ai
13906 vec_lvlxl(int __a, const unsigned short *__b) {
13907 return vec_perm(vec_ldl(__a, __b), (vector unsigned short)(0),
13911 static __inline__ vector unsigned short __ATTRS_o_ai
13912 vec_lvlxl(int __a, const vector unsigned short *__b) {
13913 return vec_perm(vec_ldl(__a, __b), (vector unsigned short)(0),
13914 vec_lvsl(__a, (unsigned char *)__b));
13920 vec_lvsl(__a, (unsigned char *)__b));
13926 vec_lvsl(__a, (unsigned char *)__b));
13936 vec_lvsl(__a, (unsigned char *)__b));
13939 static __inline__ vector unsigned int __ATTRS_o_ai
13940 vec_lvlxl(int __a, const unsigned int *__b) {
13941 return vec_perm(vec_ldl(__a, __b), (vector unsigned int)(0),
13945 static __inline__ vector unsigned int __ATTRS_o_ai
13946 vec_lvlxl(int __a, const vector unsigned int *__b) {
13947 return vec_perm(vec_ldl(__a, __b), (vector unsigned int)(0),
13948 vec_lvsl(__a, (unsigned char *)__b));
13954 vec_lvsl(__a, (unsigned char *)__b));
13965 vec_lvsl(__a, (unsigned char *)__b));
13979 vec_lvsl(__a, (unsigned char *)__b));
13982 static __inline__ vector unsigned char __ATTRS_o_ai
13983 vec_lvrx(int __a, const unsigned char *__b) {
13984 return vec_perm((vector unsigned char)(0), vec_ld(__a, __b),
13988 static __inline__ vector unsigned char __ATTRS_o_ai
13989 vec_lvrx(int __a, const vector unsigned char *__b) {
13990 return vec_perm((vector unsigned char)(0), vec_ld(__a, __b),
13991 vec_lvsl(__a, (unsigned char *)__b));
13997 vec_lvsl(__a, (unsigned char *)__b));
14008 vec_lvsl(__a, (unsigned char *)__b));
14011 static __inline__ vector unsigned short __ATTRS_o_ai
14012 vec_lvrx(int __a, const unsigned short *__b) {
14013 return vec_perm((vector unsigned short)(0), vec_ld(__a, __b),
14017 static __inline__ vector unsigned short __ATTRS_o_ai
14018 vec_lvrx(int __a, const vector unsigned short *__b) {
14019 return vec_perm((vector unsigned short)(0), vec_ld(__a, __b),
14020 vec_lvsl(__a, (unsigned char *)__b));
14026 vec_lvsl(__a, (unsigned char *)__b));
14032 vec_lvsl(__a, (unsigned char *)__b));
14042 vec_lvsl(__a, (unsigned char *)__b));
14045 static __inline__ vector unsigned int __ATTRS_o_ai
14046 vec_lvrx(int __a, const unsigned int *__b) {
14047 return vec_perm((vector unsigned int)(0), vec_ld(__a, __b),
14051 static __inline__ vector unsigned int __ATTRS_o_ai
14052 vec_lvrx(int __a, const vector unsigned int *__b) {
14053 return vec_perm((vector unsigned int)(0), vec_ld(__a, __b),
14054 vec_lvsl(__a, (unsigned char *)__b));
14060 vec_lvsl(__a, (unsigned char *)__b));
14071 vec_lvsl(__a, (unsigned char *)__b));
14085 vec_lvsl(__a, (unsigned char *)__b));
14088 static __inline__ vector unsigned char __ATTRS_o_ai
14089 vec_lvrxl(int __a, const unsigned char *__b) {
14090 return vec_perm((vector unsigned char)(0), vec_ldl(__a, __b),
14094 static __inline__ vector unsigned char __ATTRS_o_ai
14095 vec_lvrxl(int __a, const vector unsigned char *__b) {
14096 return vec_perm((vector unsigned char)(0), vec_ldl(__a, __b),
14097 vec_lvsl(__a, (unsigned char *)__b));
14103 vec_lvsl(__a, (unsigned char *)__b));
14114 vec_lvsl(__a, (unsigned char *)__b));
14117 static __inline__ vector unsigned short __ATTRS_o_ai
14118 vec_lvrxl(int __a, const unsigned short *__b) {
14119 return vec_perm((vector unsigned short)(0), vec_ldl(__a, __b),
14123 static __inline__ vector unsigned short __ATTRS_o_ai
14124 vec_lvrxl(int __a, const vector unsigned short *__b) {
14125 return vec_perm((vector unsigned short)(0), vec_ldl(__a, __b),
14126 vec_lvsl(__a, (unsigned char *)__b));
14132 vec_lvsl(__a, (unsigned char *)__b));
14138 vec_lvsl(__a, (unsigned char *)__b));
14148 vec_lvsl(__a, (unsigned char *)__b));
14151 static __inline__ vector unsigned int __ATTRS_o_ai
14152 vec_lvrxl(int __a, const unsigned int *__b) {
14153 return vec_perm((vector unsigned int)(0), vec_ldl(__a, __b),
14157 static __inline__ vector unsigned int __ATTRS_o_ai
14158 vec_lvrxl(int __a, const vector unsigned int *__b) {
14159 return vec_perm((vector unsigned int)(0), vec_ldl(__a, __b),
14160 vec_lvsl(__a, (unsigned char *)__b));
14166 vec_lvsl(__a, (unsigned char *)__b));
14177 vec_lvsl(__a, (unsigned char *)__b));
14191 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14195 static __inline__ void __ATTRS_o_ai vec_stvlx(vector unsigned char __a, int __b,
14196 unsigned char *__c) {
14201 static __inline__ void __ATTRS_o_ai vec_stvlx(vector unsigned char __a, int __b,
14202 vector unsigned char *__c) {
14204 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14211 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14224 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14228 static __inline__ void __ATTRS_o_ai vec_stvlx(vector unsigned short __a,
14229 int __b, unsigned short *__c) {
14234 static __inline__ void __ATTRS_o_ai vec_stvlx(vector unsigned short __a,
14236 vector unsigned short *__c) {
14238 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14245 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14252 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14265 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14269 static __inline__ void __ATTRS_o_ai vec_stvlx(vector unsigned int __a, int __b,
14270 unsigned int *__c) {
14275 static __inline__ void __ATTRS_o_ai vec_stvlx(vector unsigned int __a, int __b,
14276 vector unsigned int *__c) {
14278 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14285 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14292 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14307 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14311 static __inline__ void __ATTRS_o_ai vec_stvlxl(vector unsigned char __a,
14312 int __b, unsigned char *__c) {
14317 static __inline__ void __ATTRS_o_ai vec_stvlxl(vector unsigned char __a,
14319 vector unsigned char *__c) {
14321 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14328 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14341 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14345 static __inline__ void __ATTRS_o_ai vec_stvlxl(vector unsigned short __a,
14346 int __b, unsigned short *__c) {
14351 static __inline__ void __ATTRS_o_ai vec_stvlxl(vector unsigned short __a,
14353 vector unsigned short *__c) {
14355 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14362 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14369 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14382 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14386 static __inline__ void __ATTRS_o_ai vec_stvlxl(vector unsigned int __a, int __b,
14387 unsigned int *__c) {
14392 static __inline__ void __ATTRS_o_ai vec_stvlxl(vector unsigned int __a, int __b,
14393 vector unsigned int *__c) {
14395 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14402 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14409 vec_perm(vec_lvrx(__b, __c), __a, vec_lvsr(__b, (unsigned char *)__c)),
14424 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14428 static __inline__ void __ATTRS_o_ai vec_stvrx(vector unsigned char __a, int __b,
14429 unsigned char *__c) {
14434 static __inline__ void __ATTRS_o_ai vec_stvrx(vector unsigned char __a, int __b,
14435 vector unsigned char *__c) {
14437 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14444 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14457 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14461 static __inline__ void __ATTRS_o_ai vec_stvrx(vector unsigned short __a,
14462 int __b, unsigned short *__c) {
14467 static __inline__ void __ATTRS_o_ai vec_stvrx(vector unsigned short __a,
14469 vector unsigned short *__c) {
14471 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14478 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14485 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14498 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14502 static __inline__ void __ATTRS_o_ai vec_stvrx(vector unsigned int __a, int __b,
14503 unsigned int *__c) {
14508 static __inline__ void __ATTRS_o_ai vec_stvrx(vector unsigned int __a, int __b,
14509 vector unsigned int *__c) {
14511 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14518 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14525 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14540 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14544 static __inline__ void __ATTRS_o_ai vec_stvrxl(vector unsigned char __a,
14545 int __b, unsigned char *__c) {
14550 static __inline__ void __ATTRS_o_ai vec_stvrxl(vector unsigned char __a,
14552 vector unsigned char *__c) {
14554 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14561 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14574 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14578 static __inline__ void __ATTRS_o_ai vec_stvrxl(vector unsigned short __a,
14579 int __b, unsigned short *__c) {
14584 static __inline__ void __ATTRS_o_ai vec_stvrxl(vector unsigned short __a,
14586 vector unsigned short *__c) {
14588 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14595 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14602 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14615 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14619 static __inline__ void __ATTRS_o_ai vec_stvrxl(vector unsigned int __a, int __b,
14620 unsigned int *__c) {
14625 static __inline__ void __ATTRS_o_ai vec_stvrxl(vector unsigned int __a, int __b,
14626 vector unsigned int *__c) {
14628 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14635 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14642 vec_perm(__a, vec_lvlx(__b, __c), vec_lvsr(__b, (unsigned char *)__c)),
14658 static __inline__ vector unsigned char __ATTRS_o_ai
14659 vec_promote(unsigned char __a, int __b) {
14660 const vector unsigned char __zero = (vector unsigned char)(0);
14661 vector unsigned char __res =
14676 static __inline__ vector unsigned short __ATTRS_o_ai
14677 vec_promote(unsigned short __a, int __b) {
14678 const vector unsigned short __zero = (vector unsigned short)(0);
14679 vector unsigned short __res =
14692 static __inline__ vector unsigned int __ATTRS_o_ai vec_promote(unsigned int __a,
14694 const vector unsigned int __zero = (vector unsigned int)(0);
14695 vector unsigned int __res =
14725 static __inline__ vector unsigned long long __ATTRS_o_ai
14726 vec_promote(unsigned long long __a, int __b) {
14727 const vector unsigned long long __zero = (vector unsigned long long)(0);
14728 vector unsigned long long __res =
14741 static __inline__ vector unsigned char __ATTRS_o_ai
14742 vec_splats(unsigned char __a) {
14743 return (vector unsigned char)(__a);
14750 static __inline__ vector unsigned short __ATTRS_o_ai
14751 vec_splats(unsigned short __a) {
14752 return (vector unsigned short)(__a);
14759 static __inline__ vector unsigned int __ATTRS_o_ai
14760 vec_splats(unsigned int __a) {
14761 return (vector unsigned int)(__a);
14770 static __inline__ vector unsigned long long __ATTRS_o_ai
14771 vec_splats(unsigned long long __a) {
14772 return (vector unsigned long long)(__a);
14782 static __inline__ vector unsigned __int128 __ATTRS_o_ai
14783 vec_splats(unsigned __int128 __a) {
14784 return (vector unsigned __int128)(__a);
14814 static __inline__ int __ATTRS_o_ai vec_all_eq(vector unsigned char __a,
14815 vector unsigned char __b) {
14820 static __inline__ int __ATTRS_o_ai vec_all_eq(vector unsigned char __a,
14833 vector unsigned char __b) {
14854 static __inline__ int __ATTRS_o_ai vec_all_eq(vector unsigned short __a,
14855 vector unsigned short __b) {
14860 static __inline__ int __ATTRS_o_ai vec_all_eq(vector unsigned short __a,
14873 vector unsigned short __b) {
14899 static __inline__ int __ATTRS_o_ai vec_all_eq(vector unsigned int __a,
14900 vector unsigned int __b) {
14905 static __inline__ int __ATTRS_o_ai vec_all_eq(vector unsigned int __a,
14918 vector unsigned int __b) {
14946 static __inline__ int __ATTRS_o_ai vec_all_eq(vector unsigned long long __a,
14947 vector unsigned long long __b) {
14951 static __inline__ int __ATTRS_o_ai vec_all_eq(vector unsigned long long __a,
14962 vector unsigned long long __b) {
14991 return __builtin_altivec_vcmpequq_p(__CR6_LT, (vector unsigned __int128)__a,
14995 static __inline__ int __ATTRS_o_ai vec_all_eq(vector unsigned __int128 __a,
14996 vector unsigned __int128 __b) {
15003 return __builtin_altivec_vcmpequq_p(__CR6_LT, (vector unsigned __int128)__a,
15020 static __inline__ int __ATTRS_o_ai vec_all_ge(vector unsigned char __a,
15021 vector unsigned char __b) {
15025 static __inline__ int __ATTRS_o_ai vec_all_ge(vector unsigned char __a,
15027 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)__b, __a);
15036 vector unsigned char __b) {
15037 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __b, (vector unsigned char)__a);
15042 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)__b,
15043 (vector unsigned char)__a);
15056 static __inline__ int __ATTRS_o_ai vec_all_ge(vector unsigned short __a,
15057 vector unsigned short __b) {
15061 static __inline__ int __ATTRS_o_ai vec_all_ge(vector unsigned short __a,
15063 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)__b,
15073 vector unsigned short __b) {
15075 (vector unsigned short)__a);
15080 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)__b,
15081 (vector unsigned short)__a);
15093 static __inline__ int __ATTRS_o_ai vec_all_ge(vector unsigned int __a,
15094 vector unsigned int __b) {
15098 static __inline__ int __ATTRS_o_ai vec_all_ge(vector unsigned int __a,
15100 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)__b, __a);
15109 vector unsigned int __b) {
15110 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __b, (vector unsigned int)__a);
15115 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)__b,
15116 (vector unsigned int)__a);
15130 static __inline__ int __ATTRS_o_ai vec_all_ge(vector unsigned long long __a,
15131 vector unsigned long long __b) {
15135 static __inline__ int __ATTRS_o_ai vec_all_ge(vector unsigned long long __a,
15137 return __builtin_altivec_vcmpgtud_p(__CR6_EQ, (vector unsigned long long)__b,
15148 vector unsigned long long __b) {
15150 (vector unsigned long long)__a);
15155 return __builtin_altivec_vcmpgtud_p(__CR6_EQ, (vector unsigned long long)__b,
15156 (vector unsigned long long)__a);
15182 static __inline__ int __ATTRS_o_ai vec_all_ge(vector unsigned __int128 __a,
15183 vector unsigned __int128 __b) {
15200 static __inline__ int __ATTRS_o_ai vec_all_gt(vector unsigned char __a,
15201 vector unsigned char __b) {
15205 static __inline__ int __ATTRS_o_ai vec_all_gt(vector unsigned char __a,
15207 return __builtin_altivec_vcmpgtub_p(__CR6_LT, __a, (vector unsigned char)__b);
15216 vector unsigned char __b) {
15217 return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)__a, __b);
15222 return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)__a,
15223 (vector unsigned char)__b);
15236 static __inline__ int __ATTRS_o_ai vec_all_gt(vector unsigned short __a,
15237 vector unsigned short __b) {
15241 static __inline__ int __ATTRS_o_ai vec_all_gt(vector unsigned short __a,
15244 (vector unsigned short)__b);
15253 vector unsigned short __b) {
15254 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)__a,
15260 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)__a,
15261 (vector unsigned short)__b);
15273 static __inline__ int __ATTRS_o_ai vec_all_gt(vector unsigned int __a,
15274 vector unsigned int __b) {
15278 static __inline__ int __ATTRS_o_ai vec_all_gt(vector unsigned int __a,
15280 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __a, (vector unsigned int)__b);
15289 vector unsigned int __b) {
15290 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)__a, __b);
15295 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)__a,
15296 (vector unsigned int)__b);
15310 static __inline__ int __ATTRS_o_ai vec_all_gt(vector unsigned long long __a,
15311 vector unsigned long long __b) {
15315 static __inline__ int __ATTRS_o_ai vec_all_gt(vector unsigned long long __a,
15318 (vector unsigned long long)__b);
15328 vector unsigned long long __b) {
15329 return __builtin_altivec_vcmpgtud_p(__CR6_LT, (vector unsigned long long)__a,
15335 return __builtin_altivec_vcmpgtud_p(__CR6_LT, (vector unsigned long long)__a,
15336 (vector unsigned long long)__b);
15362 static __inline__ int __ATTRS_o_ai vec_all_gt(vector unsigned __int128 __a,
15363 vector unsigned __int128 __b) {
15387 static __inline__ int __ATTRS_o_ai vec_all_le(vector unsigned char __a,
15388 vector unsigned char __b) {
15392 static __inline__ int __ATTRS_o_ai vec_all_le(vector unsigned char __a,
15394 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __a, (vector unsigned char)__b);
15403 vector unsigned char __b) {
15404 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)__a, __b);
15409 return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)__a,
15410 (vector unsigned char)__b);
15423 static __inline__ int __ATTRS_o_ai vec_all_le(vector unsigned short __a,
15424 vector unsigned short __b) {
15428 static __inline__ int __ATTRS_o_ai vec_all_le(vector unsigned short __a,
15431 (vector unsigned short)__b);
15440 vector unsigned short __b) {
15441 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)__a,
15447 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)__a,
15448 (vector unsigned short)__b);
15460 static __inline__ int __ATTRS_o_ai vec_all_le(vector unsigned int __a,
15461 vector unsigned int __b) {
15465 static __inline__ int __ATTRS_o_ai vec_all_le(vector unsigned int __a,
15467 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __a, (vector unsigned int)__b);
15476 vector unsigned int __b) {
15477 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)__a, __b);
15482 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)__a,
15483 (vector unsigned int)__b);
15492 static __inline__ int __ATTRS_o_ai vec_all_le(vector unsigned long long __a,
15493 vector unsigned long long __b) {
15503 static __inline__ int __ATTRS_o_ai vec_all_le(vector unsigned long long __a,
15506 (vector unsigned long long)__b);
15516 vector unsigned long long __b) {
15517 return __builtin_altivec_vcmpgtud_p(__CR6_EQ, (vector unsigned long long)__a,
15523 return __builtin_altivec_vcmpgtud_p(__CR6_EQ, (vector unsigned long long)__a,
15524 (vector unsigned long long)__b);
15550 static __inline__ int __ATTRS_o_ai vec_all_le(vector unsigned __int128 __a,
15551 vector unsigned __int128 __b) {
15568 static __inline__ int __ATTRS_o_ai vec_all_lt(vector unsigned char __a,
15569 vector unsigned char __b) {
15573 static __inline__ int __ATTRS_o_ai vec_all_lt(vector unsigned char __a,
15575 return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)__b, __a);
15584 vector unsigned char __b) {
15585 return __builtin_altivec_vcmpgtub_p(__CR6_LT, __b, (vector unsigned char)__a);
15590 return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)__b,
15591 (vector unsigned char)__a);
15604 static __inline__ int __ATTRS_o_ai vec_all_lt(vector unsigned short __a,
15605 vector unsigned short __b) {
15609 static __inline__ int __ATTRS_o_ai vec_all_lt(vector unsigned short __a,
15611 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)__b,
15621 vector unsigned short __b) {
15623 (vector unsigned short)__a);
15628 return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)__b,
15629 (vector unsigned short)__a);
15641 static __inline__ int __ATTRS_o_ai vec_all_lt(vector unsigned int __a,
15642 vector unsigned int __b) {
15646 static __inline__ int __ATTRS_o_ai vec_all_lt(vector unsigned int __a,
15648 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)__b, __a);
15657 vector unsigned int __b) {
15658 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __b, (vector unsigned int)__a);
15663 return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)__b,
15664 (vector unsigned int)__a);
15673 static __inline__ int __ATTRS_o_ai vec_all_lt(vector unsigned long long __a,
15674 vector unsigned long long __b) {
15684 static __inline__ int __ATTRS_o_ai vec_all_lt(vector unsigned long long __a,
15686 return __builtin_altivec_vcmpgtud_p(__CR6_LT, (vector unsigned long long)__b,
15697 vector unsigned long long __b) {
15699 (vector unsigned long long)__a);
15704 return __builtin_altivec_vcmpgtud_p(__CR6_LT, (vector unsigned long long)__b,
15705 (vector unsigned long long)__a);
15731 static __inline__ int __ATTRS_o_ai vec_all_lt(vector unsigned __int128 __a,
15732 vector unsigned __int128 __b) {
15767 static __inline__ int __ATTRS_o_ai vec_all_ne(vector unsigned char __a,
15768 vector unsigned char __b) {
15773 static __inline__ int __ATTRS_o_ai vec_all_ne(vector unsigned char __a,
15786 vector unsigned char __b) {
15807 static __inline__ int __ATTRS_o_ai vec_all_ne(vector unsigned short __a,
15808 vector unsigned short __b) {
15813 static __inline__ int __ATTRS_o_ai vec_all_ne(vector unsigned short __a,
15826 vector unsigned short __b) {
15852 static __inline__ int __ATTRS_o_ai vec_all_ne(vector unsigned int __a,
15853 vector unsigned int __b) {
15858 static __inline__ int __ATTRS_o_ai vec_all_ne(vector unsigned int __a,
15871 vector unsigned int __b) {
15888 static __inline__ int __ATTRS_o_ai vec_all_ne(vector unsigned long long __a,
15889 vector unsigned long long __b) {
15900 static __inline__ int __ATTRS_o_ai vec_all_ne(vector unsigned long long __a,
15913 vector unsigned long long __b) {
15944 return __builtin_altivec_vcmpequq_p(__CR6_EQ, (vector unsigned __int128)__a,
15948 static __inline__ int __ATTRS_o_ai vec_all_ne(vector unsigned __int128 __a,
15949 vector unsigned __int128 __b) {
15956 return __builtin_altivec_vcmpequq_p(__CR6_EQ, (vector unsigned __int128)__a,
16064 static __inline__ int __ATTRS_o_ai vec_any_eq(vector unsigned char __a,
16065 vector unsigned char __b) {
16070 static __inline__ int __ATTRS_o_ai vec_any_eq(vector unsigned char __a,
16083 vector unsigned char __b) {
16104 static __inline__ int __ATTRS_o_ai vec_any_eq(vector unsigned short __a,
16105 vector unsigned short __b) {
16110 static __inline__ int __ATTRS_o_ai vec_any_eq(vector unsigned short __a,
16123 vector unsigned short __b) {
16149 static __inline__ int __ATTRS_o_ai vec_any_eq(vector unsigned int __a,
16150 vector unsigned int __b) {
16155 static __inline__ int __ATTRS_o_ai vec_any_eq(vector unsigned int __a,
16168 vector unsigned int __b) {
16185 static __inline__ int __ATTRS_o_ai vec_any_eq(vector unsigned long long __a,
16186 vector unsigned long long __b) {
16197 static __inline__ int __ATTRS_o_ai vec_any_eq(vector unsigned long long __a,
16210 vector unsigned long long __b) {
16242 (vector unsigned __int128)__a, __b);
16245 static __inline__ int __ATTRS_o_ai vec_any_eq(vector unsigned __int128 __a,
16246 vector unsigned __int128 __b) {
16254 __CR6_EQ_REV, (vector unsigned __int128)__a, (vector signed __int128)__b);
16271 static __inline__ int __ATTRS_o_ai vec_any_ge(vector unsigned char __a,
16272 vector unsigned char __b) {
16276 static __inline__ int __ATTRS_o_ai vec_any_ge(vector unsigned char __a,
16278 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)__b,
16289 vector unsigned char __b) {
16291 (vector unsigned char)__a);
16296 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)__b,
16297 (vector unsigned char)__a);
16310 static __inline__ int __ATTRS_o_ai vec_any_ge(vector unsigned short __a,
16311 vector unsigned short __b) {
16315 static __inline__ int __ATTRS_o_ai vec_any_ge(vector unsigned short __a,
16317 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)__b,
16328 vector unsigned short __b) {
16330 (vector unsigned short)__a);
16335 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)__b,
16336 (vector unsigned short)__a);
16348 static __inline__ int __ATTRS_o_ai vec_any_ge(vector unsigned int __a,
16349 vector unsigned int __b) {
16353 static __inline__ int __ATTRS_o_ai vec_any_ge(vector unsigned int __a,
16355 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)__b,
16366 vector unsigned int __b) {
16368 (vector unsigned int)__a);
16373 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)__b,
16374 (vector unsigned int)__a);
16383 static __inline__ int __ATTRS_o_ai vec_any_ge(vector unsigned long long __a,
16384 vector unsigned long long __b) {
16394 static __inline__ int __ATTRS_o_ai vec_any_ge(vector unsigned long long __a,
16397 (vector unsigned long long)__b, __a);
16407 vector unsigned long long __b) {
16409 (vector unsigned long long)__a);
16415 (vector unsigned long long)__b,
16416 (vector unsigned long long)__a);
16442 static __inline__ int __ATTRS_o_ai vec_any_ge(vector unsigned __int128 __a,
16443 vector unsigned __int128 __b) {
16461 static __inline__ int __ATTRS_o_ai vec_any_gt(vector unsigned char __a,
16462 vector unsigned char __b) {
16466 static __inline__ int __ATTRS_o_ai vec_any_gt(vector unsigned char __a,
16469 (vector unsigned char)__b);
16479 vector unsigned char __b) {
16480 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)__a,
16486 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)__a,
16487 (vector unsigned char)__b);
16500 static __inline__ int __ATTRS_o_ai vec_any_gt(vector unsigned short __a,
16501 vector unsigned short __b) {
16505 static __inline__ int __ATTRS_o_ai vec_any_gt(vector unsigned short __a,
16508 (vector unsigned short)__b);
16518 vector unsigned short __b) {
16519 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)__a,
16525 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)__a,
16526 (vector unsigned short)__b);
16538 static __inline__ int __ATTRS_o_ai vec_any_gt(vector unsigned int __a,
16539 vector unsigned int __b) {
16543 static __inline__ int __ATTRS_o_ai vec_any_gt(vector unsigned int __a,
16546 (vector unsigned int)__b);
16556 vector unsigned int __b) {
16557 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)__a,
16563 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)__a,
16564 (vector unsigned int)__b);
16573 static __inline__ int __ATTRS_o_ai vec_any_gt(vector unsigned long long __a,
16574 vector unsigned long long __b) {
16584 static __inline__ int __ATTRS_o_ai vec_any_gt(vector unsigned long long __a,
16587 (vector unsigned long long)__b);
16597 vector unsigned long long __b) {
16599 (vector unsigned long long)__a, __b);
16605 (vector unsigned long long)__a,
16606 (vector unsigned long long)__b);
16632 static __inline__ int __ATTRS_o_ai vec_any_gt(vector unsigned __int128 __a,
16633 vector unsigned __int128 __b) {
16651 static __inline__ int __ATTRS_o_ai vec_any_le(vector unsigned char __a,
16652 vector unsigned char __b) {
16656 static __inline__ int __ATTRS_o_ai vec_any_le(vector unsigned char __a,
16659 (vector unsigned char)__b);
16669 vector unsigned char __b) {
16670 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)__a,
16676 return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)__a,
16677 (vector unsigned char)__b);
16690 static __inline__ int __ATTRS_o_ai vec_any_le(vector unsigned short __a,
16691 vector unsigned short __b) {
16695 static __inline__ int __ATTRS_o_ai vec_any_le(vector unsigned short __a,
16698 (vector unsigned short)__b);
16708 vector unsigned short __b) {
16709 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)__a,
16715 return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)__a,
16716 (vector unsigned short)__b);
16728 static __inline__ int __ATTRS_o_ai vec_any_le(vector unsigned int __a,
16729 vector unsigned int __b) {
16733 static __inline__ int __ATTRS_o_ai vec_any_le(vector unsigned int __a,
16736 (vector unsigned int)__b);
16746 vector unsigned int __b) {
16747 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)__a,
16753 return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)__a,
16754 (vector unsigned int)__b);
16763 static __inline__ int __ATTRS_o_ai vec_any_le(vector unsigned long long __a,
16764 vector unsigned long long __b) {
16774 static __inline__ int __ATTRS_o_ai vec_any_le(vector unsigned long long __a,
16777 (vector unsigned long long)__b);
16787 vector unsigned long long __b) {
16789 (vector unsigned long long)__a, __b);
16795 (vector unsigned long long)__a,
16796 (vector unsigned long long)__b);
16822 static __inline__ int __ATTRS_o_ai vec_any_le(vector unsigned __int128 __a,
16823 vector unsigned __int128 __b) {
16841 static __inline__ int __ATTRS_o_ai vec_any_lt(vector unsigned char __a,
16842 vector unsigned char __b) {
16846 static __inline__ int __ATTRS_o_ai vec_any_lt(vector unsigned char __a,
16848 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)__b,
16859 vector unsigned char __b) {
16861 (vector unsigned char)__a);
16866 return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)__b,
16867 (vector unsigned char)__a);
16880 static __inline__ int __ATTRS_o_ai vec_any_lt(vector unsigned short __a,
16881 vector unsigned short __b) {
16885 static __inline__ int __ATTRS_o_ai vec_any_lt(vector unsigned short __a,
16887 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)__b,
16898 vector unsigned short __b) {
16900 (vector unsigned short)__a);
16905 return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)__b,
16906 (vector unsigned short)__a);
16918 static __inline__ int __ATTRS_o_ai vec_any_lt(vector unsigned int __a,
16919 vector unsigned int __b) {
16923 static __inline__ int __ATTRS_o_ai vec_any_lt(vector unsigned int __a,
16925 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)__b,
16936 vector unsigned int __b) {
16938 (vector unsigned int)__a);
16943 return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)__b,
16944 (vector unsigned int)__a);
16953 static __inline__ int __ATTRS_o_ai vec_any_lt(vector unsigned long long __a,
16954 vector unsigned long long __b) {
16964 static __inline__ int __ATTRS_o_ai vec_any_lt(vector unsigned long long __a,
16967 (vector unsigned long long)__b, __a);
16977 vector unsigned long long __b) {
16979 (vector unsigned long long)__a);
16985 (vector unsigned long long)__b,
16986 (vector unsigned long long)__a);
17012 static __inline__ int __ATTRS_o_ai vec_any_lt(vector unsigned __int128 __a,
17013 vector unsigned __int128 __b) {
17047 static __inline__ int __ATTRS_o_ai vec_any_ne(vector unsigned char __a,
17048 vector unsigned char __b) {
17053 static __inline__ int __ATTRS_o_ai vec_any_ne(vector unsigned char __a,
17066 vector unsigned char __b) {
17087 static __inline__ int __ATTRS_o_ai vec_any_ne(vector unsigned short __a,
17088 vector unsigned short __b) {
17093 static __inline__ int __ATTRS_o_ai vec_any_ne(vector unsigned short __a,
17106 vector unsigned short __b) {
17132 static __inline__ int __ATTRS_o_ai vec_any_ne(vector unsigned int __a,
17133 vector unsigned int __b) {
17138 static __inline__ int __ATTRS_o_ai vec_any_ne(vector unsigned int __a,
17151 vector unsigned int __b) {
17174 static __inline__ int __ATTRS_o_ai vec_any_ne(vector unsigned long long __a,
17175 vector unsigned long long __b) {
17184 static __inline__ int __ATTRS_o_ai vec_any_ne(vector unsigned long long __a,
17195 vector unsigned long long __b) {
17225 (vector unsigned __int128)__a, __b);
17228 static __inline__ int __ATTRS_o_ai vec_any_ne(vector unsigned __int128 __a,
17229 vector unsigned __int128 __b) {
17237 __CR6_LT_REV, (vector unsigned __int128)__a, (vector signed __int128)__b);
17357 static __inline__ vector unsigned char __attribute__((__always_inline__))
17358 __builtin_crypto_vsbox(vector unsigned char __a) {
17362 static __inline__ vector unsigned char __attribute__((__always_inline__))
17363 __builtin_crypto_vcipher(vector unsigned char __a,
17364 vector unsigned char __b) {
17368 static __inline__ vector unsigned char __attribute__((__always_inline__))
17369 __builtin_crypto_vcipherlast(vector unsigned char __a,
17370 vector unsigned char __b) {
17374 static __inline__ vector unsigned char __attribute__((__always_inline__))
17375 __builtin_crypto_vncipher(vector unsigned char __a,
17376 vector unsigned char __b) {
17380 static __inline__ vector unsigned char __attribute__((__always_inline__))
17381 __builtin_crypto_vncipherlast(vector unsigned char __a,
17382 vector unsigned char __b) {
17391 _Generic((X), vector unsigned int \
17392 : __builtin_crypto_vshasigmaw, vector unsigned long long \
17401 (vector unsigned char)__a, (vector unsigned char)__b,
17402 (vector unsigned char)__c);
17409 (vector unsigned char)__a, (vector unsigned char)__b,
17410 (vector unsigned char)__c);
17413 static __inline__ vector unsigned char __ATTRS_o_ai
17414 vec_permxor(vector unsigned char __a, vector unsigned char __b,
17415 vector unsigned char __c) {
17419 static __inline__ vector unsigned char __ATTRS_o_ai
17420 __builtin_crypto_vpermxor(vector unsigned char __a, vector unsigned char __b,
17421 vector unsigned char __c) {
17425 static __inline__ vector unsigned short __ATTRS_o_ai
17426 __builtin_crypto_vpermxor(vector unsigned short __a, vector unsigned short __b,
17427 vector unsigned short __c) {
17428 return (vector unsigned short)__builtin_altivec_crypto_vpermxor(
17429 (vector unsigned char)__a, (vector unsigned char)__b,
17430 (vector unsigned char)__c);
17433 static __inline__ vector unsigned int __ATTRS_o_ai __builtin_crypto_vpermxor(
17434 vector unsigned int __a, vector unsigned int __b, vector unsigned int __c) {
17435 return (vector unsigned int)__builtin_altivec_crypto_vpermxor(
17436 (vector unsigned char)__a, (vector unsigned char)__b,
17437 (vector unsigned char)__c);
17440 static __inline__ vector unsigned long long __ATTRS_o_ai
17441 __builtin_crypto_vpermxor(vector unsigned long long __a,
17442 vector unsigned long long __b,
17443 vector unsigned long long __c) {
17444 return (vector unsigned long long)__builtin_altivec_crypto_vpermxor(
17445 (vector unsigned char)__a, (vector unsigned char)__b,
17446 (vector unsigned char)__c);
17449 static __inline__ vector unsigned char __ATTRS_o_ai
17450 __builtin_crypto_vpmsumb(vector unsigned char __a, vector unsigned char __b) {
17454 static __inline__ vector unsigned short __ATTRS_o_ai
17455 __builtin_crypto_vpmsumb(vector unsigned short __a, vector unsigned short __b) {
17459 static __inline__ vector unsigned int __ATTRS_o_ai
17460 __builtin_crypto_vpmsumb(vector unsigned int __a, vector unsigned int __b) {
17464 static __inline__ vector unsigned long long __ATTRS_o_ai
17465 __builtin_crypto_vpmsumb(vector unsigned long long __a,
17466 vector unsigned long long __b) {
17472 return (vector signed char)__builtin_altivec_vgbbd((vector unsigned char)__a);
17478 static __inline__ vector unsigned char __ATTRS_o_ai
17479 vec_vgbbd(vector unsigned char __a) {
17486 (vector unsigned char)__a);
17489 static __inline__ vector unsigned long long __ATTRS_o_ai
17490 vec_gbb(vector unsigned long long __a) {
17491 return (vector unsigned long long)__builtin_altivec_vgbbd(
17492 (vector unsigned char)__a);
17497 return (vector long long)__builtin_altivec_vbpermq((vector unsigned char)__a,
17498 (vector unsigned char)__b);
17502 vec_vbpermq(vector unsigned char __a, vector unsigned char __b) {
17507 static __inline__ vector unsigned long long __ATTRS_o_ai
17508 vec_bperm(vector unsigned __int128 __a, vector unsigned char __b) {
17509 return __builtin_altivec_vbpermq((vector unsigned char)__a,
17510 (vector unsigned char)__b);
17513 static __inline__ vector unsigned char __ATTRS_o_ai
17514 vec_bperm(vector unsigned char __a, vector unsigned char __b) {
17515 return (vector unsigned char)__builtin_altivec_vbpermq(__a, __b);
17519 static __inline__ vector unsigned long long __ATTRS_o_ai
17520 vec_bperm(vector unsigned long long __a, vector unsigned char __b) {
17538 static inline __ATTRS_o_ai vector unsigned char
17539 vec_reve(vector unsigned char __a) {
17552 static inline __ATTRS_o_ai vector unsigned int
17553 vec_reve(vector unsigned int __a) {
17566 static inline __ATTRS_o_ai vector unsigned short
17567 vec_reve(vector unsigned short __a) {
17586 static inline __ATTRS_o_ai vector unsigned long long
17587 vec_reve(vector unsigned long long __a) {
17607 static __inline__ vector unsigned char __ATTRS_o_ai
17608 vec_revb(vector unsigned char __a) {
17614 vector unsigned char __indices =
17621 vector unsigned char __indices =
17626 static __inline__ vector unsigned short __ATTRS_o_ai
17627 vec_revb(vector unsigned short __a) {
17628 vector unsigned char __indices =
17635 vector unsigned char __indices =
17642 vector unsigned char __indices =
17647 static __inline__ vector unsigned int __ATTRS_o_ai
17648 vec_revb(vector unsigned int __a) {
17649 vector unsigned char __indices =
17656 vector unsigned char __indices =
17664 vector unsigned char __indices =
17671 vector unsigned char __indices =
17676 static __inline__ vector unsigned long long __ATTRS_o_ai
17677 vec_revb(vector unsigned long long __a) {
17678 vector unsigned char __indices =
17685 vector unsigned char __indices =
17695 vector unsigned char __indices =
17702 static __inline__ vector unsigned __int128 __ATTRS_o_ai
17703 vec_revb(vector unsigned __int128 __a) {
17704 vector unsigned char __indices =
17706 return (vector unsigned __int128)vec_perm((vector signed int)__a,
17717 typedef vector unsigned char unaligned_vec_uchar __attribute__((aligned(1)));
17719 typedef vector unsigned short unaligned_vec_ushort __attribute__((aligned(1)));
17721 typedef vector unsigned int unaligned_vec_uint __attribute__((aligned(1)));
17729 static inline __ATTRS_o_ai vector unsigned char
17730 vec_xl(ptrdiff_t __offset, const unsigned char *__ptr) {
17740 static inline __ATTRS_o_ai vector unsigned short
17741 vec_xl(ptrdiff_t __offset, const unsigned short *__ptr) {
17752 static inline __ATTRS_o_ai vector unsigned int
17753 vec_xl(ptrdiff_t __offset, const unsigned int *__ptr) {
17766 typedef vector unsigned long long unaligned_vec_ull __attribute__((aligned(1)));
17775 static inline __ATTRS_o_ai vector unsigned long long
17776 vec_xl(ptrdiff_t __offset, const unsigned long long *__ptr) {
17791 typedef vector unsigned __int128 unaligned_vec_ui128
17799 static inline __ATTRS_o_ai vector unsigned __int128
17800 vec_xl(ptrdiff_t __offset, const unsigned __int128 *__ptr) {
17816 static __inline__ vector unsigned char __ATTRS_o_ai
17817 vec_xl_be(ptrdiff_t __offset, const unsigned char *__ptr) {
17818 vector unsigned char __vec = (vector unsigned char)__builtin_vsx_lxvd2x_be(__offset, __ptr);
17829 static __inline__ vector unsigned short __ATTRS_o_ai
17830 vec_xl_be(ptrdiff_t __offset, const unsigned short *__ptr) {
17831 vector unsigned short __vec = (vector unsigned short)__builtin_vsx_lxvd2x_be(__offset, __ptr);
17840 static __inline__ vector unsigned int __ATTRS_o_ai
17841 vec_xl_be(signed long long __offset, const unsigned int *__ptr) {
17842 return (vector unsigned int)__builtin_vsx_lxvw4x_be(__offset, __ptr);
17856 static __inline__ vector unsigned long long __ATTRS_o_ai
17857 vec_xl_be(signed long long __offset, const unsigned long long *__ptr) {
17858 return (vector unsigned long long)__builtin_vsx_lxvd2x_be(__offset, __ptr);
17874 static __inline__ vector unsigned __int128 __ATTRS_o_ai
17875 vec_xl_be(signed long long __offset, const unsigned __int128 *__ptr) {
17910 static __inline__ vector unsigned __int128 __ATTRS_o_ai
17911 vec_xl_zext(ptrdiff_t __offset, const unsigned char *__pointer) {
17912 return (vector unsigned __int128)*(__pointer + __offset);
17915 static __inline__ vector unsigned __int128 __ATTRS_o_ai
17916 vec_xl_zext(ptrdiff_t __offset, const unsigned short *__pointer) {
17917 return (vector unsigned __int128)*(__pointer + __offset);
17920 static __inline__ vector unsigned __int128 __ATTRS_o_ai
17921 vec_xl_zext(ptrdiff_t __offset, const unsigned int *__pointer) {
17922 return (vector unsigned __int128)*(__pointer + __offset);
17925 static __inline__ vector unsigned __int128 __ATTRS_o_ai
17926 vec_xl_zext(ptrdiff_t __offset, const unsigned long long *__pointer) {
17927 return (vector unsigned __int128)*(__pointer + __offset);
17940 static __inline__ vector unsigned long long __ATTRS_o_ai
17941 vec_xlds(ptrdiff_t __offset, const unsigned long long *__ptr) {
17942 unsigned long long *__addr = (unsigned long long *)((signed char *)__ptr + __offset);
17960 vec_load_splats(unsigned long long __offset, const signed int *__ptr) {
17965 static __inline__ vector unsigned int __ATTRS_o_ai
17966 vec_load_splats(signed long long __offset, const unsigned int *__ptr) {
17967 unsigned int *__addr = (unsigned int*)((signed char *)__ptr + __offset);
17968 return (vector unsigned int)*__addr;
17971 static __inline__ vector unsigned int __ATTRS_o_ai
17972 vec_load_splats(unsigned long long __offset, const unsigned int *__ptr) {
17973 unsigned int *__addr = (unsigned int*)((signed char *)__ptr + __offset);
17974 return (vector unsigned int)*__addr;
17984 vec_load_splats(unsigned long long __offset, const float *__ptr) {
18000 vec_xst(vector unsigned char __vec, ptrdiff_t __offset, unsigned char *__ptr) {
18010 static inline __ATTRS_o_ai void vec_xst(vector unsigned short __vec,
18012 unsigned short *__ptr) {
18024 vec_xst(vector unsigned int __vec, ptrdiff_t __offset, unsigned int *__ptr) {
18043 static inline __ATTRS_o_ai void vec_xst(vector unsigned long long __vec,
18045 unsigned long long *__ptr) {
18066 static inline __ATTRS_o_ai void vec_xst(vector unsigned __int128 __vec,
18068 unsigned __int128 *__ptr) {
18084 static inline __ATTRS_o_ai void vec_xst_trunc(vector unsigned __int128 __vec,
18086 unsigned char *__ptr) {
18087 *(__ptr + __offset) = (unsigned char)__vec[0];
18096 static inline __ATTRS_o_ai void vec_xst_trunc(vector unsigned __int128 __vec,
18098 unsigned short *__ptr) {
18099 *(__ptr + __offset) = (unsigned short)__vec[0];
18108 static inline __ATTRS_o_ai void vec_xst_trunc(vector unsigned __int128 __vec,
18110 unsigned int *__ptr) {
18111 *(__ptr + __offset) = (unsigned int)__vec[0];
18120 static inline __ATTRS_o_ai void vec_xst_trunc(vector unsigned __int128 __vec,
18122 unsigned long long *__ptr) {
18123 *(__ptr + __offset) = (unsigned long long)__vec[0];
18140 static __inline__ void __ATTRS_o_ai vec_xst_be(vector unsigned char __vec,
18142 unsigned char *__ptr) {
18143 vector unsigned char __tmp =
18159 static __inline__ void __ATTRS_o_ai vec_xst_be(vector unsigned short __vec,
18161 unsigned short *__ptr) {
18162 vector unsigned short __tmp =
18174 static __inline__ void __ATTRS_o_ai vec_xst_be(vector unsigned int __vec,
18176 unsigned int *__ptr) {
18193 static __inline__ void __ATTRS_o_ai vec_xst_be(vector unsigned long long __vec,
18195 unsigned long long *__ptr) {
18214 static __inline__ void __ATTRS_o_ai vec_xst_be(vector unsigned __int128 __vec,
18216 unsigned __int128 *__ptr) {
18309 static __inline__ unsigned int __ATTRS_o_ai
18310 vec_extractm(vector unsigned char __a) {
18314 static __inline__ unsigned int __ATTRS_o_ai
18315 vec_extractm(vector unsigned short __a) {
18319 static __inline__ unsigned int __ATTRS_o_ai
18320 vec_extractm(vector unsigned int __a) {
18324 static __inline__ unsigned int __ATTRS_o_ai
18325 vec_extractm(vector unsigned long long __a) {
18330 static __inline__ unsigned int __ATTRS_o_ai
18331 vec_extractm(vector unsigned __int128 __a) {
18338 static __inline__ vector unsigned char __ATTRS_o_ai
18339 vec_expandm(vector unsigned char __a) {
18343 static __inline__ vector unsigned short __ATTRS_o_ai
18344 vec_expandm(vector unsigned short __a) {
18348 static __inline__ vector unsigned int __ATTRS_o_ai
18349 vec_expandm(vector unsigned int __a) {
18353 static __inline__ vector unsigned long long __ATTRS_o_ai
18354 vec_expandm(vector unsigned long long __a) {
18359 static __inline__ vector unsigned __int128 __ATTRS_o_ai
18360 vec_expandm(vector unsigned __int128 __a) {
18368 _Generic((__a), vector unsigned char \
18369 : __builtin_altivec_vcntmbb((vector unsigned char)(__a), \
18370 (unsigned char)(__mp)), \
18371 vector unsigned short \
18372 : __builtin_altivec_vcntmbh((vector unsigned short)(__a), \
18373 (unsigned char)(__mp)), \
18374 vector unsigned int \
18375 : __builtin_altivec_vcntmbw((vector unsigned int)(__a), \
18376 (unsigned char)(__mp)), \
18377 vector unsigned long long \
18378 : __builtin_altivec_vcntmbd((vector unsigned long long)(__a), \
18379 (unsigned char)(__mp)))
18383 static __inline__ vector unsigned char __ATTRS_o_ai
18384 vec_genbm(unsigned long long __bm) {
18388 static __inline__ vector unsigned short __ATTRS_o_ai
18389 vec_genhm(unsigned long long __bm) {
18393 static __inline__ vector unsigned int __ATTRS_o_ai
18394 vec_genwm(unsigned long long __bm) {
18398 static __inline__ vector unsigned long long __ATTRS_o_ai
18399 vec_gendm(unsigned long long __bm) {
18404 static __inline__ vector unsigned __int128 __ATTRS_o_ai
18405 vec_genqm(unsigned long long __bm) {
18412 static __inline__ vector unsigned long long __ATTRS_o_ai
18413 vec_pdep(vector unsigned long long __a, vector unsigned long long __b) {
18419 static __inline__ vector unsigned long long __ATTRS_o_ai
18420 vec_pext(vector unsigned long long __a, vector unsigned long long __b) {
18426 static __inline__ vector unsigned long long __ATTRS_o_ai
18427 vec_cfuge(vector unsigned long long __a, vector unsigned long long __b) {
18439 _Generic((__a), vector unsigned char \
18440 : (vector unsigned char)__builtin_vsx_xxeval( \
18441 (vector unsigned long long)(__a), \
18442 (vector unsigned long long)(__b), \
18443 (vector unsigned long long)(__c), (__imm)), \
18444 vector unsigned short \
18445 : (vector unsigned short)__builtin_vsx_xxeval( \
18446 (vector unsigned long long)(__a), \
18447 (vector unsigned long long)(__b), \
18448 (vector unsigned long long)(__c), (__imm)), \
18449 vector unsigned int \
18450 : (vector unsigned int)__builtin_vsx_xxeval( \
18451 (vector unsigned long long)(__a), \
18452 (vector unsigned long long)(__b), \
18453 (vector unsigned long long)(__c), (__imm)), \
18454 vector unsigned long long \
18455 : (vector unsigned long long)__builtin_vsx_xxeval( \
18456 (vector unsigned long long)(__a), \
18457 (vector unsigned long long)(__b), \
18458 (vector unsigned long long)(__c), (__imm)), \
18459 vector unsigned __int128 \
18460 : (vector unsigned __int128)__builtin_vsx_xxeval( \
18461 (vector unsigned long long)(__a), \
18462 (vector unsigned long long)(__b), \
18463 (vector unsigned long long)(__c), (__imm)))
18466 _Generic((__a), vector unsigned char \
18467 : (vector unsigned char)__builtin_vsx_xxeval( \
18468 (vector unsigned long long)(__a), \
18469 (vector unsigned long long)(__b), \
18470 (vector unsigned long long)(__c), (__imm)), \
18471 vector unsigned short \
18472 : (vector unsigned short)__builtin_vsx_xxeval( \
18473 (vector unsigned long long)(__a), \
18474 (vector unsigned long long)(__b), \
18475 (vector unsigned long long)(__c), (__imm)), \
18476 vector unsigned int \
18477 : (vector unsigned int)__builtin_vsx_xxeval( \
18478 (vector unsigned long long)(__a), \
18479 (vector unsigned long long)(__b), \
18480 (vector unsigned long long)(__c), (__imm)), \
18481 vector unsigned long long \
18482 : (vector unsigned long long)__builtin_vsx_xxeval( \
18483 (vector unsigned long long)(__a), \
18484 (vector unsigned long long)(__b), \
18485 (vector unsigned long long)(__c), (__imm)))
18494 (__a), vector unsigned char \
18495 : __builtin_vsx_xxgenpcvbm((vector unsigned char)(__a), (int)(__imm)), \
18496 vector unsigned short \
18497 : __builtin_vsx_xxgenpcvhm((vector unsigned short)(__a), (int)(__imm)), \
18498 vector unsigned int \
18499 : __builtin_vsx_xxgenpcvwm((vector unsigned int)(__a), (int)(__imm)), \
18500 vector unsigned long long \
18501 : __builtin_vsx_xxgenpcvdm((vector unsigned long long)(__a), \
18508 vec_clr_first(vector signed char __a, unsigned int __n) {
18510 return (vector signed char)__builtin_altivec_vclrrb((vector unsigned char)__a,
18513 return (vector signed char)__builtin_altivec_vclrlb((vector unsigned char)__a,
18518 static __inline__ vector unsigned char __ATTRS_o_ai
18519 vec_clr_first(vector unsigned char __a, unsigned int __n) {
18521 return (vector unsigned char)__builtin_altivec_vclrrb(
18522 (vector unsigned char)__a, __n);
18524 return (vector unsigned char)__builtin_altivec_vclrlb(
18525 (vector unsigned char)__a, __n);
18532 vec_clr_last(vector signed char __a, unsigned int __n) {
18534 return (vector signed char)__builtin_altivec_vclrlb((vector unsigned char)__a,
18537 return (vector signed char)__builtin_altivec_vclrrb((vector unsigned char)__a,
18542 static __inline__ vector unsigned char __ATTRS_o_ai
18543 vec_clr_last(vector unsigned char __a, unsigned int __n) {
18545 return (vector unsigned char)__builtin_altivec_vclrlb(
18546 (vector unsigned char)__a, __n);
18548 return (vector unsigned char)__builtin_altivec_vclrrb(
18549 (vector unsigned char)__a, __n);
18555 static __inline__ vector unsigned long long __ATTRS_o_ai
18556 vec_cntlzm(vector unsigned long long __a, vector unsigned long long __b) {
18562 static __inline__ vector unsigned long long __ATTRS_o_ai
18563 vec_cnttzm(vector unsigned long long __a, vector unsigned long long __b) {
18574 static __inline__ vector unsigned int __ATTRS_o_ai
18575 vec_mod(vector unsigned int __a, vector unsigned int __b) {
18584 static __inline__ vector unsigned long long __ATTRS_o_ai
18585 vec_mod(vector unsigned long long __a, vector unsigned long long __b) {
18595 static __inline__ vector unsigned __int128 __ATTRS_o_ai
18596 vec_mod(vector unsigned __int128 __a, vector unsigned __int128 __b) {
18604 (__a), vector unsigned char \
18605 : (vector unsigned char)__builtin_altivec_vsldbi( \
18606 (vector unsigned char)__a, (vector unsigned char)__b, \
18610 (vector unsigned char)__a, (vector unsigned char)__b, \
18612 vector unsigned short \
18613 : (vector unsigned short)__builtin_altivec_vsldbi( \
18614 (vector unsigned char)__a, (vector unsigned char)__b, \
18618 (vector unsigned char)__a, (vector unsigned char)__b, \
18620 vector unsigned int \
18621 : (vector unsigned int)__builtin_altivec_vsldbi( \
18622 (vector unsigned char)__a, (vector unsigned char)__b, \
18625 : (vector signed int)__builtin_altivec_vsldbi((vector unsigned char)__a, \
18626 (vector unsigned char)__b, \
18628 vector unsigned long long \
18629 : (vector unsigned long long)__builtin_altivec_vsldbi( \
18630 (vector unsigned char)__a, (vector unsigned char)__b, \
18634 (vector unsigned char)__a, (vector unsigned char)__b, (__c & 0x7)))
18639 (__a), vector unsigned char \
18640 : (vector unsigned char)__builtin_altivec_vsrdbi( \
18641 (vector unsigned char)__a, (vector unsigned char)__b, \
18645 (vector unsigned char)__a, (vector unsigned char)__b, \
18647 vector unsigned short \
18648 : (vector unsigned short)__builtin_altivec_vsrdbi( \
18649 (vector unsigned char)__a, (vector unsigned char)__b, \
18653 (vector unsigned char)__a, (vector unsigned char)__b, \
18655 vector unsigned int \
18656 : (vector unsigned int)__builtin_altivec_vsrdbi( \
18657 (vector unsigned char)__a, (vector unsigned char)__b, \
18660 : (vector signed int)__builtin_altivec_vsrdbi((vector unsigned char)__a, \
18661 (vector unsigned char)__b, \
18663 vector unsigned long long \
18664 : (vector unsigned long long)__builtin_altivec_vsrdbi( \
18665 (vector unsigned char)__a, (vector unsigned char)__b, \
18669 (vector unsigned char)__a, (vector unsigned char)__b, (__c & 0x7)))
18673 static __inline__ vector unsigned char __ATTRS_o_ai
18674 vec_insertl(unsigned char __a, vector unsigned char __b, unsigned int __c) {
18682 static __inline__ vector unsigned short __ATTRS_o_ai
18683 vec_insertl(unsigned short __a, vector unsigned short __b, unsigned int __c) {
18691 static __inline__ vector unsigned int __ATTRS_o_ai
18692 vec_insertl(unsigned int __a, vector unsigned int __b, unsigned int __c) {
18700 static __inline__ vector unsigned long long __ATTRS_o_ai
18701 vec_insertl(unsigned long long __a, vector unsigned long long __b,
18702 unsigned int __c) {
18710 static __inline__ vector unsigned char __ATTRS_o_ai
18711 vec_insertl(vector unsigned char __a, vector unsigned char __b,
18712 unsigned int __c) {
18720 static __inline__ vector unsigned short __ATTRS_o_ai
18721 vec_insertl(vector unsigned short __a, vector unsigned short __b,
18722 unsigned int __c) {
18730 static __inline__ vector unsigned int __ATTRS_o_ai
18731 vec_insertl(vector unsigned int __a, vector unsigned int __b,
18732 unsigned int __c) {
18742 static __inline__ vector unsigned char __ATTRS_o_ai
18743 vec_inserth(unsigned char __a, vector unsigned char __b, unsigned int __c) {
18751 static __inline__ vector unsigned short __ATTRS_o_ai
18752 vec_inserth(unsigned short __a, vector unsigned short __b, unsigned int __c) {
18760 static __inline__ vector unsigned int __ATTRS_o_ai
18761 vec_inserth(unsigned int __a, vector unsigned int __b, unsigned int __c) {
18769 static __inline__ vector unsigned long long __ATTRS_o_ai
18770 vec_inserth(unsigned long long __a, vector unsigned long long __b,
18771 unsigned int __c) {
18779 static __inline__ vector unsigned char __ATTRS_o_ai
18780 vec_inserth(vector unsigned char __a, vector unsigned char __b,
18781 unsigned int __c) {
18789 static __inline__ vector unsigned short __ATTRS_o_ai
18790 vec_inserth(vector unsigned short __a, vector unsigned short __b,
18791 unsigned int __c) {
18799 static __inline__ vector unsigned int __ATTRS_o_ai
18800 vec_inserth(vector unsigned int __a, vector unsigned int __b,
18801 unsigned int __c) {
18811 static __inline__ vector unsigned long long __ATTRS_o_ai vec_extractl(
18812 vector unsigned char __a, vector unsigned char __b, unsigned int __c) {
18816 vector unsigned long long __ret = __builtin_altivec_vextdubvlx(__a, __b, __c);
18821 static __inline__ vector unsigned long long __ATTRS_o_ai vec_extractl(
18822 vector unsigned short __a, vector unsigned short __b, unsigned int __c) {
18826 vector unsigned long long __ret = __builtin_altivec_vextduhvlx(__a, __b, __c);
18831 static __inline__ vector unsigned long long __ATTRS_o_ai vec_extractl(
18832 vector unsigned int __a, vector unsigned int __b, unsigned int __c) {
18836 vector unsigned long long __ret = __builtin_altivec_vextduwvlx(__a, __b, __c);
18841 static __inline__ vector unsigned long long __ATTRS_o_ai
18842 vec_extractl(vector unsigned long long __a, vector unsigned long long __b,
18843 unsigned int __c) {
18847 vector unsigned long long __ret = __builtin_altivec_vextddvlx(__a, __b, __c);
18854 static __inline__ vector unsigned long long __ATTRS_o_ai vec_extracth(
18855 vector unsigned char __a, vector unsigned char __b, unsigned int __c) {
18859 vector unsigned long long __ret = __builtin_altivec_vextdubvrx(__a, __b, __c);
18864 static __inline__ vector unsigned long long __ATTRS_o_ai vec_extracth(
18865 vector unsigned short __a, vector unsigned short __b, unsigned int __c) {
18869 vector unsigned long long __ret = __builtin_altivec_vextduhvrx(__a, __b, __c);
18874 static __inline__ vector unsigned long long __ATTRS_o_ai vec_extracth(
18875 vector unsigned int __a, vector unsigned int __b, unsigned int __c) {
18879 vector unsigned long long __ret = __builtin_altivec_vextduwvrx(__a, __b, __c);
18884 static __inline__ vector unsigned long long __ATTRS_o_ai
18885 vec_extracth(vector unsigned long long __a, vector unsigned long long __b,
18886 unsigned int __c) {
18890 vector unsigned long long __ret = __builtin_altivec_vextddvrx(__a, __b, __c);
18900 (__a), vector unsigned char \
18901 : (vector unsigned char)__builtin_vsx_xxpermx( \
18902 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d), \
18905 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d), \
18906 vector unsigned short \
18907 : (vector unsigned short)__builtin_vsx_xxpermx( \
18908 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d), \
18911 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d), \
18912 vector unsigned int \
18913 : (vector unsigned int)__builtin_vsx_xxpermx( \
18914 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d), \
18917 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d), \
18918 vector unsigned long long \
18919 : (vector unsigned long long)__builtin_vsx_xxpermx( \
18920 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d), \
18923 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d), \
18926 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d), \
18929 (vector unsigned char)__a, (vector unsigned char)__b, __c, __d))
18935 vector unsigned char __c) {
18937 (vector unsigned char)__a, (vector unsigned char)__b, __c);
18940 static __inline__ vector unsigned char __ATTRS_o_ai
18941 vec_blendv(vector unsigned char __a, vector unsigned char __b,
18942 vector unsigned char __c) {
18948 vector unsigned short __c) {
18950 (vector unsigned short)__a, (vector unsigned short)__b, __c);
18953 static __inline__ vector unsigned short __ATTRS_o_ai
18954 vec_blendv(vector unsigned short __a, vector unsigned short __b,
18955 vector unsigned short __c) {
18961 vector unsigned int __c) {
18963 (vector unsigned int)__a, (vector unsigned int)__b, __c);
18966 static __inline__ vector unsigned int __ATTRS_o_ai
18967 vec_blendv(vector unsigned int __a, vector unsigned int __b,
18968 vector unsigned int __c) {
18974 vector unsigned long long __c) {
18976 (vector unsigned long long)__a, (vector unsigned long long)__b, __c);
18979 static __inline__ vector unsigned long long __ATTRS_o_ai
18980 vec_blendv(vector unsigned long long __a, vector unsigned long long __b,
18981 vector unsigned long long __c) {
18982 return (vector unsigned long long)__builtin_vsx_xxblendvd(__a, __b, __c);
18986 vec_blendv(vector float __a, vector float __b, vector unsigned int __c) {
18987 return (vector float)__builtin_vsx_xxblendvw((vector unsigned int)__a,
18988 (vector unsigned int)__b, __c);
18993 vector unsigned long long __c) {
18995 (vector unsigned long long)__a, (vector unsigned long long)__b, __c);
19000 : __builtin_altivec_vinsw((vector unsigned char)__a, \
19001 (unsigned int)__b, __c), \
19002 vector unsigned int \
19003 : __builtin_altivec_vinsw((vector unsigned char)__a, \
19004 (unsigned int)__b, __c), \
19005 vector unsigned long long \
19006 : __builtin_altivec_vinsd((vector unsigned char)__a, \
19007 (unsigned long long)__b, __c), \
19009 : __builtin_altivec_vinsd((vector unsigned char)__a, \
19010 (unsigned long long)__b, __c), \
19012 : __builtin_altivec_vinsw((vector unsigned char)__a, \
19013 (unsigned int)__b, __c), \
19015 : __builtin_altivec_vinsd((vector unsigned char)__a, \
19016 (unsigned long long)__b, __c))
19021 (vector unsigned char)__a, (unsigned int)__b, __c), \
19022 vector unsigned int \
19023 : (vector unsigned int)__builtin_altivec_vinsw_elt( \
19024 (vector unsigned char)__a, (unsigned int)__b, __c), \
19025 vector unsigned long long \
19026 : (vector unsigned long long)__builtin_altivec_vinsd_elt( \
19027 (vector unsigned char)__a, (unsigned long long)__b, __c), \
19030 (vector unsigned char)__a, (unsigned long long)__b, __c), \
19033 (vector unsigned char)__a, (unsigned int)__b, __c), \
19036 (vector unsigned char)__a, (unsigned long long)__b, __c))
19042 : ((vector signed int)__a), unsigned int \
19043 : ((vector unsigned int)__a), float \
19055 vector signed int __a, const unsigned int __b, const signed int __c) {
19056 const unsigned int __d = __b & 0x01;
19067 static __inline__ vector unsigned int __ATTRS_o_ai vec_splati_ins(
19068 vector unsigned int __a, const unsigned int __b, const unsigned int __c) {
19069 const unsigned int __d = __b & 0x01;
19081 vec_splati_ins(vector float __a, const unsigned int __b, const float __c) {
19082 const unsigned int __d = __b & 0x01;
19096 vec_test_lsbb_all_ones(vector unsigned char __a) {
19103 vec_test_lsbb_all_zeros(vector unsigned char __a) {
19110 static __inline__ vector unsigned char __ATTRS_o_ai
19111 vec_stril(vector unsigned char __a) {
19113 return (vector unsigned char)__builtin_altivec_vstribr(
19114 (vector unsigned char)__a);
19116 return (vector unsigned char)__builtin_altivec_vstribl(
19117 (vector unsigned char)__a);
19125 (vector unsigned char)__a);
19128 (vector unsigned char)__a);
19132 static __inline__ vector unsigned short __ATTRS_o_ai
19133 vec_stril(vector unsigned short __a) {
19135 return (vector unsigned short)__builtin_altivec_vstrihr(
19138 return (vector unsigned short)__builtin_altivec_vstrihl(
19154 static __inline__ int __ATTRS_o_ai vec_stril_p(vector unsigned char __a) {
19156 return __builtin_altivec_vstribr_p(__CR6_EQ, (vector unsigned char)__a);
19158 return __builtin_altivec_vstribl_p(__CR6_EQ, (vector unsigned char)__a);
19164 return __builtin_altivec_vstribr_p(__CR6_EQ, (vector unsigned char)__a);
19166 return __builtin_altivec_vstribl_p(__CR6_EQ, (vector unsigned char)__a);
19170 static __inline__ int __ATTRS_o_ai vec_stril_p(vector unsigned short __a) {
19188 static __inline__ vector unsigned char __ATTRS_o_ai
19189 vec_strir(vector unsigned char __a) {
19191 return (vector unsigned char)__builtin_altivec_vstribl(
19192 (vector unsigned char)__a);
19194 return (vector unsigned char)__builtin_altivec_vstribr(
19195 (vector unsigned char)__a);
19203 (vector unsigned char)__a);
19206 (vector unsigned char)__a);
19210 static __inline__ vector unsigned short __ATTRS_o_ai
19211 vec_strir(vector unsigned short __a) {
19213 return (vector unsigned short)__builtin_altivec_vstrihl(
19216 return (vector unsigned short)__builtin_altivec_vstrihr(
19232 static __inline__ int __ATTRS_o_ai vec_strir_p(vector unsigned char __a) {
19234 return __builtin_altivec_vstribl_p(__CR6_EQ, (vector unsigned char)__a);
19236 return __builtin_altivec_vstribr_p(__CR6_EQ, (vector unsigned char)__a);
19242 return __builtin_altivec_vstribl_p(__CR6_EQ, (vector unsigned char)__a);
19244 return __builtin_altivec_vstribr_p(__CR6_EQ, (vector unsigned char)__a);
19248 static __inline__ int __ATTRS_o_ai vec_strir_p(vector unsigned short __a) {
19267 static __inline__ vector unsigned __int128 __ATTRS_o_ai
19268 vec_sl(vector unsigned __int128 __a, vector unsigned __int128 __b) {
19269 return __a << (__b % (vector unsigned __int128)(sizeof(unsigned __int128) *
19274 vec_sl(vector signed __int128 __a, vector unsigned __int128 __b) {
19275 return __a << (__b % (vector unsigned __int128)(sizeof(unsigned __int128) *
19279 static __inline__ vector unsigned __int128 __ATTRS_o_ai
19280 vec_sr(vector unsigned __int128 __a, vector unsigned __int128 __b) {
19281 return __a >> (__b % (vector unsigned __int128)(sizeof(unsigned __int128) *
19286 vec_sr(vector signed __int128 __a, vector unsigned __int128 __b) {
19288 vector signed __int128)(((vector unsigned __int128)__a) >>
19290 (vector unsigned __int128)(sizeof(
19291 unsigned __int128) *
19295 static __inline__ vector unsigned __int128 __ATTRS_o_ai
19296 vec_sra(vector unsigned __int128 __a, vector unsigned __int128 __b) {
19298 vector unsigned __int128)(((vector signed __int128)__a) >>
19300 (vector unsigned __int128)(sizeof(
19301 unsigned __int128) *
19306 vec_sra(vector signed __int128 __a, vector unsigned __int128 __b) {
19307 return __a >> (__b % (vector unsigned __int128)(sizeof(unsigned __int128) *
19318 static __inline__ long __bcdadd_ofl(vector unsigned char __a,
19319 vector unsigned char __b) {
19323 static __inline__ long __bcdsub_ofl(vector unsigned char __a,
19324 vector unsigned char __b) {
19328 static __inline__ long __bcd_invalid(vector unsigned char __a) {
19332 static __inline__ long __bcdcmpeq(vector unsigned char __a,
19333 vector unsigned char __b) {
19337 static __inline__ long __bcdcmplt(vector unsigned char __a,
19338 vector unsigned char __b) {
19342 static __inline__ long __bcdcmpgt(vector unsigned char __a,
19343 vector unsigned char __b) {
19347 static __inline__ long __bcdcmple(vector unsigned char __a,
19348 vector unsigned char __b) {
19352 static __inline__ long __bcdcmpge(vector unsigned char __a,
19353 vector unsigned char __b) {