aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2012-06-27 14:30:51 -0700
committerRichard Henderson <rth@gcc.gnu.org>2012-06-27 14:30:51 -0700
commit98449720f700d3460a6756f48c4870f3e9a3a6fd (patch)
tree0ff9298f4b499b29ab5996ba2f0360c7401e22d1 /gcc/cfgexpand.c
parentff4d1662c887e1c43fde5d14c7835210d3a37063 (diff)
downloadgcc-98449720f700d3460a6756f48c4870f3e9a3a6fd.zip
gcc-98449720f700d3460a6756f48c4870f3e9a3a6fd.tar.gz
gcc-98449720f700d3460a6756f48c4870f3e9a3a6fd.tar.bz2
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. From-SVN: r189027
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index a8397c6..ad2f667 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -3415,7 +3415,7 @@ expand_debug_expr (tree exp)
case VEC_PERM_EXPR:
return NULL;
- /* Misc codes. */
+ /* Misc codes. */
case ADDR_SPACE_CONVERT_EXPR:
case FIXED_CONVERT_EXPR:
case OBJ_TYPE_REF:
@@ -3466,6 +3466,10 @@ expand_debug_expr (tree exp)
}
return NULL;
+ case MULT_HIGHPART_EXPR:
+ /* ??? Similar to the above. */
+ return NULL;
+
case WIDEN_SUM_EXPR:
case WIDEN_LSHIFT_EXPR:
if (SCALAR_INT_MODE_P (GET_MODE (op0))