diff options
Diffstat (limited to 'clang/lib/Headers/altivec.h')
-rw-r--r-- | clang/lib/Headers/altivec.h | 87 |
1 files changed, 73 insertions, 14 deletions
diff --git a/clang/lib/Headers/altivec.h b/clang/lib/Headers/altivec.h index 179fcdfcf1f..77bc9286159 100644 --- a/clang/lib/Headers/altivec.h +++ b/clang/lib/Headers/altivec.h @@ -10268,16 +10268,31 @@ vec_vupklsw(vector bool int __a) { #ifdef __VSX__ +static __inline__ vector bool int __ATTRS_o_ai +vec_vsx_ld(int __a, const vector bool int *__b) { + return (vector bool int)__builtin_vsx_lxvw4x(__a, __b); +} + static __inline__ vector signed int __ATTRS_o_ai vec_vsx_ld(int __a, const vector signed int *__b) { return (vector signed int)__builtin_vsx_lxvw4x(__a, __b); } +static __inline__ vector signed int __ATTRS_o_ai +vec_vsx_ld(int __a, const signed int *__b) { + return (vector signed int)__builtin_vsx_lxvw4x(__a, __b); +} + static __inline__ vector unsigned int __ATTRS_o_ai vec_vsx_ld(int __a, const vector unsigned int *__b) { return (vector unsigned int)__builtin_vsx_lxvw4x(__a, __b); } +static __inline__ vector unsigned int __ATTRS_o_ai +vec_vsx_ld(int __a, const unsigned int *__b) { + return (vector unsigned int)__builtin_vsx_lxvw4x(__a, __b); +} + static __inline__ vector float __ATTRS_o_ai vec_vsx_ld(int __a, const vector float *__b) { return (vector float)__builtin_vsx_lxvw4x(__a, __b); @@ -10303,6 +10318,16 @@ vec_vsx_ld(int __a, const vector double *__b) { return (vector double)__builtin_vsx_lxvd2x(__a, __b); } +static __inline__ vector double __ATTRS_o_ai +vec_vsx_ld(int __a, const double *__b) { + return (vector double)__builtin_vsx_lxvd2x(__a, __b); +} + +static __inline__ vector bool short __ATTRS_o_ai +vec_vsx_ld(int __a, const vector bool short *__b) { + return (vector bool short)__builtin_vsx_lxvw4x(__a, __b); +} + static __inline__ vector signed short __ATTRS_o_ai vec_vsx_ld(int __a, const vector signed short *__b) { return (vector signed short)__builtin_vsx_lxvw4x(__a, __b); @@ -10354,6 +10379,21 @@ vec_vsx_ld(int __a, const unsigned char *__b) { #ifdef __VSX__ +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool int __a, int __b, + vector bool int *__c) { + __builtin_vsx_stxvw4x((vector int)__a, __b, __c); +} + +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool int __a, int __b, + signed int *__c) { + __builtin_vsx_stxvw4x((vector int)__a, __b, __c); +} + +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool int __a, int __b, + unsigned int *__c) { + __builtin_vsx_stxvw4x((vector int)__a, __b, __c); +} + static __inline__ void __ATTRS_o_ai vec_vsx_st(vector signed int __a, int __b, vector signed int *__c) { __builtin_vsx_stxvw4x((vector int)__a, __b, __c); @@ -10401,6 +10441,25 @@ static __inline__ void __ATTRS_o_ai vec_vsx_st(vector double __a, int __b, __builtin_vsx_stxvd2x((vector double)__a, __b, __c); } +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector double __a, int __b, + double *__c) { + __builtin_vsx_stxvd2x((vector double)__a, __b, __c); +} + +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool short __a, int __b, + vector bool short *__c) { + __builtin_vsx_stxvw4x((vector int)__a, __b, __c); +} + +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool short __a, int __b, + signed short *__c) { + __builtin_vsx_stxvw4x((vector int)__a, __b, __c); +} + +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool short __a, int __b, + unsigned short *__c) { + __builtin_vsx_stxvw4x((vector int)__a, __b, __c); +} static __inline__ void __ATTRS_o_ai vec_vsx_st(vector signed short __a, int __b, vector signed short *__c) { __builtin_vsx_stxvw4x((vector int)__a, __b, __c); @@ -10422,39 +10481,39 @@ static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned short __a, __builtin_vsx_stxvw4x((vector int)__a, __b, __c); } -static __inline__ void __ATTRS_o_ai vec_vsx_st(vector signed char __a, int __b, - vector signed char *__c) { +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool char __a, int __b, + vector bool char *__c) { __builtin_vsx_stxvw4x((vector int)__a, __b, __c); } -static __inline__ void __ATTRS_o_ai vec_vsx_st(vector signed char __a, int __b, +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool char __a, int __b, signed char *__c) { __builtin_vsx_stxvw4x((vector int)__a, __b, __c); } -static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned char __a, - int __b, - vector unsigned char *__c) { +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool char __a, int __b, + unsigned char *__c) { __builtin_vsx_stxvw4x((vector int)__a, __b, __c); } -static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned char __a, - int __b, unsigned char *__c) { +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector signed char __a, int __b, + vector signed char *__c) { __builtin_vsx_stxvw4x((vector int)__a, __b, __c); } -static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool char __a, int __b, - vector bool char *__c) { +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector signed char __a, int __b, + signed char *__c) { __builtin_vsx_stxvw4x((vector int)__a, __b, __c); } -static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool char __a, int __b, - signed char *__c) { +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned char __a, + int __b, + vector unsigned char *__c) { __builtin_vsx_stxvw4x((vector int)__a, __b, __c); } -static __inline__ void __ATTRS_o_ai vec_vsx_st(vector bool char __a, int __b, - unsigned char *__c) { +static __inline__ void __ATTRS_o_ai vec_vsx_st(vector unsigned char __a, + int __b, unsigned char *__c) { __builtin_vsx_stxvw4x((vector int)__a, __b, __c); } |