diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-07-24 23:42:40 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-07-24 23:42:40 +0000 |
commit | 2029706725556f2b0676b40a73a36f2bcce61877 (patch) | |
tree | d1ee1391800621b2b6ec28beb4ce0ea486728f56 /gcc/toplev.c | |
parent | 0d23ae5319074872ed79482237dbf64ee7275e9a (diff) | |
download | gcc-2029706725556f2b0676b40a73a36f2bcce61877.tar.gz |
* flow.c (try_simplify_condjump): Avoid duplicated edges.
(verify_flow_info): Check for duplicated edges; clarify
error reporting.
* flow.c (block_label): Update basic_block_for_insn.
(commit_edge_insertions): Call compute_bb_for_insn.
* flow.c (purge_dead_edges): Handle conditional jumps and conditional
returns too.
* flow.c (redirect_edge_and_branch,
try_optimize_cfg): Use redirect_edge_succ_nodup
(redirect_edge_succ_nodup): New.
* basic_block.h (redirect_edge_succ_nodup): Declare.
* toplev.c (rest_of_compilation): Rebuild CFG before cfg_cleanup
after gcse.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44320 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r-- | gcc/toplev.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c index a7bd5e36daf..02bb24ab6a7 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -3060,6 +3060,8 @@ rest_of_compilation (decl) tem = tem2 = 0; timevar_push (TV_JUMP); rebuild_jump_labels (insns); + delete_trivially_dead_insns (insns, max_reg_num (), 0); + find_basic_blocks (insns, max_reg_num (), rtl_dump_file); cleanup_cfg (CLEANUP_EXPENSIVE); timevar_pop (TV_JUMP); |