From c625053b718d8c9fe3f7875ad43abcb434961e36 Mon Sep 17 00:00:00 2001 From: Daniel Berlin Date: Sun, 17 Jul 2005 22:28:19 +0000 Subject: 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 --- gcc/ChangeLog | 6 ++++++ gcc/testsuite/gcc.c-torture/compile/pr22531.c | 7 +++++++ gcc/tree-ssa-pre.c | 1 + 3 files changed, 14 insertions(+) create mode 100644 gcc/testsuite/gcc.c-torture/compile/pr22531.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3cde015..f5896da 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 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 name. 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 0000000..70e2df7 --- /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 67bc6d4..d83b5e4 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)) { -- cgit v1.1