aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2010-11-05 10:00:50 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2010-11-05 10:00:50 +0100
commit0f59b812398ae891259f0bd563ca2a23238408a6 (patch)
treefbd7c6a0a871f00e3113cb593c9a548ba7aa2ec2 /gcc/cfgexpand.c
parentfc36036b04abe3c899d3bf4dba93e89e2a15dd50 (diff)
downloadgcc-0f59b812398ae891259f0bd563ca2a23238408a6.zip
gcc-0f59b812398ae891259f0bd563ca2a23238408a6.tar.gz
gcc-0f59b812398ae891259f0bd563ca2a23238408a6.tar.bz2
re PR debug/46307 (ICE with FMA_EXPR in DEBUG stmts)
PR debug/46307 * tree-ssa-operands.c (get_expr_operands): Handle FMA_EXPR. * tree-pretty-print.c (dump_generic_node): Likewise. (op_code_prio): Likewise. * cfgexpand.c (expand_debug_expr): Likewise. * gcc.dg/pr46307.c: New test. From-SVN: r166351
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index f02a8cd..b302591 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -2360,6 +2360,7 @@ expand_debug_expr (tree exp)
case DOT_PROD_EXPR:
case WIDEN_MULT_PLUS_EXPR:
case WIDEN_MULT_MINUS_EXPR:
+ case FMA_EXPR:
goto ternary;
case TRUTH_ANDIF_EXPR:
@@ -3201,6 +3202,9 @@ expand_debug_expr (tree exp)
}
return NULL;
+ case FMA_EXPR:
+ return gen_rtx_FMA (mode, op0, op1, op2);
+
default:
flag_unsupported:
#ifdef ENABLE_CHECKING