diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-10-29 11:45:45 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-10-29 11:45:45 +0000 |
commit | 0922c91230e655839f2bc0929c984e36f25f73a2 (patch) | |
tree | 91cc2113797ecc74514f6de4826f7f7c19e0e549 /gcc/flow.c | |
parent | ec8a67ba1478ca1ebbb0a647d58ed80c1b5a6a39 (diff) | |
download | gcc-0922c91230e655839f2bc0929c984e36f25f73a2.tar.gz |
* basic-block.h (purge_all_dead_edges): Add update_life_p argument.
* cfgcleanup.c (merge_blocks): Update the life flag after merging;
fix warning.
* cfgrtl.c (purge_all_dead_edges): Allow updating of liveness.
(life_analysis): call purge_all_dead_edges after deleting noops.
(delete_noop_move): Do not purge CFG.
* toplev.c (rest_of_compilation): Update purge_all_dead_edges call.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46605 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/flow.c')
-rw-r--r-- | gcc/flow.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/flow.c b/gcc/flow.c index a58cf51a045..50e7494e39f 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -456,6 +456,7 @@ life_analysis (f, file, flags) /* Always remove no-op moves. Do this before other processing so that we don't have to keep re-scanning them. */ delete_noop_moves (f); + purge_all_dead_edges (false); /* Some targets can emit simpler epilogues if they know that sp was not ever modified during the function. After reload, of course, @@ -803,8 +804,6 @@ delete_noop_moves (f) PUT_CODE (insn, NOTE); NOTE_LINE_NUMBER (insn) = NOTE_INSN_DELETED; NOTE_SOURCE_FILE (insn) = 0; - if (insn == bb->end) - purge_dead_edges (bb); } } } |