summaryrefslogtreecommitdiff
path: root/gcc/flow.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-29 11:45:45 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-29 11:45:45 +0000
commit0922c91230e655839f2bc0929c984e36f25f73a2 (patch)
tree91cc2113797ecc74514f6de4826f7f7c19e0e549 /gcc/flow.c
parentec8a67ba1478ca1ebbb0a647d58ed80c1b5a6a39 (diff)
downloadgcc-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.c3
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);
}
}
}