From b8c4f9a4ce7eafd29a90298d51cd50294fe8d8a7 Mon Sep 17 00:00:00 2001 From: Zdenek Dvorak Date: Fri, 2 Sep 2005 11:04:45 +0200 Subject: [PATCH] re PR tree-optimization/23626 (ICE after cunrolling) PR tree-optimization/23626 * tree-cfg.c (replace_uses_by): Clean up eh info. From-SVN: r103766 --- gcc/ChangeLog | 5 +++++ gcc/tree-cfg.c | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4437e82..44b66fb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-09-02 Zdenek Dvorak + + PR tree-optimization/23626 + * tree-cfg.c (replace_uses_by): Clean up eh info. + 2005-09-01 DJ Delorie * config/m32c/m32c.c (m32c_valid_pointer_mode): Remove stray debug diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 7a0bf1b..df97058 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); } -- 2.7.4