diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-03-24 23:21:27 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-03-24 23:21:27 +0000 |
commit | 2f067d147ab537bf949c89cdb977095db38ff511 (patch) | |
tree | a457495224966ac0267a09cd906d32e128d74d47 /gcc/tree-ssa-dom.c | |
parent | aa3f4759f7f01c9d10d3f5cdef54105270d4b50c (diff) | |
download | gcc-2f067d147ab537bf949c89cdb977095db38ff511.tar.gz |
* tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt
directly. Call mark_new_vars_to_rename slightly earlier.
* gcc.c-torture/pr26840.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112365 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-dom.c')
-rw-r--r-- | gcc/tree-ssa-dom.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/tree-ssa-dom.c b/gcc/tree-ssa-dom.c index 9df59e9dc52..db9f873669e 100644 --- a/gcc/tree-ssa-dom.c +++ b/gcc/tree-ssa-dom.c @@ -2160,7 +2160,11 @@ propagate_rhs_into_lhs (tree stmt, tree lhs, tree rhs, bitmap interesting_names) collapse control statements. */ propagate_value (use_p, rhs); fold_stmt_inplace (use_stmt); - update_stmt (use_stmt); + + /* Sometimes propagation can expose new operands to the + renamer. Note this will call update_stmt at the + appropriate time. */ + mark_new_vars_to_rename (use_stmt); /* Dump details. */ if (dump_file && (dump_flags & TDF_DETAILS)) @@ -2170,10 +2174,6 @@ propagate_rhs_into_lhs (tree stmt, tree lhs, tree rhs, bitmap interesting_names) fprintf (dump_file, "\n"); } - /* Sometimes propagation can expose new operands to the - renamer. */ - mark_new_vars_to_rename (use_stmt); - /* If we replaced a variable index with a constant, then we would need to update the invariant flag for ADDR_EXPRs. */ if (TREE_CODE (use_stmt) == MODIFY_EXPR |