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  <wschm...@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

Reply via email to