From 3328fbb7d159cce61987d8ad4373aa2b95370291 Mon Sep 17 00:00:00 2001 From: Sandra Loosemore Date: Sun, 18 Feb 2007 23:12:49 -0500 Subject: [PATCH] re PR middle-end/30833 (ICE with -fdump-tree-all) 2007-02-18 Sandra Loosemore PR middle-end/30833 * tree-dump.c (dequeue_and_dump): Add tcc_vl_exp case missed during CALL_EXPR representation conversion. * tree-ssa-propagate.c (set_rhs): Likewise. From-SVN: r122122 --- gcc/ChangeLog | 7 +++++++ gcc/tree-dump.c | 1 + gcc/tree-ssa-propagate.c | 11 ++++++++++- 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ed89bac7c19..36a386a7114 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2007-02-18 Sandra Loosemore + + PR middle-end/30833 + * tree-dump.c (dequeue_and_dump): Add tcc_vl_exp case missed + during CALL_EXPR representation conversion. + * tree-ssa-propagate.c (set_rhs): Likewise. + 2007-02-19 Alexandre Oliva * tree-sra.c (sra_build_assignment): Disable assertion checking diff --git a/gcc/tree-dump.c b/gcc/tree-dump.c index 73edcc891cf..b005c078592 100644 --- a/gcc/tree-dump.c +++ b/gcc/tree-dump.c @@ -319,6 +319,7 @@ dequeue_and_dump (dump_info_p di) case tcc_expression: case tcc_reference: case tcc_statement: + case tcc_vl_exp: /* These nodes are handled explicitly below. */ break; diff --git a/gcc/tree-ssa-propagate.c b/gcc/tree-ssa-propagate.c index 040d972cf4f..1bfb56c6eae 100644 --- a/gcc/tree-ssa-propagate.c +++ b/gcc/tree-ssa-propagate.c @@ -615,7 +615,6 @@ set_rhs (tree *stmt_p, tree expr) return false; break; - case CALL_EXPR: case EXC_PTR_EXPR: case FILTER_EXPR: break; @@ -625,6 +624,16 @@ set_rhs (tree *stmt_p, tree expr) } break; + case tcc_vl_exp: + switch (code) + { + case CALL_EXPR: + break; + default: + return false; + } + break; + case tcc_exceptional: switch (code) { -- 2.30.2