From 91d014fffae1fcf1eb750d40e622e5b80cd1a4ec Mon Sep 17 00:00:00 2001 From: Peter Bergner Date: Tue, 20 Mar 2018 12:25:09 -0500 Subject: re PR target/83789 (__builtin_altivec_lvx fails for powerpc for altivec-4.c) PR target/83789 * config/rs6000/altivec.md (altivec_lvx__2op): Delete define_insn. (altivec_lvx__1op): Likewise. (altivec_stvx__2op): Likewise. (altivec_stvx__1op): Likewise. (altivec_lvx_): New define_expand. (altivec_stvx_): Likewise. (altivec_lvx__2op_): New define_insn. (altivec_lvx__1op_): Likewise. (altivec_stvx__2op_): Likewise. (altivec_stvx__1op_): Likewise. * config/rs6000/rs6000-p8swap.c (rs6000_gen_stvx): Use new expanders. (rs6000_gen_lvx): Likewise. * config/rs6000/rs6000.c (altivec_expand_lv_builtin): Likewise. (altivec_expand_stv_builtin): Likewise. (altivec_expand_builtin): Likewise. * config/rs6000/vector.md: Likewise. From-SVN: r258688 --- gcc/config/rs6000/vector.md | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) (limited to 'gcc/config/rs6000/vector.md') diff --git a/gcc/config/rs6000/vector.md b/gcc/config/rs6000/vector.md index d27079bf129..082acba8cee 100644 --- a/gcc/config/rs6000/vector.md +++ b/gcc/config/rs6000/vector.md @@ -196,12 +196,7 @@ operands[1] = rs6000_address_for_altivec (operands[1]); rtx and_op = XEXP (operands[1], 0); gcc_assert (GET_CODE (and_op) == AND); - rtx addr = XEXP (and_op, 0); - if (GET_CODE (addr) == PLUS) - emit_insn (gen_altivec_lvx__2op (operands[0], XEXP (addr, 0), - XEXP (addr, 1))); - else - emit_insn (gen_altivec_lvx__1op (operands[0], operands[1])); + emit_insn (gen_altivec_lvx_ (operands[0], operands[1])); DONE; } }) @@ -218,12 +213,7 @@ operands[0] = rs6000_address_for_altivec (operands[0]); rtx and_op = XEXP (operands[0], 0); gcc_assert (GET_CODE (and_op) == AND); - rtx addr = XEXP (and_op, 0); - if (GET_CODE (addr) == PLUS) - emit_insn (gen_altivec_stvx__2op (operands[1], XEXP (addr, 0), - XEXP (addr, 1))); - else - emit_insn (gen_altivec_stvx__1op (operands[1], operands[0])); + emit_insn (gen_altivec_stvx_ (operands[1], operands[0])); DONE; } }) -- cgit v1.2.1