diff options
author | Daniel Berlin <dberlin@dberlin.org> | 2005-07-17 22:28:19 +0000 |
---|---|---|
committer | Daniel Berlin <dberlin@gcc.gnu.org> | 2005-07-17 22:28:19 +0000 |
commit | c625053b718d8c9fe3f7875ad43abcb434961e36 (patch) | |
tree | 54e9301f986d11695243e3dad31225b8e587a437 | |
parent | 4d0839ffa09e52ebf5078fb9c1e0be073932de32 (diff) | |
download | gcc-c625053b718d8c9fe3f7875ad43abcb434961e36.zip gcc-c625053b718d8c9fe3f7875ad43abcb434961e36.tar.gz gcc-c625053b718d8c9fe3f7875ad43abcb434961e36.tar.bz2 |
re PR tree-optimization/22531 (ICE in mark_sym_for_renaming while compiling dwarf2out.c)
2005-07-17 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/22531
* tree-ssa-pre.c (do_eustores): Make sure LHS is a decl for the
moment.
From-SVN: r102119
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr22531.c | 7 | ||||
-rw-r--r-- | gcc/tree-ssa-pre.c | 1 |
3 files changed, 14 insertions, 0 deletions
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 <dberlin@dberlin.org> + 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 <dberlin@dberlin.org> + * 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)) { |