aboutsummaryrefslogtreecommitdiff
path: root/gcc/optabs.c
diff options
context:
space:
mode:
authorAlan Lawrence <alan.lawrence@arm.com>2014-11-13 16:35:06 +0000
committerAlan Lawrence <alalaw01@gcc.gnu.org>2014-11-13 16:35:06 +0000
commit1c4188463c7e81c3345a7d4e87eccb5b5a168c44 (patch)
tree7ade3a50e40a210abad179d58eabb4cb20bd0176 /gcc/optabs.c
parentcf7aa6a3b79ac25df266aa4fcfe6c059243602aa (diff)
downloadgcc-1c4188463c7e81c3345a7d4e87eccb5b5a168c44.zip
gcc-1c4188463c7e81c3345a7d4e87eccb5b5a168c44.tar.gz
gcc-1c4188463c7e81c3345a7d4e87eccb5b5a168c44.tar.bz2
Remove VEC_RSHIFT_EXPR tree code, now unused
* fold-const.c (const_binop): Remove code handling VEC_RSHIFT_EXPR. * tree-cfg.c (verify_gimple_assign_binary): Likewise. * tree-inline.c (estimate_operator_cost): Likewise. * tree-pretty-print.c (dump_generic_node, op_code_prio, op_symbol_code): Likewise. * tree-vect-generic.c (expand_vector_operations_1): Remove assertion against VEC_RSHIFT_EXPR. * optabs.h (expand_vec_shift_expr): Remove. * optabs.c (optab_for_tree_code): Remove case VEC_RSHIFT_EXPR. (expand_vec_shift_expr): Remove. * tree.def (VEC_RSHIFT_EXPR): Remove From-SVN: r217510
Diffstat (limited to 'gcc/optabs.c')
-rw-r--r--gcc/optabs.c31
1 files changed, 0 insertions, 31 deletions
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 4ddd9cc..f6548c3 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -520,9 +520,6 @@ optab_for_tree_code (enum tree_code code, const_tree type,
case REDUC_PLUS_EXPR:
return reduc_plus_scal_optab;
- case VEC_RSHIFT_EXPR:
- return vec_shr_optab;
-
case VEC_WIDEN_MULT_HI_EXPR:
return TYPE_UNSIGNED (type) ?
vec_widen_umult_hi_optab : vec_widen_smult_hi_optab;
@@ -771,34 +768,6 @@ force_expand_binop (machine_mode mode, optab binoptab,
return true;
}
-/* Generate insns for VEC_RSHIFT_EXPR. */
-
-rtx
-expand_vec_shift_expr (sepops ops, rtx target)
-{
- struct expand_operand eops[3];
- enum insn_code icode;
- rtx rtx_op1, rtx_op2;
- machine_mode mode = TYPE_MODE (ops->type);
- tree vec_oprnd = ops->op0;
- tree shift_oprnd = ops->op1;
-
- gcc_assert (ops->code == VEC_RSHIFT_EXPR);
-
- icode = optab_handler (vec_shr_optab, mode);
- gcc_assert (icode != CODE_FOR_nothing);
-
- rtx_op1 = expand_normal (vec_oprnd);
- rtx_op2 = expand_normal (shift_oprnd);
-
- create_output_operand (&eops[0], target, mode);
- create_input_operand (&eops[1], rtx_op1, GET_MODE (rtx_op1));
- create_convert_operand_from_type (&eops[2], rtx_op2, TREE_TYPE (shift_oprnd));
- expand_insn (icode, 3, eops);
-
- return eops[0].value;
-}
-
/* Create a new vector value in VMODE with all elements set to OP. The
mode of OP must be the element mode of VMODE. If OP is a constant,
then the return value will be a constant. */