diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-06 10:17:23 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-06 10:17:23 +0000 |
commit | fb20d6fadb6929a41e0f2645ba8da6d68c9feff4 (patch) | |
tree | 1a7be85532d6be381af338d07dbdca5f8fd08db0 /gcc/rtl.h | |
parent | e74146c323db69d660738c3fe6276e25c30c708a (diff) | |
download | gcc-fb20d6fadb6929a41e0f2645ba8da6d68c9feff4.tar.gz |
* cfgrtl.c (delete_insn_and_edges, delete_insn_chain_and_edges): New.
* rtl.h (delete_insn_and_edges, delete_insn_chain_and_edges): Declare
* basic-block.h (update_life_info, update_life_info_in_dirty_blocks,
delete_noop_moves): Return indeger.
* flow.c (ndead): New variable.
(propagate_block_delete_insn): Use delete_insn_and_edges; remove
BB argument; update callers.
(propagate_block_delete_libcall): Use delete_insn_chain_and_edges.
(life_analysis): Do not call purge_all_dead_edges.
(update_life_info): Return number of deleted insns; print statistics.
(update_life_info_in_dirty_blocks): likewise.
(delete_noop_moves): Use delete_insn_and_edges; print statistics;
return number of insns deleted.
* cse.c: Include timevar.h
(delete_trivially_dead_insns): Kill preserve_basic_blocks argument;
iterate until stabilizes; print statistics; return number of killed
insns.
* Makefile.in: (cse.o): Add timevar.h dependency
* rtl.h (delete_trivially_dead_insns): New.
* timever.def: Add TV_DELETE_TRIVIALLY_DEAD timer.
* toplev.c (rest_of_compilation): Update callers.
* cfgcleanup.c (try_optimize_cfg): Kill blocks.
(try_optimize_cfg): Do not update liveness.
(cleanup-cfg): Loop until try_optimize_cfg and dead code
removal stabilizes; use delete_trivially_dead_insns.
* cfgrtl.c (verify_flow_info): Sanity check outgoing edges.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50355 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r-- | gcc/rtl.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h index a11bf9b6db0..e8f819c9dd7 100644 --- a/gcc/rtl.h +++ b/gcc/rtl.h @@ -1518,6 +1518,7 @@ extern void remove_node_from_expr_list PARAMS ((rtx, rtx *)); extern int insns_safe_to_move_p PARAMS ((rtx, rtx, rtx *)); extern int loc_mentioned_in_p PARAMS ((rtx *, rtx)); extern rtx find_first_parameter_load PARAMS ((rtx, rtx)); +extern bool keep_with_call_p PARAMS ((rtx)); /* flow.c */ @@ -1792,7 +1793,7 @@ struct cse_basic_block_data; extern int rtx_cost PARAMS ((rtx, enum rtx_code)); extern int address_cost PARAMS ((rtx, enum machine_mode)); -extern void delete_trivially_dead_insns PARAMS ((rtx, int, int)); +extern int delete_trivially_dead_insns PARAMS ((rtx, int)); #ifdef BUFSIZ extern int cse_main PARAMS ((rtx, int, int, FILE *)); #endif @@ -1873,6 +1874,8 @@ extern void renumber_insns PARAMS ((FILE *)); extern void remove_unnecessary_notes PARAMS ((void)); extern rtx delete_insn PARAMS ((rtx)); extern void delete_insn_chain PARAMS ((rtx, rtx)); +extern rtx delete_insn_and_edges PARAMS ((rtx)); +extern void delete_insn_chain_and_edges PARAMS ((rtx, rtx)); /* In combine.c */ extern int combine_instructions PARAMS ((rtx, unsigned int)); |