public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
From: William Schmidt <wschmidt@gcc.gnu.org>
To: gcc-cvs@gcc.gnu.org
Subject: [gcc(refs/users/wschmidt/heads/builtins4)] rs6000: More bug fixes
Date: Sun,  7 Feb 2021 18:18:26 +0000 (GMT)	[thread overview]
Message-ID: <20210207181826.312393953424@sourceware.org> (raw)

https://gcc.gnu.org/g:1d603e60eac3b8aea4d246d7247093b9638c8fc4

commit 1d603e60eac3b8aea4d246d7247093b9638c8fc4
Author: Bill Schmidt <wschmidt@linux.ibm.com>
Date:   Wed Jan 27 17:00:50 2021 -0600

    rs6000: More bug fixes
    
    2021-01-27  Bill Schmidt  <wschmidt@linux.ibm.com>
    
    gcc/
            * config/rs6000/altivec.h (__builtin_vec_vaduh): Fix.
            (__builtin_vec_vaduw): Fix.
            * config/rs6000/rs6000-builtin-new.def: Miscellaneous fixes.
            * config/rs6000/rs6000-overload.def: Miscellaneous fixes.
    
    gcc/testsuite/
            * gcc.target/powerpc/vadsdub-2.c: Remove deprecated interface.
            * gcc.target/powerpc/vadsduh-2.c: Likewise.
            * gcc.target/powerpc/vadsduw-2.c: Likewise.

Diff:
---
 gcc/config/rs6000/altivec.h                  |  4 +--
 gcc/config/rs6000/rs6000-builtin-new.def     | 14 +++++-----
 gcc/config/rs6000/rs6000-overload.def        | 38 ++++++++++++++--------------
 gcc/testsuite/gcc.target/powerpc/vadsdub-2.c |  2 +-
 gcc/testsuite/gcc.target/powerpc/vadsduh-2.c |  2 +-
 gcc/testsuite/gcc.target/powerpc/vadsduw-2.c |  2 +-
 6 files changed, 31 insertions(+), 31 deletions(-)

diff --git a/gcc/config/rs6000/altivec.h b/gcc/config/rs6000/altivec.h
index 1625670d24c..86464722d07 100644
--- a/gcc/config/rs6000/altivec.h
+++ b/gcc/config/rs6000/altivec.h
@@ -267,8 +267,8 @@ __altivec_scalar_pred(vec_any_nle,
 /* Deprecated interfaces.  */
 #ifdef _ARCH_PWR9
 #define __builtin_vec_vadub __builtin_vec_vadu
-#define __builtin_vec_vaduh __builtin_vec_vaduh
-#define __builtin_vec_vaduw __builtin_vec_vaduw
+#define __builtin_vec_vaduh __builtin_vec_vadu
+#define __builtin_vec_vaduw __builtin_vec_vadu
 #endif
 
 #ifdef _ARCH_PWR10
diff --git a/gcc/config/rs6000/rs6000-builtin-new.def b/gcc/config/rs6000/rs6000-builtin-new.def
index 061470d8198..417fd2a35dd 100644
--- a/gcc/config/rs6000/rs6000-builtin-new.def
+++ b/gcc/config/rs6000/rs6000-builtin-new.def
@@ -203,7 +203,7 @@
   const __ibm128 __builtin_pack_ibm128 (double, double);
     PACK_IF packif {}
 
-  void __builtin_set_fpscr_rn (const int[0,7]);
+  void __builtin_set_fpscr_rn (const int[0,3]);
     SET_FPSCR_RN rs6000_set_fpscr_rn {}
 
   const double __builtin_unpack_ibm128 (__ibm128, const int<1>);
@@ -3186,22 +3186,22 @@
   const unsigned long long __builtin_altivec_vgnb (vuq, const int <2,7>);
     VGNB vgnb {}
 
-  const vuc __builtin_altivec_vinsgubvlx (unsigned char, vuc, unsigned int);
+  const vuc __builtin_altivec_vinsgubvlx (unsigned int, vuc, unsigned int);
     VINSERTGPRBL vinsertgl_v16qi {}
 
-  const vuc __builtin_altivec_vinsgubvrx (unsigned char, vuc, unsigned int);
+  const vuc __builtin_altivec_vinsgubvrx (unsigned int, vuc, unsigned int);
     VINSERTGPRBR vinsertgr_v16qi {}
 
-  const vull __builtin_altivec_vinsgudvlx (unsigned long long, vull, unsigned int);
+  const vull __builtin_altivec_vinsgudvlx (unsigned int, vull, unsigned int);
     VINSERTGPRDL vinsertgl_v2di {}
 
-  const vull __builtin_altivec_vinsgudvrx (unsigned long long, vull, unsigned int);
+  const vull __builtin_altivec_vinsgudvrx (unsigned int, vull, unsigned int);
     VINSERTGPRDR vinsertgr_v2di {}
 
-  const vus __builtin_altivec_vinsguhvlx (unsigned short, vus, unsigned int);
+  const vus __builtin_altivec_vinsguhvlx (unsigned int, vus, unsigned int);
     VINSERTGPRHL vinsertgl_v8hi {}
 
-  const vus __builtin_altivec_vinsguhvrx (unsigned short, vus, unsigned int);
+  const vus __builtin_altivec_vinsguhvrx (unsigned int, vus, unsigned int);
     VINSERTGPRHR vinsertgr_v8hi {}
 
   const vui __builtin_altivec_vinsguwvlx (unsigned int, vui, unsigned int);
diff --git a/gcc/config/rs6000/rs6000-overload.def b/gcc/config/rs6000/rs6000-overload.def
index f9bf995de28..344c78b6a83 100644
--- a/gcc/config/rs6000/rs6000-overload.def
+++ b/gcc/config/rs6000/rs6000-overload.def
@@ -555,7 +555,7 @@
   vuc __builtin_vec_clrl (vuc, unsigned int);
     VCLRLB  VCLRLB_U
 
-[VEC_CLRR, vec_clrr, __builtin_vec_clrr, ARCH_PWR10]
+[VEC_CLRR, vec_clrr, __builtin_vec_clrr, _ARCH_PWR10]
   vsc __builtin_vec_clrr (vsc, unsigned int);
     VCLRRB  VCLRRB_S
   vuc __builtin_vec_clrr (vuc, unsigned int);
@@ -1054,7 +1054,7 @@
 
 [VEC_CNTTZM, vec_cnttzm, __builtin_vec_vctzdm, _ARCH_PWR10]
   vull __builtin_vec_vctzdm (vull, vull);
-    CNTTZDM
+    VCTZDM
 
 [VEC_CNTLZ_LSBB, vec_cntlz_lsbb, __builtin_vec_vclzlsbb, _ARCH_PWR9]
   signed int __builtin_vec_vclzlsbb (vsc);
@@ -1680,7 +1680,7 @@
     XXGENPCVM_V2DI
 
 [VEC_GNB, vec_gnb, __builtin_vec_gnb, _ARCH_PWR10]
-  vull __builtin_vec_gnb (vuq, unsigned char);
+  unsigned long long __builtin_vec_gnb (vuq, const int);
     VGNB
 
 ; There are no actual builtins for vec_insert.  There is special handling for
@@ -2856,25 +2856,25 @@
 
 [VEC_PERMX, vec_permx, __builtin_vec_xxpermx, _ARCH_PWR10]
   vsc __builtin_vec_xxpermx (vsc, vsc, vuc, const int);
-    XXPERMX_V16QI
+    XXPERMX_UV2DI  XXPERMX_VSC
   vuc __builtin_vec_xxpermx (vuc, vuc, vuc, const int);
-    XXPERMX_UV16QI
+    XXPERMX_UV2DI  XXPERMX_VUC
   vss __builtin_vec_xxpermx (vss, vss, vuc, const int);
-    XXPERMX_V8HI
+    XXPERMX_UV2DI  XXPERMX_VSS
   vus __builtin_vec_xxpermx (vus, vus, vuc, const int);
-    XXPERMX_UV8HI
+    XXPERMX_UV2DI  XXPERMX_VUS
   vsi __builtin_vec_xxpermx (vsi, vsi, vuc, const int);
-    XXPERMX_V4SI
+    XXPERMX_UV2DI  XXPERMX_VSI
   vui __builtin_vec_xxpermx (vui, vui, vuc, const int);
-    XXPERMX_UV4SI
+    XXPERMX_UV2DI  XXPERMX_VUI
   vsll __builtin_vec_xxpermx (vsll, vsll, vuc, const int);
-    XXPERMX_V2DI
+    XXPERMX_UV2DI  XXPERMX_VSLL
   vull __builtin_vec_xxpermx (vull, vull, vuc, const int);
-    XXPERMX_UV2DI
+    XXPERMX_UV2DI  XXPERMX_VULL
   vf __builtin_vec_xxpermx (vf, vf, vuc, const int);
-    XXPERMX_V4SF
+    XXPERMX_UV2DI  XXPERMX_VF
   vd __builtin_vec_xxpermx (vd, vd, vuc, const int);
-    XXPERMX_V2DF
+    XXPERMX_UV2DI  XXPERMX_VD
 
 [VEC_PERMXOR, vec_permxor, __builtin_vec_vpermxor]
   vsc __builtin_vec_vpermxor (vsc, vsc, vsc);
@@ -2917,17 +2917,17 @@
     VPOPCNTUD
 
 [VEC_PARITY_LSBB, vec_parity_lsbb, __builtin_vec_vparity_lsbb, _ARCH_PWR9]
-  vsi __builtin_vec_vparity_lsbb (vsi);
+  vui __builtin_vec_vparity_lsbb (vsi);
     VPRTYBW  VPRTYBW_S
-  vsi __builtin_vec_vparity_lsbb (vui);
+  vui __builtin_vec_vparity_lsbb (vui);
     VPRTYBW  VPRTYBW_U
-  vsll __builtin_vec_vparity_lsbb (vsll);
+  vull __builtin_vec_vparity_lsbb (vsll);
     VPRTYBD  VPRTYBD_S
-  vsll __builtin_vec_vparity_lsbb (vull);
+  vull __builtin_vec_vparity_lsbb (vull);
     VPRTYBD  VPRTYBD_U
-  vsq __builtin_vec_vparity_lsbb (vsq);
+  vuq __builtin_vec_vparity_lsbb (vsq);
     VPRTYBQ  VPRTYBQ_S
-  vsq __builtin_vec_vparity_lsbb (vuq);
+  vuq __builtin_vec_vparity_lsbb (vuq);
     VPRTYBQ  VPRTYBQ_U
 
 ; There are no actual builtins for vec_promote.  There is special handling for
diff --git a/gcc/testsuite/gcc.target/powerpc/vadsdub-2.c b/gcc/testsuite/gcc.target/powerpc/vadsdub-2.c
index c3d1bc84ade..53e2d895d46 100644
--- a/gcc/testsuite/gcc.target/powerpc/vadsdub-2.c
+++ b/gcc/testsuite/gcc.target/powerpc/vadsdub-2.c
@@ -15,7 +15,7 @@ doAbsoluteDifferenceUnsigned (__vector unsigned char *p,
   source_1 = *p;
   source_2 = *q;
 
-  uc_result = vec_absdb (source_1, source_2);
+  uc_result = vec_absd (source_1, source_2);
   return uc_result;
 }
 
diff --git a/gcc/testsuite/gcc.target/powerpc/vadsduh-2.c b/gcc/testsuite/gcc.target/powerpc/vadsduh-2.c
index 7f17694cc09..6e28e62c043 100644
--- a/gcc/testsuite/gcc.target/powerpc/vadsduh-2.c
+++ b/gcc/testsuite/gcc.target/powerpc/vadsduh-2.c
@@ -14,7 +14,7 @@ doAbsoluteDifferenceUnsignedMacro (__vector unsigned short *p,
   source_1 = *p;
   source_2 = *q;
 
-  result = vec_absdh (source_1, source_2);
+  result = vec_absd (source_1, source_2);
   return result;
 }
 
diff --git a/gcc/testsuite/gcc.target/powerpc/vadsduw-2.c b/gcc/testsuite/gcc.target/powerpc/vadsduw-2.c
index a330f526c51..0a22ccd9067 100644
--- a/gcc/testsuite/gcc.target/powerpc/vadsduw-2.c
+++ b/gcc/testsuite/gcc.target/powerpc/vadsduw-2.c
@@ -14,7 +14,7 @@ doAbsoluteDifferenceUnsignedMacro (__vector unsigned int *p,
   source_1 = *p;
   source_2 = *q;
 
-  result = vec_absdw (source_1, source_2);
+  result = vec_absd (source_1, source_2);
   return result;
 }


             reply	other threads:[~2021-02-07 18:18 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-07 18:18 William Schmidt [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-02-24  3:59 William Schmidt
2021-02-22 20:27 William Schmidt
2021-02-22 20:27 William Schmidt
2021-02-07 18:18 William Schmidt
2021-02-07 18:18 William Schmidt
2021-02-07 18:18 William Schmidt
2021-02-07 18:18 William Schmidt
2021-02-07 18:18 William Schmidt
2021-02-07 18:18 William Schmidt
2021-02-07 18:18 William Schmidt
2021-02-07 18:18 William Schmidt
2021-02-07 18:17 William Schmidt
2021-02-07 18:17 William Schmidt
2021-02-07 18:17 William Schmidt
2021-02-07 18:16 William Schmidt
2021-02-07 17:48 William Schmidt
2021-02-01  0:34 William Schmidt
2021-01-28 23:21 William Schmidt
2021-01-27 23:01 William Schmidt
2021-01-27 16:07 William Schmidt
2021-01-14 23:07 William Schmidt
2021-01-13 21:47 William Schmidt
2021-01-13 14:58 William Schmidt
2021-01-08 23:09 William Schmidt
2021-01-08 20:42 William Schmidt
2021-01-07 18:23 William Schmidt
2021-01-06 21:07 William Schmidt
2020-12-17 22:25 William Schmidt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210207181826.312393953424@sourceware.org \
    --to=wschmidt@gcc.gnu.org \
    --cc=gcc-cvs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).