diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-06-27 21:30:51 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-06-27 21:30:51 +0000 |
commit | 9650487569f6f3bbe09e40d3426e719cc5a2727f (patch) | |
tree | 0ff9298f4b499b29ab5996ba2f0360c7401e22d1 /gcc/expr.c | |
parent | d6187fdee25ed0c6cd33395912483162295c50ed (diff) | |
download | ppe42-gcc-9650487569f6f3bbe09e40d3426e719cc5a2727f.tar.gz ppe42-gcc-9650487569f6f3bbe09e40d3426e719cc5a2727f.zip |
Add MULT_HIGHPART_EXPR
* tree.def (MULT_HIGHPART_EXPR): New.
* cfgexpand.c (expand_debug_expr): Ignore it.
* expr.c (expand_expr_real_2): Handle it.
* fold-const.c (int_const_binop_1): Likewise.
* optabs.c (optab_for_tree_code): Likewise.
* tree-cfg.c (verify_gimple_assign_binary): Likewise.
* tree-inline.c (estimate_operator_cost): Likewise.
* tree-pretty-print.c (dump_generic_node): Likewise.
(op_code_prio, op_symbol_code): Likewise.
* tree.c (commutative_tree_code): Likewise. Also handle
WIDEN_MULT_EXPR, VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189027 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/expr.c b/gcc/expr.c index cad5b10b6b0..5295da2149c 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -8551,6 +8551,7 @@ expand_expr_real_2 (sepops ops, rtx target, enum machine_mode tmode, return expand_divmod (0, code, mode, op0, op1, target, unsignedp); case RDIV_EXPR: + case MULT_HIGHPART_EXPR: goto binop; case TRUNC_MOD_EXPR: |