From: Daniel Berlin Date: Sun, 17 Jul 2005 22:28:19 +0000 (+0000) Subject: re PR tree-optimization/22531 (ICE in mark_sym_for_renaming while compiling dwarf2out.c) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c625053b718d8c9fe3f7875ad43abcb434961e36;p=gcc.git re PR tree-optimization/22531 (ICE in mark_sym_for_renaming while compiling dwarf2out.c) 2005-07-17 Daniel Berlin Fix PR tree-optimization/22531 * tree-ssa-pre.c (do_eustores): Make sure LHS is a decl for the moment. From-SVN: r102119 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3cde015f6be..f5896dabcd1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2005-07-17 Daniel Berlin + + Fix PR tree-optimization/22531 + * tree-ssa-pre.c (do_eustores): Make sure LHS is a decl for the + moment. + 2005-07-17 Daniel Berlin * tree-promote-statics.c (pass_promote_statics): Change dump file diff --git a/gcc/testsuite/gcc.c-torture/compile/pr22531.c b/gcc/testsuite/gcc.c-torture/compile/pr22531.c new file mode 100644 index 00000000000..70e2df79fcb --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr22531.c @@ -0,0 +1,7 @@ +typedef struct dw_cfi_oprnd_struct { + unsigned long reg; +} dw_cfa_location; +void def_cfa_1 (void) { + dw_cfa_location loc; + loc.reg = loc.reg; +} diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index 67bc6d4dd58..d83b5e4b126 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -2807,6 +2807,7 @@ do_eustores (void) if (NUM_SSA_OPERANDS (found, SSA_OP_VUSE) != 1 || VUSE_OP (VUSE_OPS (found)) != kill + || !DECL_P (TREE_OPERAND (stmt, 0)) || !operand_equal_p (TREE_OPERAND (found, 1), TREE_OPERAND (stmt, 0), 0)) {