From: Anton Yartsev Date: Sun, 10 Mar 2013 16:25:43 +0000 (+0000) Subject: PR15480: fixed second parameter types of vec_lde, vec_lvebx, vec_lvehx, and vec_lvewx... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3521c49fc4867ff9ac78d4ad6a9e3e5566ba8b83;p=clang PR15480: fixed second parameter types of vec_lde, vec_lvebx, vec_lvehx, and vec_lvewx according to AltiVec Programming Interface Manual git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176789 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Headers/altivec.h b/lib/Headers/altivec.h index c243676a2f..74ce08aa6f 100644 --- a/lib/Headers/altivec.h +++ b/lib/Headers/altivec.h @@ -1923,43 +1923,43 @@ vec_lvx(int __a, const float *__b) /* vec_lde */ static vector signed char __ATTRS_o_ai -vec_lde(int __a, const vector signed char *__b) +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 vector unsigned char *__b) +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 vector short *__b) +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 vector unsigned short *__b) +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 vector int *__b) +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 vector unsigned int *__b) +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 vector float *__b) +vec_lde(int __a, const float *__b) { return (vector float)__builtin_altivec_lvewx(__a, __b); } @@ -1967,13 +1967,13 @@ vec_lde(int __a, const vector float *__b) /* vec_lvebx */ static vector signed char __ATTRS_o_ai -vec_lvebx(int __a, const vector signed char *__b) +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 vector unsigned char *__b) +vec_lvebx(int __a, const unsigned char *__b) { return (vector unsigned char)__builtin_altivec_lvebx(__a, __b); } @@ -1981,13 +1981,13 @@ vec_lvebx(int __a, const vector unsigned char *__b) /* vec_lvehx */ static vector short __ATTRS_o_ai -vec_lvehx(int __a, const vector short *__b) +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 vector unsigned short *__b) +vec_lvehx(int __a, const unsigned short *__b) { return (vector unsigned short)__builtin_altivec_lvehx(__a, __b); } @@ -1995,19 +1995,19 @@ vec_lvehx(int __a, const vector unsigned short *__b) /* vec_lvewx */ static vector int __ATTRS_o_ai -vec_lvewx(int __a, const vector int *__b) +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 vector unsigned int *__b) +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 vector float *__b) +vec_lvewx(int __a, const float *__b) { return (vector float)__builtin_altivec_lvewx(__a, __b); } diff --git a/test/CodeGen/builtins-ppc-altivec.c b/test/CodeGen/builtins-ppc-altivec.c index e885cb03aa..9427a8a57c 100644 --- a/test/CodeGen/builtins-ppc-altivec.c +++ b/test/CodeGen/builtins-ppc-altivec.c @@ -484,20 +484,20 @@ void test6() { res_vf = vec_lvx(0, ¶m_f); // CHECK: @llvm.ppc.altivec.lvx /* vec_lde */ - res_vsc = vec_lde(0, &vsc); // CHECK: @llvm.ppc.altivec.lvebx - res_vuc = vec_lde(0, &vuc); // CHECK: @llvm.ppc.altivec.lvebx - res_vs = vec_lde(0, &vs); // CHECK: @llvm.ppc.altivec.lvehx - res_vus = vec_lde(0, &vus); // CHECK: @llvm.ppc.altivec.lvehx - res_vi = vec_lde(0, &vi); // CHECK: @llvm.ppc.altivec.lvewx - res_vui = vec_lde(0, &vui); // CHECK: @llvm.ppc.altivec.lvewx - res_vf = vec_lde(0, &vf); // CHECK: @llvm.ppc.altivec.lvewx - res_vsc = vec_lvebx(0, &vsc); // CHECK: @llvm.ppc.altivec.lvebx - res_vuc = vec_lvebx(0, &vuc); // CHECK: @llvm.ppc.altivec.lvebx - res_vs = vec_lvehx(0, &vs); // CHECK: @llvm.ppc.altivec.lvehx - res_vus = vec_lvehx(0, &vus); // CHECK: @llvm.ppc.altivec.lvehx - res_vi = vec_lvewx(0, &vi); // CHECK: @llvm.ppc.altivec.lvewx - res_vui = vec_lvewx(0, &vui); // CHECK: @llvm.ppc.altivec.lvewx - res_vf = vec_lvewx(0, &vf); // CHECK: @llvm.ppc.altivec.lvewx + res_vsc = vec_lde(0, ¶m_sc); // CHECK: @llvm.ppc.altivec.lvebx + res_vuc = vec_lde(0, ¶m_uc); // CHECK: @llvm.ppc.altivec.lvebx + res_vs = vec_lde(0, ¶m_s); // CHECK: @llvm.ppc.altivec.lvehx + res_vus = vec_lde(0, ¶m_us); // CHECK: @llvm.ppc.altivec.lvehx + res_vi = vec_lde(0, ¶m_i); // CHECK: @llvm.ppc.altivec.lvewx + res_vui = vec_lde(0, ¶m_ui); // CHECK: @llvm.ppc.altivec.lvewx + res_vf = vec_lde(0, ¶m_f); // CHECK: @llvm.ppc.altivec.lvewx + res_vsc = vec_lvebx(0, ¶m_sc); // CHECK: @llvm.ppc.altivec.lvebx + res_vuc = vec_lvebx(0, ¶m_uc); // CHECK: @llvm.ppc.altivec.lvebx + res_vs = vec_lvehx(0, ¶m_s); // CHECK: @llvm.ppc.altivec.lvehx + res_vus = vec_lvehx(0, ¶m_us); // CHECK: @llvm.ppc.altivec.lvehx + res_vi = vec_lvewx(0, ¶m_i); // CHECK: @llvm.ppc.altivec.lvewx + res_vui = vec_lvewx(0, ¶m_ui); // CHECK: @llvm.ppc.altivec.lvewx + res_vf = vec_lvewx(0, ¶m_f); // CHECK: @llvm.ppc.altivec.lvewx /* vec_ldl */ res_vsc = vec_ldl(0, &vsc); // CHECK: @llvm.ppc.altivec.lvxl