public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/wschmidt/heads/builtins4)] rs6000: Fix VEC_XL built-in mappings and built function type
@ 2020-12-21 15:12 William Schmidt
0 siblings, 0 replies; 2+ messages in thread
From: William Schmidt @ 2020-12-21 15:12 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:1dfe6ecc5afac1cff7b6a828940caa309695baed
commit 1dfe6ecc5afac1cff7b6a828940caa309695baed
Author: Bill Schmidt <wschmidt@linux.ibm.com>
Date: Sun Dec 20 09:54:31 2020 -0600
rs6000: Fix VEC_XL built-in mappings and built function type
2020-12-20 Bill Schmidt <wschmidt@linux.ibm.com>
* config/rs6000/rs6000-c.c
(altivec_resolve_new_overloaded_builtin): Resolve argument and
return types to instance type, not built-in type.
* config/rs6000/rs6000-overload.def (VEC_XL): Fix built-in
mappings for char and short.
Diff:
---
gcc/config/rs6000/rs6000-c.c | 16 ++++++++--------
gcc/config/rs6000/rs6000-overload.def | 16 ++++++++--------
2 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/gcc/config/rs6000/rs6000-c.c b/gcc/config/rs6000/rs6000-c.c
index d05da4fceaa..ba6ac56e7b3 100644
--- a/gcc/config/rs6000/rs6000-c.c
+++ b/gcc/config/rs6000/rs6000-c.c
@@ -2836,7 +2836,8 @@ altivec_resolve_new_overloaded_builtin (location_t loc, tree fndecl,
{
if (rs6000_builtin_decl (instance->bifid, false) != error_mark_node
&& rs6000_new_builtin_is_supported_p (instance->bifid))
- return altivec_build_new_resolved_builtin (args, n, fntype,
+ return altivec_build_new_resolved_builtin (args, n,
+ instance->fntype,
instance->bifid,
fcode);
else
@@ -2890,7 +2891,8 @@ altivec_resolve_new_overloaded_builtin (location_t loc, tree fndecl,
{
if (rs6000_builtin_decl (instance->bifid, false) != error_mark_node
&& rs6000_new_builtin_is_supported_p (instance->bifid))
- return altivec_build_new_resolved_builtin (args, n, fntype,
+ return altivec_build_new_resolved_builtin (args, n,
+ instance->fntype,
instance->bifid,
fcode);
else
@@ -2923,12 +2925,10 @@ altivec_resolve_new_overloaded_builtin (location_t loc, tree fndecl,
if (rs6000_builtin_decl (instance->bifid, false) != error_mark_node
&& rs6000_new_builtin_is_supported_p (instance->bifid))
- {
- tree fntype = rs6000_builtin_info_x[instance->bifid].fntype;
- return altivec_build_new_resolved_builtin (args, n, fntype,
- instance->bifid,
- fcode);
- }
+ return altivec_build_new_resolved_builtin (args, n,
+ instance->fntype,
+ instance->bifid,
+ fcode);
else
{
unsupported_builtin = true;
diff --git a/gcc/config/rs6000/rs6000-overload.def b/gcc/config/rs6000/rs6000-overload.def
index 981e2fe944b..005a5879109 100644
--- a/gcc/config/rs6000/rs6000-overload.def
+++ b/gcc/config/rs6000/rs6000-overload.def
@@ -3630,21 +3630,21 @@
[VEC_XL, vec_xl, __builtin_vec_vsx_ld, __VSX__]
vsc __builtin_vec_vsx_ld (signed long long, const vsc *);
- LXVW4X_V4SI LXVW4X_VSC
+ LXVW4X_V16QI LXVW4X_VSC
vsc __builtin_vec_vsx_ld (signed long long, const signed char *);
- LXVW4X_V4SI LXVW4X_SC
+ LXVW4X_V16QI LXVW4X_SC
vuc __builtin_vec_vsx_ld (signed long long, const vuc *);
- LXVW4X_V4SI LXVW4X_VUC
+ LXVW4X_V16QI LXVW4X_VUC
vuc __builtin_vec_vsx_ld (signed long long, const unsigned char *);
- LXVW4X_V4SI LXVW4X_UC
+ LXVW4X_V16QI LXVW4X_UC
vss __builtin_vec_vsx_ld (signed long long, const vss *);
- LXVW4X_V4SI LXVW4X_VSS
+ LXVW4X_V8HI LXVW4X_VSS
vss __builtin_vec_vsx_ld (signed long long, const signed short *);
- LXVW4X_V4SI LXVW4X_SS
+ LXVW4X_V8HI LXVW4X_SS
vus __builtin_vec_vsx_ld (signed long long, const vus *);
- LXVW4X_V4SI LXVW4X_VUS
+ LXVW4X_V8HI LXVW4X_VUS
vus __builtin_vec_vsx_ld (signed long long, const unsigned short *);
- LXVW4X_V4SI LXVW4X_US
+ LXVW4X_V8HI LXVW4X_US
vsi __builtin_vec_vsx_ld (signed long long, const vsi *);
LXVW4X_V4SI LXVW4X_VSI
vsi __builtin_vec_vsx_ld (signed long long, const signed int *);
^ permalink raw reply [flat|nested] 2+ messages in thread
* [gcc(refs/users/wschmidt/heads/builtins4)] rs6000: Fix VEC_XL built-in mappings and built function type
@ 2021-02-07 18:16 William Schmidt
0 siblings, 0 replies; 2+ messages in thread
From: William Schmidt @ 2021-02-07 18:16 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:9cd6ae2ff7079bad2d9016d7ad5d2ba5609587c4
commit 9cd6ae2ff7079bad2d9016d7ad5d2ba5609587c4
Author: Bill Schmidt <wschmidt@linux.ibm.com>
Date: Sun Dec 20 09:54:31 2020 -0600
rs6000: Fix VEC_XL built-in mappings and built function type
2020-12-20 Bill Schmidt <wschmidt@linux.ibm.com>
* config/rs6000/rs6000-c.c
(altivec_resolve_new_overloaded_builtin): Resolve argument and
return types to instance type, not built-in type.
* config/rs6000/rs6000-overload.def (VEC_XL): Fix built-in
mappings for char and short.
Diff:
---
gcc/config/rs6000/rs6000-c.c | 16 ++++++++--------
gcc/config/rs6000/rs6000-overload.def | 16 ++++++++--------
2 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/gcc/config/rs6000/rs6000-c.c b/gcc/config/rs6000/rs6000-c.c
index edab5a05a8f..b5b54c8b22b 100644
--- a/gcc/config/rs6000/rs6000-c.c
+++ b/gcc/config/rs6000/rs6000-c.c
@@ -2854,7 +2854,8 @@ altivec_resolve_new_overloaded_builtin (location_t loc, tree fndecl,
{
if (rs6000_builtin_decl (instance->bifid, false) != error_mark_node
&& rs6000_new_builtin_is_supported_p (instance->bifid))
- return altivec_build_new_resolved_builtin (args, n, fntype,
+ return altivec_build_new_resolved_builtin (args, n,
+ instance->fntype,
instance->bifid,
fcode);
else
@@ -2908,7 +2909,8 @@ altivec_resolve_new_overloaded_builtin (location_t loc, tree fndecl,
{
if (rs6000_builtin_decl (instance->bifid, false) != error_mark_node
&& rs6000_new_builtin_is_supported_p (instance->bifid))
- return altivec_build_new_resolved_builtin (args, n, fntype,
+ return altivec_build_new_resolved_builtin (args, n,
+ instance->fntype,
instance->bifid,
fcode);
else
@@ -2941,12 +2943,10 @@ altivec_resolve_new_overloaded_builtin (location_t loc, tree fndecl,
if (rs6000_builtin_decl (instance->bifid, false) != error_mark_node
&& rs6000_new_builtin_is_supported_p (instance->bifid))
- {
- tree fntype = rs6000_builtin_info_x[instance->bifid].fntype;
- return altivec_build_new_resolved_builtin (args, n, fntype,
- instance->bifid,
- fcode);
- }
+ return altivec_build_new_resolved_builtin (args, n,
+ instance->fntype,
+ instance->bifid,
+ fcode);
else
{
unsupported_builtin = true;
diff --git a/gcc/config/rs6000/rs6000-overload.def b/gcc/config/rs6000/rs6000-overload.def
index 981e2fe944b..005a5879109 100644
--- a/gcc/config/rs6000/rs6000-overload.def
+++ b/gcc/config/rs6000/rs6000-overload.def
@@ -3630,21 +3630,21 @@
[VEC_XL, vec_xl, __builtin_vec_vsx_ld, __VSX__]
vsc __builtin_vec_vsx_ld (signed long long, const vsc *);
- LXVW4X_V4SI LXVW4X_VSC
+ LXVW4X_V16QI LXVW4X_VSC
vsc __builtin_vec_vsx_ld (signed long long, const signed char *);
- LXVW4X_V4SI LXVW4X_SC
+ LXVW4X_V16QI LXVW4X_SC
vuc __builtin_vec_vsx_ld (signed long long, const vuc *);
- LXVW4X_V4SI LXVW4X_VUC
+ LXVW4X_V16QI LXVW4X_VUC
vuc __builtin_vec_vsx_ld (signed long long, const unsigned char *);
- LXVW4X_V4SI LXVW4X_UC
+ LXVW4X_V16QI LXVW4X_UC
vss __builtin_vec_vsx_ld (signed long long, const vss *);
- LXVW4X_V4SI LXVW4X_VSS
+ LXVW4X_V8HI LXVW4X_VSS
vss __builtin_vec_vsx_ld (signed long long, const signed short *);
- LXVW4X_V4SI LXVW4X_SS
+ LXVW4X_V8HI LXVW4X_SS
vus __builtin_vec_vsx_ld (signed long long, const vus *);
- LXVW4X_V4SI LXVW4X_VUS
+ LXVW4X_V8HI LXVW4X_VUS
vus __builtin_vec_vsx_ld (signed long long, const unsigned short *);
- LXVW4X_V4SI LXVW4X_US
+ LXVW4X_V8HI LXVW4X_US
vsi __builtin_vec_vsx_ld (signed long long, const vsi *);
LXVW4X_V4SI LXVW4X_VSI
vsi __builtin_vec_vsx_ld (signed long long, const signed int *);
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-02-07 18:16 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-21 15:12 [gcc(refs/users/wschmidt/heads/builtins4)] rs6000: Fix VEC_XL built-in mappings and built function type William Schmidt
2021-02-07 18:16 William Schmidt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).