summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorAnton Yartsev <anton.yartsev@gmail.com>2013-03-10 16:25:43 +0000
committerAnton Yartsev <anton.yartsev@gmail.com>2013-03-10 16:25:43 +0000
commita3c9ba364e4c80ec73a7134519748c914314e8b6 (patch)
tree9d4f3c6366b0b5cd64f3e96de54f91c06ac2a73b /clang
parentb23fc91cdc6385d4c26692784647654558639a46 (diff)
downloadbcm5719-llvm-a3c9ba364e4c80ec73a7134519748c914314e8b6.tar.gz
bcm5719-llvm-a3c9ba364e4c80ec73a7134519748c914314e8b6.zip
PR15480: fixed second parameter types of vec_lde, vec_lvebx, vec_lvehx, and vec_lvewx according to AltiVec Programming Interface Manual
llvm-svn: 176789
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/Headers/altivec.h28
-rw-r--r--clang/test/CodeGen/builtins-ppc-altivec.c28
2 files changed, 28 insertions, 28 deletions
diff --git a/clang/lib/Headers/altivec.h b/clang/lib/Headers/altivec.h
index c243676a2ff..74ce08aa6fe 100644
--- a/clang/lib/Headers/altivec.h
+++ b/clang/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/clang/test/CodeGen/builtins-ppc-altivec.c b/clang/test/CodeGen/builtins-ppc-altivec.c
index e885cb03aa1..9427a8a57cd 100644
--- a/clang/test/CodeGen/builtins-ppc-altivec.c
+++ b/clang/test/CodeGen/builtins-ppc-altivec.c
@@ -484,20 +484,20 @@ void test6() {
res_vf = vec_lvx(0, &param_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, &param_sc); // CHECK: @llvm.ppc.altivec.lvebx
+ res_vuc = vec_lde(0, &param_uc); // CHECK: @llvm.ppc.altivec.lvebx
+ res_vs = vec_lde(0, &param_s); // CHECK: @llvm.ppc.altivec.lvehx
+ res_vus = vec_lde(0, &param_us); // CHECK: @llvm.ppc.altivec.lvehx
+ res_vi = vec_lde(0, &param_i); // CHECK: @llvm.ppc.altivec.lvewx
+ res_vui = vec_lde(0, &param_ui); // CHECK: @llvm.ppc.altivec.lvewx
+ res_vf = vec_lde(0, &param_f); // CHECK: @llvm.ppc.altivec.lvewx
+ res_vsc = vec_lvebx(0, &param_sc); // CHECK: @llvm.ppc.altivec.lvebx
+ res_vuc = vec_lvebx(0, &param_uc); // CHECK: @llvm.ppc.altivec.lvebx
+ res_vs = vec_lvehx(0, &param_s); // CHECK: @llvm.ppc.altivec.lvehx
+ res_vus = vec_lvehx(0, &param_us); // CHECK: @llvm.ppc.altivec.lvehx
+ res_vi = vec_lvewx(0, &param_i); // CHECK: @llvm.ppc.altivec.lvewx
+ res_vui = vec_lvewx(0, &param_ui); // CHECK: @llvm.ppc.altivec.lvewx
+ res_vf = vec_lvewx(0, &param_f); // CHECK: @llvm.ppc.altivec.lvewx
/* vec_ldl */
res_vsc = vec_ldl(0, &vsc); // CHECK: @llvm.ppc.altivec.lvxl
OpenPOWER on IntegriCloud