|  | /*===---- altivec.h - Standard header for type generic math ---------------===*\ | 
|  | * | 
|  | * Permission is hereby granted, free of charge, to any person obtaining a copy | 
|  | * of this software and associated documentation files (the "Software"), to deal | 
|  | * in the Software without restriction, including without limitation the rights | 
|  | * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | 
|  | * copies of the Software, and to permit persons to whom the Software is | 
|  | * furnished to do so, subject to the following conditions: | 
|  | * | 
|  | * The above copyright notice and this permission notice shall be included in | 
|  | * all copies or substantial portions of the Software. | 
|  | * | 
|  | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | 
|  | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | 
|  | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | 
|  | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | 
|  | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | 
|  | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | 
|  | * THE SOFTWARE. | 
|  | * | 
|  | \*===----------------------------------------------------------------------===*/ | 
|  |  | 
|  | #ifndef __ALTIVEC_H | 
|  | #define __ALTIVEC_H | 
|  |  | 
|  | #ifndef __ALTIVEC__ | 
|  | #error "AltiVec support not enabled" | 
|  | #endif | 
|  |  | 
|  | /* constants for mapping CR6 bits to predicate result. */ | 
|  |  | 
|  | #define __CR6_EQ     0 | 
|  | #define __CR6_EQ_REV 1 | 
|  | #define __CR6_LT     2 | 
|  | #define __CR6_LT_REV 3 | 
|  |  | 
|  | #define __ATTRS_o_ai __attribute__((__overloadable__, __always_inline__)) | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_perm(vector signed char __a, vector signed char __b, vector unsigned char __c); | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_perm(vector unsigned char __a, | 
|  | vector unsigned char __b, | 
|  | vector unsigned char __c); | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_perm(vector bool char __a, vector bool char __b, vector unsigned char __c); | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_perm(vector short __a, vector short __b, vector unsigned char __c); | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_perm(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned char __c); | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_perm(vector bool short __a, vector bool short __b, vector unsigned char __c); | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_perm(vector pixel __a, vector pixel __b, vector unsigned char __c); | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_perm(vector int __a, vector int __b, vector unsigned char __c); | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_perm(vector unsigned int __a, vector unsigned int __b, vector unsigned char __c); | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_perm(vector bool int __a, vector bool int __b, vector unsigned char __c); | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_perm(vector float __a, vector float __b, vector unsigned char __c); | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_xor(vector unsigned char __a, vector unsigned char __b); | 
|  |  | 
|  | /* vec_abs */ | 
|  |  | 
|  | #define __builtin_altivec_abs_v16qi vec_abs | 
|  | #define __builtin_altivec_abs_v8hi  vec_abs | 
|  | #define __builtin_altivec_abs_v4si  vec_abs | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_abs(vector signed char __a) | 
|  | { | 
|  | return __builtin_altivec_vmaxsb(__a, -__a); | 
|  | } | 
|  |  | 
|  | static vector signed short __ATTRS_o_ai | 
|  | vec_abs(vector signed short __a) | 
|  | { | 
|  | return __builtin_altivec_vmaxsh(__a, -__a); | 
|  | } | 
|  |  | 
|  | static vector signed int __ATTRS_o_ai | 
|  | vec_abs(vector signed int __a) | 
|  | { | 
|  | return __builtin_altivec_vmaxsw(__a, -__a); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_abs(vector float __a) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a | 
|  | & (vector unsigned int)(0x7FFFFFFF); | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_abss */ | 
|  |  | 
|  | #define __builtin_altivec_abss_v16qi vec_abss | 
|  | #define __builtin_altivec_abss_v8hi  vec_abss | 
|  | #define __builtin_altivec_abss_v4si  vec_abss | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_abss(vector signed char __a) | 
|  | { | 
|  | return __builtin_altivec_vmaxsb | 
|  | (__a, __builtin_altivec_vsubsbs((vector signed char)(0), __a)); | 
|  | } | 
|  |  | 
|  | static vector signed short __ATTRS_o_ai | 
|  | vec_abss(vector signed short __a) | 
|  | { | 
|  | return __builtin_altivec_vmaxsh | 
|  | (__a, __builtin_altivec_vsubshs((vector signed short)(0), __a)); | 
|  | } | 
|  |  | 
|  | static vector signed int __ATTRS_o_ai | 
|  | vec_abss(vector signed int __a) | 
|  | { | 
|  | return __builtin_altivec_vmaxsw | 
|  | (__a, __builtin_altivec_vsubsws((vector signed int)(0), __a)); | 
|  | } | 
|  |  | 
|  | /* vec_add */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_add(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_add(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_add(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a + (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_add(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_add(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_add(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a + (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_add(vector short __a, vector short __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_add(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_add(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a + (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_add(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_add(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_add(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a + (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_add(vector int __a, vector int __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_add(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_add(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a + (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_add(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_add(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_add(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a + (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_add(vector float __a, vector float __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | /* vec_vaddubm */ | 
|  |  | 
|  | #define __builtin_altivec_vaddubm vec_vaddubm | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vaddubm(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vaddubm(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vaddubm(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a + (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vaddubm(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vaddubm(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vaddubm(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a + (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | /* vec_vadduhm */ | 
|  |  | 
|  | #define __builtin_altivec_vadduhm vec_vadduhm | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vadduhm(vector short __a, vector short __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vadduhm(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vadduhm(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a + (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vadduhm(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vadduhm(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vadduhm(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a + (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | /* vec_vadduwm */ | 
|  |  | 
|  | #define __builtin_altivec_vadduwm vec_vadduwm | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vadduwm(vector int __a, vector int __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vadduwm(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vadduwm(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a + (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vadduwm(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vadduwm(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a + __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vadduwm(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a + (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | /* vec_vaddfp */ | 
|  |  | 
|  | #define __builtin_altivec_vaddfp  vec_vaddfp | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vaddfp(vector float __a, vector float __b) | 
|  | { | 
|  | return __a + __b; | 
|  | } | 
|  |  | 
|  | /* vec_addc */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_addc(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vaddcuw(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vaddcuw */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vaddcuw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vaddcuw(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_adds */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_adds(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsbs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_adds(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsbs((vector signed char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_adds(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsbs(__a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_adds(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddubs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_adds(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddubs((vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_adds(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddubs(__a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_adds(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vaddshs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_adds(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vaddshs((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_adds(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vaddshs(__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_adds(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vadduhs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_adds(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vadduhs((vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_adds(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vadduhs(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_adds(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsws(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_adds(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsws((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_adds(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsws(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_adds(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vadduws(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_adds(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vadduws((vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_adds(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vadduws(__a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vaddsbs */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vaddsbs(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsbs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vaddsbs(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsbs((vector signed char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vaddsbs(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsbs(__a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vaddubs */ | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vaddubs(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddubs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vaddubs(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddubs((vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vaddubs(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vaddubs(__a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vaddshs */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vaddshs(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vaddshs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vaddshs(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vaddshs((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vaddshs(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vaddshs(__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vadduhs */ | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vadduhs(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vadduhs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vadduhs(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vadduhs((vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vadduhs(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vadduhs(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vaddsws */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vaddsws(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsws(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vaddsws(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsws((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vaddsws(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vaddsws(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vadduws */ | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vadduws(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vadduws(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vadduws(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vadduws((vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vadduws(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vadduws(__a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_and */ | 
|  |  | 
|  | #define __builtin_altivec_vand vec_and | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_and(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_and(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_and(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a & (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_and(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_and(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_and(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a & (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_and(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_and(vector short __a, vector short __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_and(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_and(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a & (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_and(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_and(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_and(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a & (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_and(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_and(vector int __a, vector int __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_and(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_and(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a & (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_and(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_and(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_and(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a & (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_and(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_and(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_and(vector bool int __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_and(vector float __a, vector bool int __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_vand */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vand(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vand(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vand(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a & (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vand(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vand(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vand(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a & (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vand(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vand(vector short __a, vector short __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vand(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vand(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a & (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vand(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vand(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vand(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a & (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vand(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vand(vector int __a, vector int __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vand(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vand(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a & (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vand(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vand(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a & __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vand(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a & (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vand(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __a & __b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vand(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vand(vector bool int __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vand(vector float __a, vector bool int __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_andc */ | 
|  |  | 
|  | #define __builtin_altivec_vandc vec_andc | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_andc(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_andc(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_andc(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a & ~(vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_andc(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_andc(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_andc(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a & ~(vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_andc(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_andc(vector short __a, vector short __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_andc(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_andc(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a & ~(vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_andc(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_andc(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_andc(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a & ~(vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_andc(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_andc(vector int __a, vector int __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_andc(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_andc(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a & ~(vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_andc(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_andc(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_andc(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a & ~(vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_andc(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_andc(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_andc(vector bool int __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_andc(vector float __a, vector bool int __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_vandc */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vandc(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vandc(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vandc(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a & ~(vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vandc(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vandc(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vandc(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a & ~(vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vandc(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vandc(vector short __a, vector short __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vandc(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vandc(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a & ~(vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vandc(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vandc(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vandc(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a & ~(vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vandc(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vandc(vector int __a, vector int __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vandc(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vandc(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a & ~(vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vandc(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vandc(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vandc(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a & ~(vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vandc(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __a & ~__b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vandc(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vandc(vector bool int __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vandc(vector float __a, vector bool int __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a & ~(vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_avg */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_avg(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vavgsb(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_avg(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vavgub(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_avg(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vavgsh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_avg(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vavguh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_avg(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vavgsw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_avg(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vavguw(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vavgsb */ | 
|  |  | 
|  | static vector signed char __attribute__((__always_inline__)) | 
|  | vec_vavgsb(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vavgsb(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vavgub */ | 
|  |  | 
|  | static vector unsigned char __attribute__((__always_inline__)) | 
|  | vec_vavgub(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vavgub(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vavgsh */ | 
|  |  | 
|  | static vector short __attribute__((__always_inline__)) | 
|  | vec_vavgsh(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vavgsh(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vavguh */ | 
|  |  | 
|  | static vector unsigned short __attribute__((__always_inline__)) | 
|  | vec_vavguh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vavguh(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vavgsw */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vavgsw(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vavgsw(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vavguw */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vavguw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vavguw(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_ceil */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_ceil(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrfip(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vrfip */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vrfip(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrfip(__a); | 
|  | } | 
|  |  | 
|  | /* vec_cmpb */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_cmpb(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpbfp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcmpbfp */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vcmpbfp(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpbfp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_cmpeq */ | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_cmpeq(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return (vector bool char) | 
|  | __builtin_altivec_vcmpequb((vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_cmpeq(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool char) | 
|  | __builtin_altivec_vcmpequb((vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_cmpeq(vector short __a, vector short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vcmpequh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_cmpeq(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool short) | 
|  | __builtin_altivec_vcmpequh((vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_cmpeq(vector int __a, vector int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpequw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_cmpeq(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool int) | 
|  | __builtin_altivec_vcmpequw((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_cmpeq(vector float __a, vector float __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpeqfp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_cmpge */ | 
|  |  | 
|  | static vector bool int __attribute__((__always_inline__)) | 
|  | vec_cmpge(vector float __a, vector float __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgefp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcmpgefp */ | 
|  |  | 
|  | static vector bool int __attribute__((__always_inline__)) | 
|  | vec_vcmpgefp(vector float __a, vector float __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgefp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_cmpgt */ | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_cmpgt(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vcmpgtsb(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_cmpgt(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vcmpgtub(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_cmpgt(vector short __a, vector short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vcmpgtsh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_cmpgt(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vcmpgtuh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_cmpgt(vector int __a, vector int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgtsw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_cmpgt(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgtuw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_cmpgt(vector float __a, vector float __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgtfp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcmpgtsb */ | 
|  |  | 
|  | static vector bool char __attribute__((__always_inline__)) | 
|  | vec_vcmpgtsb(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vcmpgtsb(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcmpgtub */ | 
|  |  | 
|  | static vector bool char __attribute__((__always_inline__)) | 
|  | vec_vcmpgtub(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vcmpgtub(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcmpgtsh */ | 
|  |  | 
|  | static vector bool short __attribute__((__always_inline__)) | 
|  | vec_vcmpgtsh(vector short __a, vector short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vcmpgtsh(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcmpgtuh */ | 
|  |  | 
|  | static vector bool short __attribute__((__always_inline__)) | 
|  | vec_vcmpgtuh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vcmpgtuh(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcmpgtsw */ | 
|  |  | 
|  | static vector bool int __attribute__((__always_inline__)) | 
|  | vec_vcmpgtsw(vector int __a, vector int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgtsw(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcmpgtuw */ | 
|  |  | 
|  | static vector bool int __attribute__((__always_inline__)) | 
|  | vec_vcmpgtuw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgtuw(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcmpgtfp */ | 
|  |  | 
|  | static vector bool int __attribute__((__always_inline__)) | 
|  | vec_vcmpgtfp(vector float __a, vector float __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgtfp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_cmple */ | 
|  |  | 
|  | static vector bool int __attribute__((__always_inline__)) | 
|  | vec_cmple(vector float __a, vector float __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgefp(__b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_cmplt */ | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_cmplt(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vcmpgtsb(__b, __a); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_cmplt(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vcmpgtub(__b, __a); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_cmplt(vector short __a, vector short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vcmpgtsh(__b, __a); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_cmplt(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vcmpgtuh(__b, __a); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_cmplt(vector int __a, vector int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgtsw(__b, __a); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_cmplt(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgtuw(__b, __a); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_cmplt(vector float __a, vector float __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vcmpgtfp(__b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_ctf */ | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_ctf(vector int __a, int __b) | 
|  | { | 
|  | return __builtin_altivec_vcfsx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_ctf(vector unsigned int __a, int __b) | 
|  | { | 
|  | return __builtin_altivec_vcfux((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcfsx */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vcfsx(vector int __a, int __b) | 
|  | { | 
|  | return __builtin_altivec_vcfsx(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vcfux */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vcfux(vector unsigned int __a, int __b) | 
|  | { | 
|  | return __builtin_altivec_vcfux((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_cts */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_cts(vector float __a, int __b) | 
|  | { | 
|  | return __builtin_altivec_vctsxs(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vctsxs */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vctsxs(vector float __a, int __b) | 
|  | { | 
|  | return __builtin_altivec_vctsxs(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_ctu */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_ctu(vector float __a, int __b) | 
|  | { | 
|  | return __builtin_altivec_vctuxs(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vctuxs */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vctuxs(vector float __a, int __b) | 
|  | { | 
|  | return __builtin_altivec_vctuxs(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_dss */ | 
|  |  | 
|  | static void __attribute__((__always_inline__)) | 
|  | vec_dss(int __a) | 
|  | { | 
|  | __builtin_altivec_dss(__a); | 
|  | } | 
|  |  | 
|  | /* vec_dssall */ | 
|  |  | 
|  | static void __attribute__((__always_inline__)) | 
|  | vec_dssall(void) | 
|  | { | 
|  | __builtin_altivec_dssall(); | 
|  | } | 
|  |  | 
|  | /* vec_dst */ | 
|  |  | 
|  | static void __attribute__((__always_inline__)) | 
|  | vec_dst(const void *__a, int __b, int __c) | 
|  | { | 
|  | __builtin_altivec_dst(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_dstst */ | 
|  |  | 
|  | static void __attribute__((__always_inline__)) | 
|  | vec_dstst(const void *__a, int __b, int __c) | 
|  | { | 
|  | __builtin_altivec_dstst(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_dststt */ | 
|  |  | 
|  | static void __attribute__((__always_inline__)) | 
|  | vec_dststt(const void *__a, int __b, int __c) | 
|  | { | 
|  | __builtin_altivec_dststt(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_dstt */ | 
|  |  | 
|  | static void __attribute__((__always_inline__)) | 
|  | vec_dstt(const void *__a, int __b, int __c) | 
|  | { | 
|  | __builtin_altivec_dstt(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_expte */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_expte(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vexptefp(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vexptefp */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vexptefp(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vexptefp(__a); | 
|  | } | 
|  |  | 
|  | /* vec_floor */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_floor(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrfim(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vrfim */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vrfim(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrfim(__a); | 
|  | } | 
|  |  | 
|  | /* vec_ld */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_ld(int __a, const signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_ld(int __a, const unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector bool char *__b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_ld(int __a, const short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_ld(int __a, const unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector bool short *__b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector pixel *__b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_ld(int __a, const int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_ld(int __a, const unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector bool int *__b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_ld(int __a, const vector float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_ld(int __a, const float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_lvx */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvx(int __a, const signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvx(int __a, const unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector bool char *__b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvx(int __a, const short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvx(int __a, const unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector bool short *__b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector pixel *__b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvx(int __a, const int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvx(int __a, const unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector bool int *__b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvx(int __a, const vector float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvx(int __a, const float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvx(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_lde */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lde(int __a, const signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvebx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lde(int __a, const unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvebx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lde(int __a, const short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvehx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lde(int __a, const unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvehx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lde(int __a, const int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvewx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lde(int __a, const unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvewx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lde(int __a, const float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvewx(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_lvebx */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvebx(int __a, const signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvebx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvebx(int __a, const unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvebx(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_lvehx */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvehx(int __a, const short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvehx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvehx(int __a, const unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvehx(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_lvewx */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvewx(int __a, const int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvewx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvewx(int __a, const unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvewx(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvewx(int __a, const float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvewx(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_ldl */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_ldl(int __a, const signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_ldl(int __a, const unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector bool char *__b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_ldl(int __a, const short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_ldl(int __a, const unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector bool short *__b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector pixel *__b) | 
|  | { | 
|  | return (vector pixel short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_ldl(int __a, const int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_ldl(int __a, const unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector bool int *__b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_ldl(int __a, const vector float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_ldl(int __a, const float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_lvxl */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const signed char *__b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector bool char *__b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const short *__b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector bool short *__b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector pixel *__b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const int *__b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector bool int *__b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const vector float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvxl(int __a, const float *__b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_lvxl(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_loge */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_loge(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vlogefp(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vlogefp */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vlogefp(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vlogefp(__a); | 
|  | } | 
|  |  | 
|  | /* vec_lvsl */ | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsl(int __a, const signed char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsl(int __a, const unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsl(int __a, const short *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsl(int __a, const unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsl(int __a, const int *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsl(int __a, const unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsl(int __a, const float *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsl(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_lvsr */ | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsr(int __a, const signed char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsr(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsr(int __a, const unsigned char *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsr(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsr(int __a, const short *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsr(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsr(int __a, const unsigned short *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsr(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsr(int __a, const int *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsr(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsr(int __a, const unsigned int *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsr(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvsr(int __a, const float *__b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_lvsr(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_madd */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_madd(vector float __a, vector float __b, vector float __c) | 
|  | { | 
|  | return __builtin_altivec_vmaddfp(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vmaddfp */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vmaddfp(vector float __a, vector float __b, vector float __c) | 
|  | { | 
|  | return __builtin_altivec_vmaddfp(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_madds */ | 
|  |  | 
|  | static vector signed short __attribute__((__always_inline__)) | 
|  | vec_madds(vector signed short __a, vector signed short __b, vector signed short __c) | 
|  | { | 
|  | return __builtin_altivec_vmhaddshs(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vmhaddshs */ | 
|  | static vector signed short __attribute__((__always_inline__)) | 
|  | vec_vmhaddshs(vector signed short __a, | 
|  | vector signed short __b, | 
|  | vector signed short __c) | 
|  | { | 
|  | return __builtin_altivec_vmhaddshs(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_max */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_max(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsb(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_max(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsb((vector signed char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_max(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsb(__a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_max(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxub(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_max(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxub((vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_max(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxub(__a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_max(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_max(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsh((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_max(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsh(__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_max(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_max(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuh((vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_max(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuh(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_max(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_max(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsw((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_max(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsw(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_max(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_max(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuw((vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_max(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuw(__a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_max(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxfp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vmaxsb */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vmaxsb(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsb(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vmaxsb(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsb((vector signed char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vmaxsb(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsb(__a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vmaxub */ | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vmaxub(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxub(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vmaxub(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxub((vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vmaxub(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxub(__a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vmaxsh */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vmaxsh(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vmaxsh(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsh((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vmaxsh(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsh(__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vmaxuh */ | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vmaxuh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vmaxuh(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuh((vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vmaxuh(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuh(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vmaxsw */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vmaxsw(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vmaxsw(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsw((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vmaxsw(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxsw(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vmaxuw */ | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vmaxuw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vmaxuw(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuw((vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vmaxuw(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxuw(__a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vmaxfp */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vmaxfp(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vmaxfp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_mergeh */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_mergeh(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13, | 
|  | 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_mergeh(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13, | 
|  | 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_mergeh(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13, | 
|  | 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_mergeh(vector short __a, vector short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_mergeh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_mergeh(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_mergeh(vector pixel __a, vector pixel __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_mergeh(vector int __a, vector int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_mergeh(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_mergeh(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_mergeh(vector float __a, vector float __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | /* vec_vmrghb */ | 
|  |  | 
|  | #define __builtin_altivec_vmrghb vec_vmrghb | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vmrghb(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13, | 
|  | 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vmrghb(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13, | 
|  | 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vmrghb(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13, | 
|  | 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17)); | 
|  | } | 
|  |  | 
|  | /* vec_vmrghh */ | 
|  |  | 
|  | #define __builtin_altivec_vmrghh vec_vmrghh | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vmrghh(vector short __a, vector short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vmrghh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vmrghh(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vmrghh(vector pixel __a, vector pixel __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | /* vec_vmrghw */ | 
|  |  | 
|  | #define __builtin_altivec_vmrghw vec_vmrghw | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vmrghw(vector int __a, vector int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vmrghw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vmrghw(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vmrghw(vector float __a, vector float __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13, | 
|  | 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17)); | 
|  | } | 
|  |  | 
|  | /* vec_mergel */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_mergel(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B, | 
|  | 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_mergel(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B, | 
|  | 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_mergel(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B, | 
|  | 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_mergel(vector short __a, vector short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_mergel(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_mergel(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_mergel(vector pixel __a, vector pixel __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_mergel(vector int __a, vector int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_mergel(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_mergel(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_mergel(vector float __a, vector float __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | /* vec_vmrglb */ | 
|  |  | 
|  | #define __builtin_altivec_vmrglb vec_vmrglb | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vmrglb(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B, | 
|  | 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vmrglb(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B, | 
|  | 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vmrglb(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B, | 
|  | 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F)); | 
|  | } | 
|  |  | 
|  | /* vec_vmrglh */ | 
|  |  | 
|  | #define __builtin_altivec_vmrglh vec_vmrglh | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vmrglh(vector short __a, vector short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vmrglh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vmrglh(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vmrglh(vector pixel __a, vector pixel __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | /* vec_vmrglw */ | 
|  |  | 
|  | #define __builtin_altivec_vmrglw vec_vmrglw | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vmrglw(vector int __a, vector int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vmrglw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vmrglw(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vmrglw(vector float __a, vector float __b) | 
|  | { | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B, | 
|  | 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F)); | 
|  | } | 
|  |  | 
|  | /* vec_mfvscr */ | 
|  |  | 
|  | static vector unsigned short __attribute__((__always_inline__)) | 
|  | vec_mfvscr(void) | 
|  | { | 
|  | return __builtin_altivec_mfvscr(); | 
|  | } | 
|  |  | 
|  | /* vec_min */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_min(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vminsb(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_min(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vminsb((vector signed char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_min(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vminsb(__a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_min(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vminub(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_min(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vminub((vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_min(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vminub(__a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_min(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vminsh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_min(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vminsh((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_min(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vminsh(__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_min(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vminuh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_min(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vminuh((vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_min(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vminuh(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_min(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vminsw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_min(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vminsw((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_min(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vminsw(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_min(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vminuw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_min(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vminuw((vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_min(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vminuw(__a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_min(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vminfp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vminsb */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vminsb(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vminsb(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vminsb(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vminsb((vector signed char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vminsb(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vminsb(__a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vminub */ | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vminub(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vminub(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vminub(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vminub((vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vminub(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vminub(__a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vminsh */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vminsh(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vminsh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vminsh(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vminsh((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vminsh(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vminsh(__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vminuh */ | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vminuh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vminuh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vminuh(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vminuh((vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vminuh(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vminuh(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vminsw */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vminsw(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vminsw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vminsw(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vminsw((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vminsw(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vminsw(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vminuw */ | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vminuw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vminuw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vminuw(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vminuw((vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vminuw(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vminuw(__a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vminfp */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vminfp(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vminfp(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_mladd */ | 
|  |  | 
|  | #define __builtin_altivec_vmladduhm vec_mladd | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_mladd(vector short __a, vector short __b, vector short __c) | 
|  | { | 
|  | return __a * __b + __c; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_mladd(vector short __a, vector unsigned short __b, vector unsigned short __c) | 
|  | { | 
|  | return __a * (vector short)__b + (vector short)__c; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_mladd(vector unsigned short __a, vector short __b, vector short __c) | 
|  | { | 
|  | return (vector short)__a * __b + __c; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_mladd(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned short __c) | 
|  | { | 
|  | return __a * __b + __c; | 
|  | } | 
|  |  | 
|  | /* vec_vmladduhm */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vmladduhm(vector short __a, vector short __b, vector short __c) | 
|  | { | 
|  | return __a * __b + __c; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vmladduhm(vector short __a, vector unsigned short __b, vector unsigned short __c) | 
|  | { | 
|  | return __a * (vector short)__b + (vector short)__c; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vmladduhm(vector unsigned short __a, vector short __b, vector short __c) | 
|  | { | 
|  | return (vector short)__a * __b + __c; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vmladduhm(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned short __c) | 
|  | { | 
|  | return __a * __b + __c; | 
|  | } | 
|  |  | 
|  | /* vec_mradds */ | 
|  |  | 
|  | static vector short __attribute__((__always_inline__)) | 
|  | vec_mradds(vector short __a, vector short __b, vector short __c) | 
|  | { | 
|  | return __builtin_altivec_vmhraddshs(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vmhraddshs */ | 
|  |  | 
|  | static vector short __attribute__((__always_inline__)) | 
|  | vec_vmhraddshs(vector short __a, vector short __b, vector short __c) | 
|  | { | 
|  | return __builtin_altivec_vmhraddshs(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_msum */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_msum(vector signed char __a, vector unsigned char __b, vector int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsummbm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_msum(vector unsigned char __a, vector unsigned char __b, vector unsigned int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumubm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_msum(vector short __a, vector short __b, vector int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumshm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_msum(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumuhm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vmsummbm */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vmsummbm(vector signed char __a, vector unsigned char __b, vector int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsummbm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vmsumubm */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vmsumubm(vector unsigned char __a, | 
|  | vector unsigned char __b, | 
|  | vector unsigned int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumubm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vmsumshm */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vmsumshm(vector short __a, vector short __b, vector int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumshm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vmsumuhm */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vmsumuhm(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumuhm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_msums */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_msums(vector short __a, vector short __b, vector int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumshs(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_msums(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumuhs(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vmsumshs */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vmsumshs(vector short __a, vector short __b, vector int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumshs(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vmsumuhs */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vmsumuhs(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned int __c) | 
|  | { | 
|  | return __builtin_altivec_vmsumuhs(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_mtvscr */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector signed char __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector unsigned char __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector bool char __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector short __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector unsigned short __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector bool short __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector pixel __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector int __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector unsigned int __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector bool int __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_mtvscr(vector float __a) | 
|  | { | 
|  | __builtin_altivec_mtvscr((vector int)__a); | 
|  | } | 
|  |  | 
|  | /* The vmulos* and vmules* instructions have a big endian bias, so | 
|  | we must reverse the meaning of "even" and "odd" for little endian.  */ | 
|  |  | 
|  | /* vec_mule */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_mule(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulosb(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulesb(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_mule(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmuloub(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmuleub(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_mule(vector short __a, vector short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulosh(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulesh(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_mule(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulouh(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmuleuh(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vmulesb */ | 
|  |  | 
|  | static vector short __attribute__((__always_inline__)) | 
|  | vec_vmulesb(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulosb(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulesb(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vmuleub */ | 
|  |  | 
|  | static vector unsigned short __attribute__((__always_inline__)) | 
|  | vec_vmuleub(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmuloub(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmuleub(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vmulesh */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vmulesh(vector short __a, vector short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulosh(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulesh(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vmuleuh */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vmuleuh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulouh(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmuleuh(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_mulo */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_mulo(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulesb(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulosb(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_mulo(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmuleub(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmuloub(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_mulo(vector short __a, vector short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulesh(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulosh(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_mulo(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmuleuh(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulouh(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vmulosb */ | 
|  |  | 
|  | static vector short __attribute__((__always_inline__)) | 
|  | vec_vmulosb(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulesb(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulosb(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vmuloub */ | 
|  |  | 
|  | static vector unsigned short __attribute__((__always_inline__)) | 
|  | vec_vmuloub(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmuleub(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmuloub(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vmulosh */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vmulosh(vector short __a, vector short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmulesh(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulosh(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vmulouh */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vmulouh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vmuleuh(__a, __b); | 
|  | #else | 
|  | return __builtin_altivec_vmulouh(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_nmsub */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_nmsub(vector float __a, vector float __b, vector float __c) | 
|  | { | 
|  | return __builtin_altivec_vnmsubfp(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_vnmsubfp */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vnmsubfp(vector float __a, vector float __b, vector float __c) | 
|  | { | 
|  | return __builtin_altivec_vnmsubfp(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_nor */ | 
|  |  | 
|  | #define __builtin_altivec_vnor vec_nor | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_nor(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_nor(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_nor(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_nor(vector short __a, vector short __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_nor(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_nor(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_nor(vector int __a, vector int __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_nor(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_nor(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_nor(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = ~((vector unsigned int)__a | (vector unsigned int)__b); | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_vnor */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vnor(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vnor(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vnor(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vnor(vector short __a, vector short __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vnor(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vnor(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vnor(vector int __a, vector int __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vnor(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vnor(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return ~(__a | __b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vnor(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = ~((vector unsigned int)__a | (vector unsigned int)__b); | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_or */ | 
|  |  | 
|  | #define __builtin_altivec_vor vec_or | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_or(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_or(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_or(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a | (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_or(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_or(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_or(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a | (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_or(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_or(vector short __a, vector short __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_or(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_or(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a | (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_or(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_or(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_or(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a | (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_or(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_or(vector int __a, vector int __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_or(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_or(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a | (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_or(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_or(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_or(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a | (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_or(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_or(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_or(vector bool int __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_or(vector float __a, vector bool int __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_vor */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vor(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vor(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vor(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a | (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vor(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vor(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vor(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a | (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vor(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vor(vector short __a, vector short __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vor(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vor(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a | (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vor(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vor(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vor(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a | (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vor(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vor(vector int __a, vector int __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vor(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vor(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a | (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vor(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vor(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a | __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vor(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a | (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vor(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __a | __b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vor(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vor(vector bool int __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vor(vector float __a, vector bool int __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a | (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_pack */ | 
|  |  | 
|  | /* The various vector pack instructions have a big-endian bias, so for | 
|  | little endian we must handle reversed element numbering.  */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_pack(vector signed short __a, vector signed short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector signed char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E, | 
|  | 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E)); | 
|  | #else | 
|  | return (vector signed char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, | 
|  | 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_pack(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector unsigned char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E, | 
|  | 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E)); | 
|  | #else | 
|  | return (vector unsigned char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, | 
|  | 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_pack(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E, | 
|  | 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E)); | 
|  | #else | 
|  | return (vector bool char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, | 
|  | 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_pack(vector int __a, vector int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D, | 
|  | 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D)); | 
|  | #else | 
|  | return (vector short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F, | 
|  | 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_pack(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector unsigned short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D, | 
|  | 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D)); | 
|  | #else | 
|  | return (vector unsigned short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F, | 
|  | 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_pack(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D, | 
|  | 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D)); | 
|  | #else | 
|  | return (vector bool short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F, | 
|  | 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vpkuhum */ | 
|  |  | 
|  | #define __builtin_altivec_vpkuhum vec_vpkuhum | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vpkuhum(vector signed short __a, vector signed short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector signed char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E, | 
|  | 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E)); | 
|  | #else | 
|  | return (vector signed char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, | 
|  | 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vpkuhum(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector unsigned char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E, | 
|  | 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E)); | 
|  | #else | 
|  | return (vector unsigned char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, | 
|  | 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vpkuhum(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0E, | 
|  | 0x10, 0x12, 0x14, 0x16, 0x18, 0x1A, 0x1C, 0x1E)); | 
|  | #else | 
|  | return (vector bool char)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, | 
|  | 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vpkuwum */ | 
|  |  | 
|  | #define __builtin_altivec_vpkuwum vec_vpkuwum | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vpkuwum(vector int __a, vector int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D, | 
|  | 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D)); | 
|  | #else | 
|  | return (vector short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F, | 
|  | 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vpkuwum(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector unsigned short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D, | 
|  | 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D)); | 
|  | #else | 
|  | return (vector unsigned short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F, | 
|  | 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vpkuwum(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x00, 0x01, 0x04, 0x05, 0x08, 0x09, 0x0C, 0x0D, | 
|  | 0x10, 0x11, 0x14, 0x15, 0x18, 0x19, 0x1C, 0x1D)); | 
|  | #else | 
|  | return (vector bool short)vec_perm(__a, __b, (vector unsigned char) | 
|  | (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F, | 
|  | 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_packpx */ | 
|  |  | 
|  | static vector pixel __attribute__((__always_inline__)) | 
|  | vec_packpx(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector pixel)__builtin_altivec_vpkpx(__b, __a); | 
|  | #else | 
|  | return (vector pixel)__builtin_altivec_vpkpx(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vpkpx */ | 
|  |  | 
|  | static vector pixel __attribute__((__always_inline__)) | 
|  | vec_vpkpx(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector pixel)__builtin_altivec_vpkpx(__b, __a); | 
|  | #else | 
|  | return (vector pixel)__builtin_altivec_vpkpx(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_packs */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_packs(vector short __a, vector short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkshss(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkshss(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_packs(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkuhus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkuhus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector signed short __ATTRS_o_ai | 
|  | vec_packs(vector int __a, vector int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkswss(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkswss(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_packs(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkuwus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkuwus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vpkshss */ | 
|  |  | 
|  | static vector signed char __attribute__((__always_inline__)) | 
|  | vec_vpkshss(vector short __a, vector short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkshss(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkshss(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vpkuhus */ | 
|  |  | 
|  | static vector unsigned char __attribute__((__always_inline__)) | 
|  | vec_vpkuhus(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkuhus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkuhus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vpkswss */ | 
|  |  | 
|  | static vector signed short __attribute__((__always_inline__)) | 
|  | vec_vpkswss(vector int __a, vector int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkswss(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkswss(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vpkuwus */ | 
|  |  | 
|  | static vector unsigned short __attribute__((__always_inline__)) | 
|  | vec_vpkuwus(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkuwus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkuwus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_packsu */ | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_packsu(vector short __a, vector short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkshus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkshus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_packsu(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkuhus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkuhus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_packsu(vector int __a, vector int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkswus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkswus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_packsu(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkuwus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkuwus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vpkshus */ | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vpkshus(vector short __a, vector short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkshus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkshus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vpkshus(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkuhus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkuhus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vpkswus */ | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vpkswus(vector int __a, vector int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkswus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkswus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vpkswus(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vpkuwus(__b, __a); | 
|  | #else | 
|  | return __builtin_altivec_vpkuwus(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_perm */ | 
|  |  | 
|  | // The vperm instruction is defined architecturally with a big-endian bias. | 
|  | // For little endian, we swap the input operands and invert the permute | 
|  | // control vector.  Only the rightmost 5 bits matter, so we could use | 
|  | // a vector of all 31s instead of all 255s to perform the inversion. | 
|  | // However, when the PCV is not a constant, using 255 has an advantage | 
|  | // in that the vec_xor can be recognized as a vec_nor (and for P8 and | 
|  | // later, possibly a vec_nand). | 
|  |  | 
|  | vector signed char __ATTRS_o_ai | 
|  | vec_perm(vector signed char __a, vector signed char __b, vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector unsigned char __ATTRS_o_ai | 
|  | vec_perm(vector unsigned char __a, | 
|  | vector unsigned char __b, | 
|  | vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector bool char __ATTRS_o_ai | 
|  | vec_perm(vector bool char __a, vector bool char __b, vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector bool char) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector bool char) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector short __ATTRS_o_ai | 
|  | vec_perm(vector short __a, vector short __b, vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector short) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector short) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector unsigned short __ATTRS_o_ai | 
|  | vec_perm(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector bool short __ATTRS_o_ai | 
|  | vec_perm(vector bool short __a, vector bool short __b, vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector bool short) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector bool short) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector pixel __ATTRS_o_ai | 
|  | vec_perm(vector pixel __a, vector pixel __b, vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector pixel) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector pixel) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector int __ATTRS_o_ai | 
|  | vec_perm(vector int __a, vector int __b, vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector int)__builtin_altivec_vperm_4si(__b, __a, __d); | 
|  | #else | 
|  | return (vector int)__builtin_altivec_vperm_4si(__a, __b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector unsigned int __ATTRS_o_ai | 
|  | vec_perm(vector unsigned int __a, vector unsigned int __b, vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector bool int __ATTRS_o_ai | 
|  | vec_perm(vector bool int __a, vector bool int __b, vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector bool int) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector bool int) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | vector float __ATTRS_o_ai | 
|  | vec_perm(vector float __a, vector float __b, vector unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector unsigned char __d = {255,255,255,255,255,255,255,255, | 
|  | 255,255,255,255,255,255,255,255}; | 
|  | __d = vec_xor(__c, __d); | 
|  | return (vector float) | 
|  | __builtin_altivec_vperm_4si((vector int)__b, (vector int)__a, __d); | 
|  | #else | 
|  | return (vector float) | 
|  | __builtin_altivec_vperm_4si((vector int)__a, (vector int)__b, __c); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vperm */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vperm(vector signed char __a, vector signed char __b, vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vperm(vector unsigned char __a, | 
|  | vector unsigned char __b, | 
|  | vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vperm(vector bool char __a, vector bool char __b, vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vperm(vector short __a, vector short __b, vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vperm(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vperm(vector bool short __a, vector bool short __b, vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vperm(vector pixel __a, vector pixel __b, vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vperm(vector int __a, vector int __b, vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vperm(vector unsigned int __a, vector unsigned int __b, vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vperm(vector bool int __a, vector bool int __b, vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vperm(vector float __a, vector float __b, vector unsigned char __c) | 
|  | { | 
|  | return vec_perm(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_re */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_re(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrefp(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vrefp */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vrefp(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrefp(__a); | 
|  | } | 
|  |  | 
|  | /* vec_rl */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_rl(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_vrlb((vector char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_rl(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_vrlb((vector char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_rl(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vrlh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_rl(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_vrlh((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_rl(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vrlw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_rl(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_vrlw((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vrlb */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vrlb(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_vrlb((vector char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vrlb(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_vrlb((vector char)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vrlh */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vrlh(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vrlh(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vrlh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_vrlh((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vrlw */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vrlw(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vrlw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vrlw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_vrlw((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_round */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_round(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrfin(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vrfin */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vrfin(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrfin(__a); | 
|  | } | 
|  |  | 
|  | /* vec_rsqrte */ | 
|  |  | 
|  | static __vector float __attribute__((__always_inline__)) | 
|  | vec_rsqrte(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrsqrtefp(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vrsqrtefp */ | 
|  |  | 
|  | static __vector float __attribute__((__always_inline__)) | 
|  | vec_vrsqrtefp(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrsqrtefp(__a); | 
|  | } | 
|  |  | 
|  | /* vec_sel */ | 
|  |  | 
|  | #define __builtin_altivec_vsel_4si vec_sel | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sel(vector signed char __a, vector signed char __b, vector unsigned char __c) | 
|  | { | 
|  | return (__a & ~(vector signed char)__c) | (__b & (vector signed char)__c); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sel(vector signed char __a, vector signed char __b, vector bool char __c) | 
|  | { | 
|  | return (__a & ~(vector signed char)__c) | (__b & (vector signed char)__c); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sel(vector unsigned char __a, vector unsigned char __b, vector unsigned char __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sel(vector unsigned char __a, vector unsigned char __b, vector bool char __c) | 
|  | { | 
|  | return (__a & ~(vector unsigned char)__c) | (__b & (vector unsigned char)__c); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_sel(vector bool char __a, vector bool char __b, vector unsigned char __c) | 
|  | { | 
|  | return (__a & ~(vector bool char)__c) | (__b & (vector bool char)__c); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_sel(vector bool char __a, vector bool char __b, vector bool char __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sel(vector short __a, vector short __b, vector unsigned short __c) | 
|  | { | 
|  | return (__a & ~(vector short)__c) | (__b & (vector short)__c); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sel(vector short __a, vector short __b, vector bool short __c) | 
|  | { | 
|  | return (__a & ~(vector short)__c) | (__b & (vector short)__c); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sel(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned short __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sel(vector unsigned short __a, vector unsigned short __b, vector bool short __c) | 
|  | { | 
|  | return (__a & ~(vector unsigned short)__c) | (__b & (vector unsigned short)__c); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_sel(vector bool short __a, vector bool short __b, vector unsigned short __c) | 
|  | { | 
|  | return (__a & ~(vector bool short)__c) | (__b & (vector bool short)__c); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_sel(vector bool short __a, vector bool short __b, vector bool short __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sel(vector int __a, vector int __b, vector unsigned int __c) | 
|  | { | 
|  | return (__a & ~(vector int)__c) | (__b & (vector int)__c); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sel(vector int __a, vector int __b, vector bool int __c) | 
|  | { | 
|  | return (__a & ~(vector int)__c) | (__b & (vector int)__c); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sel(vector unsigned int __a, vector unsigned int __b, vector unsigned int __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sel(vector unsigned int __a, vector unsigned int __b, vector bool int __c) | 
|  | { | 
|  | return (__a & ~(vector unsigned int)__c) | (__b & (vector unsigned int)__c); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_sel(vector bool int __a, vector bool int __b, vector unsigned int __c) | 
|  | { | 
|  | return (__a & ~(vector bool int)__c) | (__b & (vector bool int)__c); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_sel(vector bool int __a, vector bool int __b, vector bool int __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_sel(vector float __a, vector float __b, vector unsigned int __c) | 
|  | { | 
|  | vector int __res = ((vector int)__a & ~(vector int)__c) | 
|  | | ((vector int)__b & (vector int)__c); | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_sel(vector float __a, vector float __b, vector bool int __c) | 
|  | { | 
|  | vector int __res = ((vector int)__a & ~(vector int)__c) | 
|  | | ((vector int)__b & (vector int)__c); | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_vsel */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsel(vector signed char __a, vector signed char __b, vector unsigned char __c) | 
|  | { | 
|  | return (__a & ~(vector signed char)__c) | (__b & (vector signed char)__c); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsel(vector signed char __a, vector signed char __b, vector bool char __c) | 
|  | { | 
|  | return (__a & ~(vector signed char)__c) | (__b & (vector signed char)__c); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsel(vector unsigned char __a, vector unsigned char __b, vector unsigned char __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsel(vector unsigned char __a, vector unsigned char __b, vector bool char __c) | 
|  | { | 
|  | return (__a & ~(vector unsigned char)__c) | (__b & (vector unsigned char)__c); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vsel(vector bool char __a, vector bool char __b, vector unsigned char __c) | 
|  | { | 
|  | return (__a & ~(vector bool char)__c) | (__b & (vector bool char)__c); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vsel(vector bool char __a, vector bool char __b, vector bool char __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsel(vector short __a, vector short __b, vector unsigned short __c) | 
|  | { | 
|  | return (__a & ~(vector short)__c) | (__b & (vector short)__c); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsel(vector short __a, vector short __b, vector bool short __c) | 
|  | { | 
|  | return (__a & ~(vector short)__c) | (__b & (vector short)__c); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsel(vector unsigned short __a, | 
|  | vector unsigned short __b, | 
|  | vector unsigned short __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsel(vector unsigned short __a, vector unsigned short __b, vector bool short __c) | 
|  | { | 
|  | return (__a & ~(vector unsigned short)__c) | (__b & (vector unsigned short)__c); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vsel(vector bool short __a, vector bool short __b, vector unsigned short __c) | 
|  | { | 
|  | return (__a & ~(vector bool short)__c) | (__b & (vector bool short)__c); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vsel(vector bool short __a, vector bool short __b, vector bool short __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsel(vector int __a, vector int __b, vector unsigned int __c) | 
|  | { | 
|  | return (__a & ~(vector int)__c) | (__b & (vector int)__c); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsel(vector int __a, vector int __b, vector bool int __c) | 
|  | { | 
|  | return (__a & ~(vector int)__c) | (__b & (vector int)__c); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsel(vector unsigned int __a, vector unsigned int __b, vector unsigned int __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsel(vector unsigned int __a, vector unsigned int __b, vector bool int __c) | 
|  | { | 
|  | return (__a & ~(vector unsigned int)__c) | (__b & (vector unsigned int)__c); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vsel(vector bool int __a, vector bool int __b, vector unsigned int __c) | 
|  | { | 
|  | return (__a & ~(vector bool int)__c) | (__b & (vector bool int)__c); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vsel(vector bool int __a, vector bool int __b, vector bool int __c) | 
|  | { | 
|  | return (__a & ~__c) | (__b & __c); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vsel(vector float __a, vector float __b, vector unsigned int __c) | 
|  | { | 
|  | vector int __res = ((vector int)__a & ~(vector int)__c) | 
|  | | ((vector int)__b & (vector int)__c); | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vsel(vector float __a, vector float __b, vector bool int __c) | 
|  | { | 
|  | vector int __res = ((vector int)__a & ~(vector int)__c) | 
|  | | ((vector int)__b & (vector int)__c); | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_sl */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sl(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a << (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sl(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a << __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sl(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a << (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sl(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a << __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sl(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a << (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sl(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a << __b; | 
|  | } | 
|  |  | 
|  | /* vec_vslb */ | 
|  |  | 
|  | #define __builtin_altivec_vslb vec_vslb | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vslb(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return vec_sl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vslb(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return vec_sl(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vslh */ | 
|  |  | 
|  | #define __builtin_altivec_vslh vec_vslh | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vslh(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return vec_sl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vslh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return vec_sl(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vslw */ | 
|  |  | 
|  | #define __builtin_altivec_vslw vec_vslw | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vslw(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return vec_sl(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vslw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return vec_sl(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_sld */ | 
|  |  | 
|  | #define __builtin_altivec_vsldoi_4si vec_sld | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sld(vector signed char __a, vector signed char __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sld(vector unsigned char __a, vector unsigned char __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sld(vector short __a, vector short __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sld(vector unsigned short __a, vector unsigned short __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_sld(vector pixel __a, vector pixel __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sld(vector int __a, vector int __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sld(vector unsigned int __a, vector unsigned int __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_sld(vector float __a, vector float __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vsldoi */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsldoi(vector signed char __a, vector signed char __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsldoi(vector unsigned char __a, vector unsigned char __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsldoi(vector short __a, vector short __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsldoi(vector unsigned short __a, vector unsigned short __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsldoi(vector pixel __a, vector pixel __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsldoi(vector int __a, vector int __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsldoi(vector unsigned int __a, vector unsigned int __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vsldoi(vector float __a, vector float __b, unsigned char __c) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c-1, __c-2, __c-3, __c-4, __c-5, __c-6, __c-7, | 
|  | __c-8, __c-9, __c-10, __c-11, __c-12, __c-13, __c-14, __c-15)); | 
|  | #else | 
|  | return vec_perm(__a, __b, (vector unsigned char) | 
|  | (__c,   __c+1, __c+2,  __c+3,  __c+4,  __c+5,  __c+6,  __c+7, | 
|  | __c+8, __c+9, __c+10, __c+11, __c+12, __c+13, __c+14, __c+15)); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_sll */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sll(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sll(vector signed char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sll(vector signed char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sll(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sll(vector unsigned char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sll(vector unsigned char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_sll(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_sll(vector bool char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_sll(vector bool char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sll(vector short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sll(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sll(vector short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sll(vector unsigned short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sll(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sll(vector unsigned short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_sll(vector bool short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_sll(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_sll(vector bool short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_sll(vector pixel __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_sll(vector pixel __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_sll(vector pixel __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sll(vector int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsl(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sll(vector int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsl(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sll(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsl(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sll(vector unsigned int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sll(vector unsigned int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sll(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_sll(vector bool int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_sll(vector bool int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_sll(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vsl */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsl(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsl(vector signed char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsl(vector signed char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsl(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsl(vector unsigned char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsl(vector unsigned char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vsl(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vsl(vector bool char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vsl(vector bool char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsl(vector short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsl(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsl(vector short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsl(vector unsigned short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsl(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsl(vector unsigned short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vsl(vector bool short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vsl(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vsl(vector bool short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsl(vector pixel __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsl(vector pixel __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsl(vector pixel __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsl(vector int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsl(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsl(vector int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsl(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsl(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsl(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsl(vector unsigned int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsl(vector unsigned int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsl(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vsl(vector bool int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vsl(vector bool int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vsl(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsl((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_slo */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_slo(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_slo(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_slo(vector unsigned char __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_slo(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_slo(vector short __a, vector signed char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_slo(vector short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_slo(vector unsigned short __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_slo(vector unsigned short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_slo(vector pixel __a, vector signed char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_slo(vector pixel __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_slo(vector int __a, vector signed char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vslo(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_slo(vector int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vslo(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_slo(vector unsigned int __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_slo(vector unsigned int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_slo(vector float __a, vector signed char __b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_slo(vector float __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vslo */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vslo(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vslo(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vslo(vector unsigned char __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vslo(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vslo(vector short __a, vector signed char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vslo(vector short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vslo(vector unsigned short __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vslo(vector unsigned short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vslo(vector pixel __a, vector signed char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vslo(vector pixel __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vslo(vector int __a, vector signed char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vslo(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vslo(vector int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vslo(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vslo(vector unsigned int __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vslo(vector unsigned int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vslo(vector float __a, vector signed char __b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vslo(vector float __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_vslo((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_splat */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_splat(vector signed char __a, unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __a, (vector unsigned char)(__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_splat(vector unsigned char __a, unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __a, (vector unsigned char)(__b)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_splat(vector bool char __a, unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __a, (vector unsigned char)(__b)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_splat(vector short __a, unsigned char __b) | 
|  | { | 
|  | __b *= 2; | 
|  | unsigned char b1=__b+1; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_splat(vector unsigned short __a, unsigned char __b) | 
|  | { | 
|  | __b *= 2; | 
|  | unsigned char b1=__b+1; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_splat(vector bool short __a, unsigned char __b) | 
|  | { | 
|  | __b *= 2; | 
|  | unsigned char b1=__b+1; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_splat(vector pixel __a, unsigned char __b) | 
|  | { | 
|  | __b *= 2; | 
|  | unsigned char b1=__b+1; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_splat(vector int __a, unsigned char __b) | 
|  | { | 
|  | __b *= 4; | 
|  | unsigned char b1=__b+1, b2=__b+2, b3=__b+3; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_splat(vector unsigned int __a, unsigned char __b) | 
|  | { | 
|  | __b *= 4; | 
|  | unsigned char b1=__b+1, b2=__b+2, b3=__b+3; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_splat(vector bool int __a, unsigned char __b) | 
|  | { | 
|  | __b *= 4; | 
|  | unsigned char b1=__b+1, b2=__b+2, b3=__b+3; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_splat(vector float __a, unsigned char __b) | 
|  | { | 
|  | __b *= 4; | 
|  | unsigned char b1=__b+1, b2=__b+2, b3=__b+3; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3)); | 
|  | } | 
|  |  | 
|  | /* vec_vspltb */ | 
|  |  | 
|  | #define __builtin_altivec_vspltb vec_vspltb | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vspltb(vector signed char __a, unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __a, (vector unsigned char)(__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vspltb(vector unsigned char __a, unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __a, (vector unsigned char)(__b)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vspltb(vector bool char __a, unsigned char __b) | 
|  | { | 
|  | return vec_perm(__a, __a, (vector unsigned char)(__b)); | 
|  | } | 
|  |  | 
|  | /* vec_vsplth */ | 
|  |  | 
|  | #define __builtin_altivec_vsplth vec_vsplth | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsplth(vector short __a, unsigned char __b) | 
|  | { | 
|  | __b *= 2; | 
|  | unsigned char b1=__b+1; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsplth(vector unsigned short __a, unsigned char __b) | 
|  | { | 
|  | __b *= 2; | 
|  | unsigned char b1=__b+1; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vsplth(vector bool short __a, unsigned char __b) | 
|  | { | 
|  | __b *= 2; | 
|  | unsigned char b1=__b+1; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsplth(vector pixel __a, unsigned char __b) | 
|  | { | 
|  | __b *= 2; | 
|  | unsigned char b1=__b+1; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1, __b, b1)); | 
|  | } | 
|  |  | 
|  | /* vec_vspltw */ | 
|  |  | 
|  | #define __builtin_altivec_vspltw vec_vspltw | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vspltw(vector int __a, unsigned char __b) | 
|  | { | 
|  | __b *= 4; | 
|  | unsigned char b1=__b+1, b2=__b+2, b3=__b+3; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vspltw(vector unsigned int __a, unsigned char __b) | 
|  | { | 
|  | __b *= 4; | 
|  | unsigned char b1=__b+1, b2=__b+2, b3=__b+3; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vspltw(vector bool int __a, unsigned char __b) | 
|  | { | 
|  | __b *= 4; | 
|  | unsigned char b1=__b+1, b2=__b+2, b3=__b+3; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vspltw(vector float __a, unsigned char __b) | 
|  | { | 
|  | __b *= 4; | 
|  | unsigned char b1=__b+1, b2=__b+2, b3=__b+3; | 
|  | return vec_perm(__a, __a, (vector unsigned char) | 
|  | (__b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3, __b, b1, b2, b3)); | 
|  | } | 
|  |  | 
|  | /* vec_splat_s8 */ | 
|  |  | 
|  | #define __builtin_altivec_vspltisb vec_splat_s8 | 
|  |  | 
|  | // FIXME: parameter should be treated as 5-bit signed literal | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_splat_s8(signed char __a) | 
|  | { | 
|  | return (vector signed char)(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vspltisb */ | 
|  |  | 
|  | // FIXME: parameter should be treated as 5-bit signed literal | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vspltisb(signed char __a) | 
|  | { | 
|  | return (vector signed char)(__a); | 
|  | } | 
|  |  | 
|  | /* vec_splat_s16 */ | 
|  |  | 
|  | #define __builtin_altivec_vspltish vec_splat_s16 | 
|  |  | 
|  | // FIXME: parameter should be treated as 5-bit signed literal | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_splat_s16(signed char __a) | 
|  | { | 
|  | return (vector short)(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vspltish */ | 
|  |  | 
|  | // FIXME: parameter should be treated as 5-bit signed literal | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vspltish(signed char __a) | 
|  | { | 
|  | return (vector short)(__a); | 
|  | } | 
|  |  | 
|  | /* vec_splat_s32 */ | 
|  |  | 
|  | #define __builtin_altivec_vspltisw vec_splat_s32 | 
|  |  | 
|  | // FIXME: parameter should be treated as 5-bit signed literal | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_splat_s32(signed char __a) | 
|  | { | 
|  | return (vector int)(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vspltisw */ | 
|  |  | 
|  | // FIXME: parameter should be treated as 5-bit signed literal | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vspltisw(signed char __a) | 
|  | { | 
|  | return (vector int)(__a); | 
|  | } | 
|  |  | 
|  | /* vec_splat_u8 */ | 
|  |  | 
|  | // FIXME: parameter should be treated as 5-bit signed literal | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_splat_u8(unsigned char __a) | 
|  | { | 
|  | return (vector unsigned char)(__a); | 
|  | } | 
|  |  | 
|  | /* vec_splat_u16 */ | 
|  |  | 
|  | // FIXME: parameter should be treated as 5-bit signed literal | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_splat_u16(signed char __a) | 
|  | { | 
|  | return (vector unsigned short)(__a); | 
|  | } | 
|  |  | 
|  | /* vec_splat_u32 */ | 
|  |  | 
|  | // FIXME: parameter should be treated as 5-bit signed literal | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_splat_u32(signed char __a) | 
|  | { | 
|  | return (vector unsigned int)(__a); | 
|  | } | 
|  |  | 
|  | /* vec_sr */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sr(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a >> (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sr(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a >> __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sr(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a >> (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sr(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a >> __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sr(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a >> (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sr(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a >> __b; | 
|  | } | 
|  |  | 
|  | /* vec_vsrb */ | 
|  |  | 
|  | #define __builtin_altivec_vsrb vec_vsrb | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsrb(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a >> (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsrb(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a >> __b; | 
|  | } | 
|  |  | 
|  | /* vec_vsrh */ | 
|  |  | 
|  | #define __builtin_altivec_vsrh vec_vsrh | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsrh(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a >> (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsrh(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a >> __b; | 
|  | } | 
|  |  | 
|  | /* vec_vsrw */ | 
|  |  | 
|  | #define __builtin_altivec_vsrw vec_vsrw | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsrw(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a >> (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsrw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a >> __b; | 
|  | } | 
|  |  | 
|  | /* vec_sra */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sra(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_vsrab((vector char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sra(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_vsrab((vector char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sra(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vsrah(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sra(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_vsrah((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sra(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsraw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sra(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_vsraw((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vsrab */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsrab(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char)__builtin_altivec_vsrab((vector char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsrab(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__builtin_altivec_vsrab((vector char)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vsrah */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsrah(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vsrah(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsrah(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__builtin_altivec_vsrah((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vsraw */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsraw(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsraw(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsraw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__builtin_altivec_vsraw((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_srl */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_srl(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_srl(vector signed char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_srl(vector signed char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_srl(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_srl(vector unsigned char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_srl(vector unsigned char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_srl(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_srl(vector bool char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_srl(vector bool char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_srl(vector short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_srl(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_srl(vector short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_srl(vector unsigned short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_srl(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_srl(vector unsigned short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_srl(vector bool short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_srl(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_srl(vector bool short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_srl(vector pixel __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_srl(vector pixel __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_srl(vector pixel __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_srl(vector int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsr(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_srl(vector int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsr(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_srl(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsr(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_srl(vector unsigned int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_srl(vector unsigned int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_srl(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_srl(vector bool int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_srl(vector bool int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_srl(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vsr */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsr(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsr(vector signed char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsr(vector signed char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsr(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsr(vector unsigned char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsr(vector unsigned char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vsr(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vsr(vector bool char __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vsr(vector bool char __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool char)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsr(vector short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsr(vector short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsr(vector short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsr(vector unsigned short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsr(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsr(vector unsigned short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vsr(vector bool short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vsr(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vsr(vector bool short __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool short)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsr(vector pixel __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsr(vector pixel __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsr(vector pixel __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsr(vector int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsr(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsr(vector int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsr(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsr(vector int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsr(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsr(vector unsigned int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsr(vector unsigned int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsr(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vsr(vector bool int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vsr(vector bool int __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vsr(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector bool int)__builtin_altivec_vsr((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_sro */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sro(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sro(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sro(vector unsigned char __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sro(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sro(vector short __a, vector signed char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sro(vector short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sro(vector unsigned short __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sro(vector unsigned short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_sro(vector pixel __a, vector signed char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_sro(vector pixel __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sro(vector int __a, vector signed char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsro(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sro(vector int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsro(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sro(vector unsigned int __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sro(vector unsigned int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_sro(vector float __a, vector signed char __b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_sro(vector float __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vsro */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsro(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsro(vector signed char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector signed char) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsro(vector unsigned char __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsro(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsro(vector short __a, vector signed char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsro(vector short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector short)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsro(vector unsigned short __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsro(vector unsigned short __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned short) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsro(vector pixel __a, vector signed char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_vsro(vector pixel __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector pixel)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsro(vector int __a, vector signed char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsro(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsro(vector int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector int)__builtin_altivec_vsro(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsro(vector unsigned int __a, vector signed char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsro(vector unsigned int __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned int) | 
|  | __builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vsro(vector float __a, vector signed char __b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vsro(vector float __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector float)__builtin_altivec_vsro((vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_st */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector signed char __a, int __b, vector signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector unsigned char __a, int __b, vector unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector bool char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector bool char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector bool char __a, int __b, vector bool char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector short __a, int __b, vector short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector unsigned short __a, int __b, vector unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector bool short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector bool short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector bool short __a, int __b, vector bool short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector pixel __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector pixel __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector pixel __a, int __b, vector pixel *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector int __a, int __b, vector int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector unsigned int __a, int __b, vector unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector bool int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector bool int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector bool int __a, int __b, vector bool int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector float __a, int __b, vector float *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_st(vector float __a, int __b, float *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_stvx */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector signed char __a, int __b, vector signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector unsigned char __a, int __b, vector unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector bool char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector bool char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector bool char __a, int __b, vector bool char *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector short __a, int __b, vector short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector unsigned short __a, int __b, vector unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector bool short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector bool short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector bool short __a, int __b, vector bool short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector pixel __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector pixel __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector pixel __a, int __b, vector pixel *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector int __a, int __b, vector int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector unsigned int __a, int __b, vector unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector bool int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector bool int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector bool int __a, int __b, vector bool int *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector float __a, int __b, vector float *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvx(vector float __a, int __b, float *__c) | 
|  | { | 
|  | __builtin_altivec_stvx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_ste */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvebx((vector char)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvebx((vector char)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector bool char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvebx((vector char)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector bool char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvebx((vector char)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector bool short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector bool short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector pixel __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector pixel __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector bool int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector bool int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_ste(vector float __a, int __b, float *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_stvebx */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvebx(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvebx((vector char)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvebx(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvebx((vector char)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvebx(vector bool char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvebx((vector char)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvebx(vector bool char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvebx((vector char)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_stvehx */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvehx(vector short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvehx(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvehx(vector bool short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvehx(vector bool short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvehx(vector pixel __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvehx(vector pixel __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvehx((vector short)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_stvewx */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvewx(vector int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvewx(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvewx(vector bool int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvewx(vector bool int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvewx(vector float __a, int __b, float *__c) | 
|  | { | 
|  | __builtin_altivec_stvewx((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_stl */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector signed char __a, int __b, vector signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector unsigned char __a, int __b, vector unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector bool char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector bool char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector bool char __a, int __b, vector bool char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector short __a, int __b, vector short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector unsigned short __a, int __b, vector unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector bool short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector bool short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector bool short __a, int __b, vector bool short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector pixel __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector pixel __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector pixel __a, int __b, vector pixel *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector int __a, int __b, vector int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector unsigned int __a, int __b, vector unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector bool int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector bool int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector bool int __a, int __b, vector bool int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector float __a, int __b, vector float *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stl(vector float __a, int __b, float *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_stvxl */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector signed char __a, int __b, vector signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector unsigned char __a, int __b, vector unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector bool char __a, int __b, signed char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector bool char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector bool char __a, int __b, vector bool char *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector short __a, int __b, vector short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector unsigned short __a, int __b, vector unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector bool short __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector bool short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector bool short __a, int __b, vector bool short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector pixel __a, int __b, short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector pixel __a, int __b, unsigned short *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector pixel __a, int __b, vector pixel *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector int __a, int __b, vector int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl(__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector unsigned int __a, int __b, vector unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector bool int __a, int __b, int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector bool int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector bool int __a, int __b, vector bool int *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector float __a, int __b, vector float *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvxl(vector float __a, int __b, float *__c) | 
|  | { | 
|  | __builtin_altivec_stvxl((vector int)__a, __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_sub */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sub(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sub(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_sub(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a - (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sub(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sub(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_sub(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a - (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sub(vector short __a, vector short __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sub(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_sub(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a - (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sub(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sub(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_sub(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a - (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sub(vector int __a, vector int __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sub(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sub(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a - (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sub(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sub(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sub(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a - (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_sub(vector float __a, vector float __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | /* vec_vsububm */ | 
|  |  | 
|  | #define __builtin_altivec_vsububm vec_vsububm | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsububm(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsububm(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsububm(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a - (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsububm(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsububm(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsububm(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a - (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | /* vec_vsubuhm */ | 
|  |  | 
|  | #define __builtin_altivec_vsubuhm vec_vsubuhm | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsubuhm(vector short __a, vector short __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsubuhm(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsubuhm(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a - (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsubuhm(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsubuhm(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsubuhm(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a - (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | /* vec_vsubuwm */ | 
|  |  | 
|  | #define __builtin_altivec_vsubuwm vec_vsubuwm | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsubuwm(vector int __a, vector int __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsubuwm(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsubuwm(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a - (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsubuwm(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsubuwm(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a - __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsubuwm(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a - (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | /* vec_vsubfp */ | 
|  |  | 
|  | #define __builtin_altivec_vsubfp vec_vsubfp | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vsubfp(vector float __a, vector float __b) | 
|  | { | 
|  | return __a - __b; | 
|  | } | 
|  |  | 
|  | /* vec_subc */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_subc(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubcuw(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vsubcuw */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vsubcuw(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubcuw(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_subs */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_subs(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsbs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_subs(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsbs((vector signed char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_subs(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsbs(__a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_subs(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vsububs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_subs(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vsububs((vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_subs(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vsububs(__a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_subs(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubshs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_subs(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubshs((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_subs(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubshs(__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_subs(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuhs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_subs(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuhs((vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_subs(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuhs(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_subs(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsws(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_subs(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsws((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_subs(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsws(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_subs(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuws(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_subs(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuws((vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_subs(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuws(__a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vsubsbs */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsubsbs(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsbs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsubsbs(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsbs((vector signed char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vsubsbs(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsbs(__a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vsububs */ | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsububs(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vsububs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsububs(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vsububs((vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vsububs(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vsububs(__a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vsubshs */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsubshs(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubshs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsubshs(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubshs((vector short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vsubshs(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubshs(__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vsubuhs */ | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsubuhs(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuhs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsubuhs(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuhs((vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vsubuhs(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuhs(__a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vsubsws */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsubsws(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsws(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsubsws(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsws((vector int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vsubsws(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubsws(__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_vsubuws */ | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsubuws(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuws(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsubuws(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuws((vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vsubuws(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vsubuws(__a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | /* vec_sum4s */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sum4s(vector signed char __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vsum4sbs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_sum4s(vector unsigned char __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsum4ubs(__a, __b); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_sum4s(vector signed short __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vsum4shs(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vsum4sbs */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vsum4sbs(vector signed char __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vsum4sbs(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vsum4ubs */ | 
|  |  | 
|  | static vector unsigned int __attribute__((__always_inline__)) | 
|  | vec_vsum4ubs(vector unsigned char __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vsum4ubs(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_vsum4shs */ | 
|  |  | 
|  | static vector int __attribute__((__always_inline__)) | 
|  | vec_vsum4shs(vector signed short __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vsum4shs(__a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_sum2s */ | 
|  |  | 
|  | /* The vsum2sws instruction has a big-endian bias, so that the second | 
|  | input vector and the result always reference big-endian elements | 
|  | 1 and 3 (little-endian element 0 and 2).  For ease of porting the | 
|  | programmer wants elements 1 and 3 in both cases, so for little | 
|  | endian we must perform some permutes.  */ | 
|  |  | 
|  | static vector signed int __attribute__((__always_inline__)) | 
|  | vec_sum2s(vector int __a, vector int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector int __c = (vector signed int) | 
|  | vec_perm(__b, __b, (vector unsigned char) | 
|  | (4,5,6,7,0,1,2,3,12,13,14,15,8,9,10,11)); | 
|  | __c = __builtin_altivec_vsum2sws(__a, __c); | 
|  | return (vector signed int) | 
|  | vec_perm(__c, __c, (vector unsigned char) | 
|  | (4,5,6,7,0,1,2,3,12,13,14,15,8,9,10,11)); | 
|  | #else | 
|  | return __builtin_altivec_vsum2sws(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vsum2sws */ | 
|  |  | 
|  | static vector signed int __attribute__((__always_inline__)) | 
|  | vec_vsum2sws(vector int __a, vector int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | vector int __c = (vector signed int) | 
|  | vec_perm(__b, __b, (vector unsigned char) | 
|  | (4,5,6,7,0,1,2,3,12,13,14,15,8,9,10,11)); | 
|  | __c = __builtin_altivec_vsum2sws(__a, __c); | 
|  | return (vector signed int) | 
|  | vec_perm(__c, __c, (vector unsigned char) | 
|  | (4,5,6,7,0,1,2,3,12,13,14,15,8,9,10,11)); | 
|  | #else | 
|  | return __builtin_altivec_vsum2sws(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_sums */ | 
|  |  | 
|  | /* The vsumsws instruction has a big-endian bias, so that the second | 
|  | input vector and the result always reference big-endian element 3 | 
|  | (little-endian element 0).  For ease of porting the programmer | 
|  | wants element 3 in both cases, so for little endian we must perform | 
|  | some permutes.  */ | 
|  |  | 
|  | static vector signed int __attribute__((__always_inline__)) | 
|  | vec_sums(vector signed int __a, vector signed int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | __b = (vector signed int) | 
|  | vec_perm(__b, __b, (vector unsigned char) | 
|  | (12,13,14,15,0,1,2,3,4,5,6,7,8,9,10,11)); | 
|  | __b = __builtin_altivec_vsumsws(__a, __b); | 
|  | return (vector signed int) | 
|  | vec_perm(__b, __b, (vector unsigned char) | 
|  | (4,5,6,7,8,9,10,11,12,13,14,15,0,1,2,3)); | 
|  | #else | 
|  | return __builtin_altivec_vsumsws(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vsumsws */ | 
|  |  | 
|  | static vector signed int __attribute__((__always_inline__)) | 
|  | vec_vsumsws(vector signed int __a, vector signed int __b) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | __b = (vector signed int) | 
|  | vec_perm(__b, __b, (vector unsigned char) | 
|  | (12,13,14,15,0,1,2,3,4,5,6,7,8,9,10,11)); | 
|  | __b = __builtin_altivec_vsumsws(__a, __b); | 
|  | return (vector signed int) | 
|  | vec_perm(__b, __b, (vector unsigned char) | 
|  | (4,5,6,7,8,9,10,11,12,13,14,15,0,1,2,3)); | 
|  | #else | 
|  | return __builtin_altivec_vsumsws(__a, __b); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_trunc */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_trunc(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrfiz(__a); | 
|  | } | 
|  |  | 
|  | /* vec_vrfiz */ | 
|  |  | 
|  | static vector float __attribute__((__always_inline__)) | 
|  | vec_vrfiz(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vrfiz(__a); | 
|  | } | 
|  |  | 
|  | /* vec_unpackh */ | 
|  |  | 
|  | /* The vector unpack instructions all have a big-endian bias, so for | 
|  | little endian we must reverse the meanings of "high" and "low."  */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_unpackh(vector signed char __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vupklsb((vector char)__a); | 
|  | #else | 
|  | return __builtin_altivec_vupkhsb((vector char)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_unpackh(vector bool char __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool short)__builtin_altivec_vupklsb((vector char)__a); | 
|  | #else | 
|  | return (vector bool short)__builtin_altivec_vupkhsb((vector char)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_unpackh(vector short __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vupklsh(__a); | 
|  | #else | 
|  | return __builtin_altivec_vupkhsh(__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_unpackh(vector bool short __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool int)__builtin_altivec_vupklsh((vector short)__a); | 
|  | #else | 
|  | return (vector bool int)__builtin_altivec_vupkhsh((vector short)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_unpackh(vector pixel __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector unsigned int)__builtin_altivec_vupklpx((vector short)__a); | 
|  | #else | 
|  | return (vector unsigned int)__builtin_altivec_vupkhpx((vector short)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vupkhsb */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vupkhsb(vector signed char __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vupklsb((vector char)__a); | 
|  | #else | 
|  | return __builtin_altivec_vupkhsb((vector char)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vupkhsb(vector bool char __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool short)__builtin_altivec_vupklsb((vector char)__a); | 
|  | #else | 
|  | return (vector bool short)__builtin_altivec_vupkhsb((vector char)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vupkhsh */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vupkhsh(vector short __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vupklsh(__a); | 
|  | #else | 
|  | return __builtin_altivec_vupkhsh(__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vupkhsh(vector bool short __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool int)__builtin_altivec_vupklsh((vector short)__a); | 
|  | #else | 
|  | return (vector bool int)__builtin_altivec_vupkhsh((vector short)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vupkhsh(vector pixel __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector unsigned int)__builtin_altivec_vupklpx((vector short)__a); | 
|  | #else | 
|  | return (vector unsigned int)__builtin_altivec_vupkhpx((vector short)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_unpackl */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_unpackl(vector signed char __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vupkhsb((vector char)__a); | 
|  | #else | 
|  | return __builtin_altivec_vupklsb((vector char)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_unpackl(vector bool char __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool short)__builtin_altivec_vupkhsb((vector char)__a); | 
|  | #else | 
|  | return (vector bool short)__builtin_altivec_vupklsb((vector char)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_unpackl(vector short __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vupkhsh(__a); | 
|  | #else | 
|  | return __builtin_altivec_vupklsh(__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_unpackl(vector bool short __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool int)__builtin_altivec_vupkhsh((vector short)__a); | 
|  | #else | 
|  | return (vector bool int)__builtin_altivec_vupklsh((vector short)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_unpackl(vector pixel __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector unsigned int)__builtin_altivec_vupkhpx((vector short)__a); | 
|  | #else | 
|  | return (vector unsigned int)__builtin_altivec_vupklpx((vector short)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vupklsb */ | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vupklsb(vector signed char __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vupkhsb((vector char)__a); | 
|  | #else | 
|  | return __builtin_altivec_vupklsb((vector char)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vupklsb(vector bool char __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool short)__builtin_altivec_vupkhsb((vector char)__a); | 
|  | #else | 
|  | return (vector bool short)__builtin_altivec_vupklsb((vector char)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_vupklsh */ | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vupklsh(vector short __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return __builtin_altivec_vupkhsh(__a); | 
|  | #else | 
|  | return __builtin_altivec_vupklsh(__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vupklsh(vector bool short __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector bool int)__builtin_altivec_vupkhsh((vector short)__a); | 
|  | #else | 
|  | return (vector bool int)__builtin_altivec_vupklsh((vector short)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vupklsh(vector pixel __a) | 
|  | { | 
|  | #ifdef __LITTLE_ENDIAN__ | 
|  | return (vector unsigned int)__builtin_altivec_vupkhpx((vector short)__a); | 
|  | #else | 
|  | return (vector unsigned int)__builtin_altivec_vupklpx((vector short)__a); | 
|  | #endif | 
|  | } | 
|  |  | 
|  | /* vec_xor */ | 
|  |  | 
|  | #define __builtin_altivec_vxor vec_xor | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_xor(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_xor(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_xor(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a ^ (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_xor(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_xor(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_xor(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a ^ (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_xor(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_xor(vector short __a, vector short __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_xor(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_xor(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a ^ (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_xor(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_xor(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_xor(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a ^ (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_xor(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_xor(vector int __a, vector int __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_xor(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_xor(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a ^ (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_xor(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_xor(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_xor(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a ^ (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_xor(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_xor(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_xor(vector bool int __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_xor(vector float __a, vector bool int __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* vec_vxor */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vxor(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vxor(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return (vector signed char)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_vxor(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __a ^ (vector signed char)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vxor(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vxor(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return (vector unsigned char)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_vxor(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __a ^ (vector unsigned char)__b; | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_vxor(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vxor(vector short __a, vector short __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vxor(vector bool short __a, vector short __b) | 
|  | { | 
|  | return (vector short)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_vxor(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __a ^ (vector short)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vxor(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vxor(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return (vector unsigned short)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_vxor(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __a ^ (vector unsigned short)__b; | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_vxor(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vxor(vector int __a, vector int __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vxor(vector bool int __a, vector int __b) | 
|  | { | 
|  | return (vector int)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_vxor(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __a ^ (vector int)__b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vxor(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vxor(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return (vector unsigned int)__a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_vxor(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __a ^ (vector unsigned int)__b; | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_vxor(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __a ^ __b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vxor(vector float __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vxor(vector bool int __a, vector float __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_vxor(vector float __a, vector bool int __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)__a ^ (vector unsigned int)__b; | 
|  | return (vector float)__res; | 
|  | } | 
|  |  | 
|  | /* ------------------------ extensions for CBEA ----------------------------- */ | 
|  |  | 
|  | /* vec_extract */ | 
|  |  | 
|  | static signed char __ATTRS_o_ai | 
|  | vec_extract(vector signed char __a, int __b) | 
|  | { | 
|  | return __a[__b]; | 
|  | } | 
|  |  | 
|  | static unsigned char __ATTRS_o_ai | 
|  | vec_extract(vector unsigned char __a, int __b) | 
|  | { | 
|  | return __a[__b]; | 
|  | } | 
|  |  | 
|  | static short __ATTRS_o_ai | 
|  | vec_extract(vector short __a, int __b) | 
|  | { | 
|  | return __a[__b]; | 
|  | } | 
|  |  | 
|  | static unsigned short __ATTRS_o_ai | 
|  | vec_extract(vector unsigned short __a, int __b) | 
|  | { | 
|  | return __a[__b]; | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_extract(vector int __a, int __b) | 
|  | { | 
|  | return __a[__b]; | 
|  | } | 
|  |  | 
|  | static unsigned int __ATTRS_o_ai | 
|  | vec_extract(vector unsigned int __a, int __b) | 
|  | { | 
|  | return __a[__b]; | 
|  | } | 
|  |  | 
|  | static float __ATTRS_o_ai | 
|  | vec_extract(vector float __a, int __b) | 
|  | { | 
|  | return __a[__b]; | 
|  | } | 
|  |  | 
|  | /* vec_insert */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_insert(signed char __a, vector signed char __b, int __c) | 
|  | { | 
|  | __b[__c] = __a; | 
|  | return __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_insert(unsigned char __a, vector unsigned char __b, int __c) | 
|  | { | 
|  | __b[__c] = __a; | 
|  | return __b; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_insert(short __a, vector short __b, int __c) | 
|  | { | 
|  | __b[__c] = __a; | 
|  | return __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_insert(unsigned short __a, vector unsigned short __b, int __c) | 
|  | { | 
|  | __b[__c] = __a; | 
|  | return __b; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_insert(int __a, vector int __b, int __c) | 
|  | { | 
|  | __b[__c] = __a; | 
|  | return __b; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_insert(unsigned int __a, vector unsigned int __b, int __c) | 
|  | { | 
|  | __b[__c] = __a; | 
|  | return __b; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_insert(float __a, vector float __b, int __c) | 
|  | { | 
|  | __b[__c] = __a; | 
|  | return __b; | 
|  | } | 
|  |  | 
|  | /* vec_lvlx */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const signed char *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector signed char)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector signed char *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector signed char)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const unsigned char *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector unsigned char)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector unsigned char *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector unsigned char)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector bool char *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector bool char)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const short *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector short)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector short *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector short)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const unsigned short *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector unsigned short)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector unsigned short *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector unsigned short)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector bool short *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector bool short)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector pixel *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector pixel)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const int *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector int)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector int *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector int)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const unsigned int *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector unsigned int)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector unsigned int *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector unsigned int)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector bool int *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector bool int)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const float *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector float)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvlx(int __a, const vector float *__b) | 
|  | { | 
|  | return vec_perm(vec_ld(__a, __b), | 
|  | (vector float)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | /* vec_lvlxl */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const signed char *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector signed char)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector signed char *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector signed char)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const unsigned char *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector unsigned char)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector unsigned char *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector unsigned char)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector bool char *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector bool char)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const short *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector short)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector short *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector short)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const unsigned short *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector unsigned short)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector unsigned short *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector unsigned short)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector bool short *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector bool short)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector pixel *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector pixel)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const int *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector int)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector int *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector int)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const unsigned int *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector unsigned int)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector unsigned int *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector unsigned int)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const vector bool int *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector bool int)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, const float *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector float)(0), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvlxl(int __a, vector float *__b) | 
|  | { | 
|  | return vec_perm(vec_ldl(__a, __b), | 
|  | (vector float)(0), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | /* vec_lvrx */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const signed char *__b) | 
|  | { | 
|  | return vec_perm((vector signed char)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector signed char *__b) | 
|  | { | 
|  | return vec_perm((vector signed char)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const unsigned char *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned char)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector unsigned char *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned char)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector bool char *__b) | 
|  | { | 
|  | return vec_perm((vector bool char)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const short *__b) | 
|  | { | 
|  | return vec_perm((vector short)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector short *__b) | 
|  | { | 
|  | return vec_perm((vector short)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const unsigned short *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned short)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector unsigned short *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned short)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector bool short *__b) | 
|  | { | 
|  | return vec_perm((vector bool short)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector pixel *__b) | 
|  | { | 
|  | return vec_perm((vector pixel)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const int *__b) | 
|  | { | 
|  | return vec_perm((vector int)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector int *__b) | 
|  | { | 
|  | return vec_perm((vector int)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const unsigned int *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned int)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector unsigned int *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned int)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector bool int *__b) | 
|  | { | 
|  | return vec_perm((vector bool int)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const float *__b) | 
|  | { | 
|  | return vec_perm((vector float)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvrx(int __a, const vector float *__b) | 
|  | { | 
|  | return vec_perm((vector float)(0), | 
|  | vec_ld(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | /* vec_lvrxl */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const signed char *__b) | 
|  | { | 
|  | return vec_perm((vector signed char)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector signed char *__b) | 
|  | { | 
|  | return vec_perm((vector signed char)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const unsigned char *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned char)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector unsigned char *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned char)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool char __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector bool char *__b) | 
|  | { | 
|  | return vec_perm((vector bool char)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const short *__b) | 
|  | { | 
|  | return vec_perm((vector short)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector short *__b) | 
|  | { | 
|  | return vec_perm((vector short)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const unsigned short *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned short)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector unsigned short *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned short)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool short __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector bool short *__b) | 
|  | { | 
|  | return vec_perm((vector bool short)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector pixel __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector pixel *__b) | 
|  | { | 
|  | return vec_perm((vector pixel)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const int *__b) | 
|  | { | 
|  | return vec_perm((vector int)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector int *__b) | 
|  | { | 
|  | return vec_perm((vector int)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const unsigned int *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned int)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector unsigned int *__b) | 
|  | { | 
|  | return vec_perm((vector unsigned int)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector bool int __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector bool int *__b) | 
|  | { | 
|  | return vec_perm((vector bool int)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const float *__b) | 
|  | { | 
|  | return vec_perm((vector float)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, __b)); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_lvrxl(int __a, const vector float *__b) | 
|  | { | 
|  | return vec_perm((vector float)(0), | 
|  | vec_ldl(__a, __b), | 
|  | vec_lvsl(__a, (unsigned char *)__b)); | 
|  | } | 
|  |  | 
|  | /* vec_stvlx */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector signed char __a, int __b, vector signed char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector unsigned char __a, int __b, vector unsigned char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector bool char __a, int __b, vector bool char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector short __a, int __b, short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector short __a, int __b, vector short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector unsigned short __a, int __b, vector unsigned short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector bool short __a, int __b, vector bool short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector pixel __a, int __b, vector pixel *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector int __a, int __b, int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector int __a, int __b, vector int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector unsigned int __a, int __b, vector unsigned int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector bool int __a, int __b, vector bool int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlx(vector float __a, int __b, vector float *__c) | 
|  | { | 
|  | return vec_st(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_stvlxl */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector signed char __a, int __b, vector signed char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector unsigned char __a, int __b, vector unsigned char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector bool char __a, int __b, vector bool char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector short __a, int __b, short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector short __a, int __b, vector short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector unsigned short __a, int __b, vector unsigned short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector bool short __a, int __b, vector bool short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector pixel __a, int __b, vector pixel *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector int __a, int __b, int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector int __a, int __b, vector int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector unsigned int __a, int __b, vector unsigned int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector bool int __a, int __b, vector bool int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvlxl(vector float __a, int __b, vector float *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(vec_lvrx(__b, __c), | 
|  | __a, | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_stvrx */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector signed char __a, int __b, vector signed char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector unsigned char __a, int __b, vector unsigned char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector bool char __a, int __b, vector bool char *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector short __a, int __b, short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector short __a, int __b, vector short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector unsigned short __a, int __b, vector unsigned short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector bool short __a, int __b, vector bool short *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector pixel __a, int __b, vector pixel *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector int __a, int __b, int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector int __a, int __b, vector int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector unsigned int __a, int __b, vector unsigned int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector bool int __a, int __b, vector bool int *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrx(vector float __a, int __b, vector float *__c) | 
|  | { | 
|  | return vec_st(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_stvrxl */ | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector signed char __a, int __b, signed char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector signed char __a, int __b, vector signed char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector unsigned char __a, int __b, unsigned char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector unsigned char __a, int __b, vector unsigned char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector bool char __a, int __b, vector bool char *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector short __a, int __b, short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector short __a, int __b, vector short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector unsigned short __a, int __b, unsigned short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector unsigned short __a, int __b, vector unsigned short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector bool short __a, int __b, vector bool short *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector pixel __a, int __b, vector pixel *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector int __a, int __b, int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector int __a, int __b, vector int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector unsigned int __a, int __b, unsigned int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, __c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector unsigned int __a, int __b, vector unsigned int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector bool int __a, int __b, vector bool int *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | static void __ATTRS_o_ai | 
|  | vec_stvrxl(vector float __a, int __b, vector float *__c) | 
|  | { | 
|  | return vec_stl(vec_perm(__a, | 
|  | vec_lvlx(__b, __c), | 
|  | vec_lvsr(__b, (unsigned char *)__c)), | 
|  | __b, __c); | 
|  | } | 
|  |  | 
|  | /* vec_promote */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_promote(signed char __a, int __b) | 
|  | { | 
|  | vector signed char __res = (vector signed char)(0); | 
|  | __res[__b] = __a; | 
|  | return __res; | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_promote(unsigned char __a, int __b) | 
|  | { | 
|  | vector unsigned char __res = (vector unsigned char)(0); | 
|  | __res[__b] = __a; | 
|  | return __res; | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_promote(short __a, int __b) | 
|  | { | 
|  | vector short __res = (vector short)(0); | 
|  | __res[__b] = __a; | 
|  | return __res; | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_promote(unsigned short __a, int __b) | 
|  | { | 
|  | vector unsigned short __res = (vector unsigned short)(0); | 
|  | __res[__b] = __a; | 
|  | return __res; | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_promote(int __a, int __b) | 
|  | { | 
|  | vector int __res = (vector int)(0); | 
|  | __res[__b] = __a; | 
|  | return __res; | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_promote(unsigned int __a, int __b) | 
|  | { | 
|  | vector unsigned int __res = (vector unsigned int)(0); | 
|  | __res[__b] = __a; | 
|  | return __res; | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_promote(float __a, int __b) | 
|  | { | 
|  | vector float __res = (vector float)(0); | 
|  | __res[__b] = __a; | 
|  | return __res; | 
|  | } | 
|  |  | 
|  | /* vec_splats */ | 
|  |  | 
|  | static vector signed char __ATTRS_o_ai | 
|  | vec_splats(signed char __a) | 
|  | { | 
|  | return (vector signed char)(__a); | 
|  | } | 
|  |  | 
|  | static vector unsigned char __ATTRS_o_ai | 
|  | vec_splats(unsigned char __a) | 
|  | { | 
|  | return (vector unsigned char)(__a); | 
|  | } | 
|  |  | 
|  | static vector short __ATTRS_o_ai | 
|  | vec_splats(short __a) | 
|  | { | 
|  | return (vector short)(__a); | 
|  | } | 
|  |  | 
|  | static vector unsigned short __ATTRS_o_ai | 
|  | vec_splats(unsigned short __a) | 
|  | { | 
|  | return (vector unsigned short)(__a); | 
|  | } | 
|  |  | 
|  | static vector int __ATTRS_o_ai | 
|  | vec_splats(int __a) | 
|  | { | 
|  | return (vector int)(__a); | 
|  | } | 
|  |  | 
|  | static vector unsigned int __ATTRS_o_ai | 
|  | vec_splats(unsigned int __a) | 
|  | { | 
|  | return (vector unsigned int)(__a); | 
|  | } | 
|  |  | 
|  | static vector float __ATTRS_o_ai | 
|  | vec_splats(float __a) | 
|  | { | 
|  | return (vector float)(__a); | 
|  | } | 
|  |  | 
|  | /* ----------------------------- predicates --------------------------------- */ | 
|  |  | 
|  | /* vec_all_eq */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT, __a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector bool short __a, vector short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector pixel __a, vector pixel __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_LT, __a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_eq(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpeqfp_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_all_ge */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, (vector signed char)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, | 
|  | (vector unsigned char)__b, | 
|  | (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __b, (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, | 
|  | (vector unsigned char)__b, | 
|  | (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, (vector short)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, | 
|  | (vector unsigned short)__b, | 
|  | (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, __b, (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, | 
|  | (vector unsigned short)__b, | 
|  | (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, (vector int)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, | 
|  | (vector unsigned int)__b, | 
|  | (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __b, (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, | 
|  | (vector unsigned int)__b, | 
|  | (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ge(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgefp_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_all_gt */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_LT, __a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, __a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, | 
|  | (vector unsigned char)__a, | 
|  | (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, | 
|  | (vector unsigned char)__a, | 
|  | (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_LT, __a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, __a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, | 
|  | (vector unsigned short)__a, | 
|  | (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, | 
|  | (vector unsigned short)__a, | 
|  | (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_LT, __a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, | 
|  | (vector unsigned int)__a, | 
|  | (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, | 
|  | (vector unsigned int)__a, | 
|  | (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_gt(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtfp_p(__CR6_LT, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_all_in */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_all_in(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpbfp_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_all_le */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, __a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, __a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, | 
|  | (vector unsigned char)__a, | 
|  | (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ, | 
|  | (vector unsigned char)__a, | 
|  | (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, __a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, __a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, | 
|  | (vector unsigned short)__a, | 
|  | (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, | 
|  | (vector unsigned short)__a, | 
|  | (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, __a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, __a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, | 
|  | (vector unsigned int)__a, | 
|  | (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, | 
|  | (vector unsigned int)__a, | 
|  | (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_le(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgefp_p(__CR6_LT, __b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_all_lt */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_LT, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_LT, (vector signed char)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, | 
|  | (vector unsigned char)__b, | 
|  | (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, __b, (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT, | 
|  | (vector unsigned char)__b, | 
|  | (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_LT, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_LT, (vector short)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, | 
|  | (vector unsigned short)__b, | 
|  | (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, __b, (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT, | 
|  | (vector unsigned short)__b, | 
|  | (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_LT, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_LT, (vector int)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, | 
|  | (vector unsigned int)__b, | 
|  | (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, __b, (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT, | 
|  | (vector unsigned int)__b, | 
|  | (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_lt(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtfp_p(__CR6_LT, __b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_all_nan */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_all_nan(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vcmpeqfp_p(__CR6_EQ, __a, __a); | 
|  | } | 
|  |  | 
|  | /* vec_all_ne */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ, __a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector bool short __a, vector short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector pixel __a, vector pixel __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)__a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_EQ, __a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_all_ne(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpeqfp_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_all_nge */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_all_nge(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgefp_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_all_ngt */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_all_ngt(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtfp_p(__CR6_EQ, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_all_nle */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_all_nle(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgefp_p(__CR6_EQ, __b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_all_nlt */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_all_nlt(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtfp_p(__CR6_EQ, __b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_all_numeric */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_all_numeric(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vcmpeqfp_p(__CR6_LT, __a, __a); | 
|  | } | 
|  |  | 
|  | /* vec_any_eq */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, __a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector pixel __a, vector pixel __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, __a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector bool int __a, vector int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_eq(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpeqfp_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_any_ge */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, (vector signed char)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, | 
|  | (vector unsigned char)__b, | 
|  | (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, __b, (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, | 
|  | (vector unsigned char)__b, | 
|  | (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, (vector short)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, | 
|  | (vector unsigned short)__b, | 
|  | (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, __b, (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, | 
|  | (vector unsigned short)__b, | 
|  | (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, (vector int)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, | 
|  | (vector unsigned int)__b, | 
|  | (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, __b, (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, | 
|  | (vector unsigned int)__b, | 
|  | (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ge(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgefp_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_any_gt */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, __a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, __a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, | 
|  | (vector unsigned char)__a, | 
|  | (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, | 
|  | (vector unsigned char)__a, | 
|  | (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, __a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, __a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, | 
|  | (vector unsigned short)__a, | 
|  | (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, | 
|  | (vector unsigned short)__a, | 
|  | (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, __a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, __a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, | 
|  | (vector unsigned int)__a, | 
|  | (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, | 
|  | (vector unsigned int)__a, | 
|  | (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_gt(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtfp_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_any_le */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, __a, (vector signed char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, __a, (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, | 
|  | (vector unsigned char)__a, | 
|  | (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, | 
|  | (vector unsigned char)__a, | 
|  | (vector unsigned char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, __a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, __a, (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, | 
|  | (vector unsigned short)__a, | 
|  | (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, | 
|  | (vector unsigned short)__a, | 
|  | (vector unsigned short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, __a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, __a, (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, | 
|  | (vector unsigned int)__a, | 
|  | (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)__a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, | 
|  | (vector unsigned int)__a, | 
|  | (vector unsigned int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_le(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgefp_p(__CR6_EQ_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_any_lt */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, (vector signed char)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, | 
|  | (vector unsigned char)__b, | 
|  | (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, __b, (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, | 
|  | (vector unsigned char)__b, | 
|  | (vector unsigned char)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, (vector short)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, | 
|  | (vector unsigned short)__b, | 
|  | (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, __b, (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, | 
|  | (vector unsigned short)__b, | 
|  | (vector unsigned short)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, (vector int)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)__b, __a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector bool int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, | 
|  | (vector unsigned int)__b, | 
|  | (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, __b, (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, | 
|  | (vector unsigned int)__b, | 
|  | (vector unsigned int)__a); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_lt(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtfp_p(__CR6_EQ_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_any_nan */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_any_nan(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vcmpeqfp_p(__CR6_LT_REV, __a, __a); | 
|  | } | 
|  |  | 
|  | /* vec_any_ne */ | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector signed char __a, vector signed char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector signed char __a, vector bool char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector unsigned char __a, vector unsigned char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector unsigned char __a, vector bool char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector bool char __a, vector signed char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector bool char __a, vector unsigned char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector bool char __a, vector bool char __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)__a, (vector char)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, __a, (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector unsigned short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector unsigned short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector bool short __a, vector short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector bool short __a, vector unsigned short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector bool short __a, vector bool short __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector pixel __a, vector pixel __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, | 
|  | (vector short)__a, | 
|  | (vector short)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector int __a, vector int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector int __a, vector bool int __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpequw_p(__CR6_LT_REV, __a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector unsigned int __a, vector unsigned int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector unsigned int __a, vector bool int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector bool int __a, vector int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector bool int __a, vector unsigned int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector bool int __a, vector bool int __b) | 
|  | { | 
|  | return | 
|  | __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)__a, (vector int)__b); | 
|  | } | 
|  |  | 
|  | static int __ATTRS_o_ai | 
|  | vec_any_ne(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpeqfp_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_any_nge */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_any_nge(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgefp_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_any_ngt */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_any_ngt(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtfp_p(__CR6_LT_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | /* vec_any_nle */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_any_nle(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgefp_p(__CR6_LT_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_any_nlt */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_any_nlt(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpgtfp_p(__CR6_LT_REV, __b, __a); | 
|  | } | 
|  |  | 
|  | /* vec_any_numeric */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_any_numeric(vector float __a) | 
|  | { | 
|  | return __builtin_altivec_vcmpeqfp_p(__CR6_EQ_REV, __a, __a); | 
|  | } | 
|  |  | 
|  | /* vec_any_out */ | 
|  |  | 
|  | static int __attribute__((__always_inline__)) | 
|  | vec_any_out(vector float __a, vector float __b) | 
|  | { | 
|  | return __builtin_altivec_vcmpbfp_p(__CR6_EQ_REV, __a, __b); | 
|  | } | 
|  |  | 
|  | #undef __ATTRS_o_ai | 
|  |  | 
|  | #endif /* __ALTIVEC_H */ |