aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Schmidt <wschmidt@linux.ibm.com>2020-08-28 20:05:58 -0500
committerBill Schmidt <wschmidt@linux.ibm.com>2020-08-28 20:05:58 -0500
commitcd0233527af11f678ab9635bfd2a9545d431d48f (patch)
treeb2dacadc77cf9e74e0d2c8e3188323d431bc8639
parent8f7ea26ae325f796c4873089acdfd2b1f1d2520f (diff)
downloadgcc-cd0233527af11f678ab9635bfd2a9545d431d48f.zip
gcc-cd0233527af11f678ab9635bfd2a9545d431d48f.tar.gz
gcc-cd0233527af11f678ab9635bfd2a9545d431d48f.tar.bz2
rs6000: Remove ALTIVEC_BUILTIN_MASK_FOR_STORE
It turns out that the target hook that this is supposed to satisfy disappeared in 2004. Probably time to retire it. 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.
-rw-r--r--gcc/config/rs6000/rs6000-builtin.def1
-rw-r--r--gcc/config/rs6000/rs6000-call.c12
2 files changed, 3 insertions, 10 deletions
diff --git a/gcc/config/rs6000/rs6000-builtin.def b/gcc/config/rs6000/rs6000-builtin.def
index aa1b945..e91a48d 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 0e9dc77..2638876 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