aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-dce.c
diff options
context:
space:
mode:
authorDaniel Berlin <dberlin@dberlin.org>2007-05-28 21:56:51 +0000
committerDaniel Berlin <dberlin@gcc.gnu.org>2007-05-28 21:56:51 +0000
commit3659e0cd912c59970a0521fda398738fe0502ea9 (patch)
tree70c21dc170fdd53fc573cb3528d98da82367df4f /gcc/tree-ssa-dce.c
parent179daa15901d04f09d37df6ce099f92cb4bfcca4 (diff)
downloadgcc-3659e0cd912c59970a0521fda398738fe0502ea9.zip
gcc-3659e0cd912c59970a0521fda398738fe0502ea9.tar.gz
gcc-3659e0cd912c59970a0521fda398738fe0502ea9.tar.bz2
tree-ssa-dce.c (eliminate_unnecessary_stmts): Release LHS SSA name when we remove it from a call.
2007-05-28 Daniel Berlin <dberlin@dberlin.org> * tree-ssa-dce.c (eliminate_unnecessary_stmts): Release LHS SSA name when we remove it from a call. From-SVN: r125147
Diffstat (limited to 'gcc/tree-ssa-dce.c')
-rw-r--r--gcc/tree-ssa-dce.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/tree-ssa-dce.c b/gcc/tree-ssa-dce.c
index 381a3429..a2f80aa 100644
--- a/gcc/tree-ssa-dce.c
+++ b/gcc/tree-ssa-dce.c
@@ -702,6 +702,7 @@ eliminate_unnecessary_stmts (void)
== SSA_NAME)
&& !TEST_BIT (processed, SSA_NAME_VERSION (name)))
{
+ tree oldlhs = GIMPLE_STMT_OPERAND (t, 0);
something_changed = true;
if (dump_file && (dump_flags & TDF_DETAILS))
{
@@ -715,6 +716,7 @@ eliminate_unnecessary_stmts (void)
maybe_clean_or_replace_eh_stmt (t, call);
mark_symbols_for_renaming (call);
pop_stmt_changes (bsi_stmt_ptr (i));
+ release_ssa_name (oldlhs);
}
notice_special_calls (call);
}