diff options
| author | rakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-09-02 09:04:45 +0000 |
|---|---|---|
| committer | rakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-09-02 09:04:45 +0000 |
| commit | 3f9ee09bb6be862877da4abe16f8dc234cd932e1 (patch) | |
| tree | 10236ee46b4efd9dc1aaaac43b3eeb7e281af3ba | |
| parent | 7263538cfcd0dede0932f0b3d8ffde2a4c64f533 (diff) | |
| download | ppe42-gcc-3f9ee09bb6be862877da4abe16f8dc234cd932e1.tar.gz ppe42-gcc-3f9ee09bb6be862877da4abe16f8dc234cd932e1.zip | |
PR tree-optimization/23626
* tree-cfg.c (replace_uses_by): Clean up eh info.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103766 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/tree-cfg.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4437e82e919..44b66fbc14b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-09-02 Zdenek Dvorak <dvorakz@suse.cz> + + PR tree-optimization/23626 + * tree-cfg.c (replace_uses_by): Clean up eh info. + 2005-09-01 DJ Delorie <dj@redhat.com> * config/m32c/m32c.c (m32c_valid_pointer_mode): Remove stray debug diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 7a0bf1b9102..df97058afe2 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -1273,6 +1273,10 @@ replace_uses_by (tree name, tree val) if (TREE_CODE (rhs) == ADDR_EXPR) recompute_tree_invarant_for_addr_expr (rhs); + /* If the statement could throw and now cannot, we need to prune cfg. */ + if (maybe_clean_or_replace_eh_stmt (stmt, stmt)) + tree_purge_dead_eh_edges (bb_for_stmt (stmt)); + mark_new_vars_to_rename (stmt); } |

