[PATCH] rs6000: Remove ALTIVEC_BUILTIN_MASK_FOR_STORE

Bill Schmidt wschmidt@linux.ibm.com
Sat Aug 29 01:07:54 GMT 2020


It turns out that the target hook that this is supposed to satisfy
disappeared in 2004.  Probably time to retire it.

Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no
regressions; committed as obvious.

Thanks,
Bill


2020-08-28  Bill Schmidt  <wschmidt@linux.ibm.com>

gcc/
	* config/rs6000/rs6000-builtin.def (MASK_FOR_STORE): Remove.
	* config/rs6000/rs6000-call.c (rs6000_expand_builtin): Remove
	all logic for ALTIVEC_BUILTIN_MASK_FOR_STORE.
---
 gcc/config/rs6000/rs6000-builtin.def |  1 -
 gcc/config/rs6000/rs6000-call.c      | 12 +++---------
 2 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/gcc/config/rs6000/rs6000-builtin.def b/gcc/config/rs6000/rs6000-builtin.def
index aa1b945b063..e91a48ddf5f 100644
--- a/gcc/config/rs6000/rs6000-builtin.def
+++ b/gcc/config/rs6000/rs6000-builtin.def
@@ -1515,7 +1515,6 @@ BU_ALTIVEC_C (STVLXL,		"stvlxl",	    MEM)
 BU_ALTIVEC_C (STVRX,		"stvrx",	    MEM)
 BU_ALTIVEC_C (STVRXL,		"stvrxl",	    MEM)
 BU_ALTIVEC_X (MASK_FOR_LOAD,	"mask_for_load",    MISC)
-BU_ALTIVEC_X (MASK_FOR_STORE,	"mask_for_store",   MISC)
 BU_ALTIVEC_X (VEC_INIT_V4SI,	"vec_init_v4si",    CONST)
 BU_ALTIVEC_X (VEC_INIT_V8HI,	"vec_init_v8hi",    CONST)
 BU_ALTIVEC_X (VEC_INIT_V16QI,	"vec_init_v16qi",   CONST)
diff --git a/gcc/config/rs6000/rs6000-call.c b/gcc/config/rs6000/rs6000-call.c
index 0e9dc77da91..26388762c5f 100644
--- a/gcc/config/rs6000/rs6000-call.c
+++ b/gcc/config/rs6000/rs6000-call.c
@@ -12643,7 +12643,6 @@ rs6000_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED,
       }
 
     case ALTIVEC_BUILTIN_MASK_FOR_LOAD:
-    case ALTIVEC_BUILTIN_MASK_FOR_STORE:
       {
 	int icode2 = (BYTES_BIG_ENDIAN ? (int) CODE_FOR_altivec_lvsr_direct
 		     : (int) CODE_FOR_altivec_lvsl_direct);
@@ -12658,14 +12657,9 @@ rs6000_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED,
 	gcc_assert (POINTER_TYPE_P (TREE_TYPE (arg)));
 	op = expand_expr (arg, NULL_RTX, Pmode, EXPAND_NORMAL);
 	addr = memory_address (mode, op);
-	if (fcode == ALTIVEC_BUILTIN_MASK_FOR_STORE)
-	  op = addr;
-	else
-	  {
-	    /* For the load case need to negate the address.  */
-	    op = gen_reg_rtx (GET_MODE (addr));
-	    emit_insn (gen_rtx_SET (op, gen_rtx_NEG (GET_MODE (addr), addr)));
-	  }
+	/* We need to negate the address.  */
+	op = gen_reg_rtx (GET_MODE (addr));
+	emit_insn (gen_rtx_SET (op, gen_rtx_NEG (GET_MODE (addr), addr)));
 	op = gen_rtx_MEM (mode, op);
 
 	if (target == 0
-- 
2.17.1



More information about the Gcc-patches mailing list