diff options
author | Steven Bosscher <stevenb@suse.de> | 2005-04-12 21:33:53 +0000 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2005-04-12 21:33:53 +0000 |
commit | 997de8ed6b50b6e24573e6bf562f2845b1660088 (patch) | |
tree | 172b7b8923ca5862deb02ac22abcd4d3155f0d6d /gcc/cfglayout.c | |
parent | fee978121c61126f7ef22bfb4cb31f04b2430600 (diff) | |
download | gcc-997de8ed6b50b6e24573e6bf562f2845b1660088.zip gcc-997de8ed6b50b6e24573e6bf562f2845b1660088.tar.gz gcc-997de8ed6b50b6e24573e6bf562f2845b1660088.tar.bz2 |
Makefile.in: Add function.h to BASIC_BLOCK_H.
* Makefile.in: Add function.h to BASIC_BLOCK_H. Remove all
references to gt-tree-cfg.h.
* basic-block.h (struct basic_block_def): Don't skip rbi
for garbage collection.
(struct reorder_block_def): Make GTY-able.
(struct control_flow_graph): New structure.
(n_edges, n_basic_blocks, last_basic_block, basic_block_info,
BASIC_BLOCK, EXIT_BLOCK_PTR, ENTRY_BLOCK_PTR): No longer vars,
but instead defines to the control_flow_graph for cfun.
(label_to_block_map): New define, points to the label map of
the control_flow_graph for cfun.
(n_edges_for_function, n_basic_blocks_for_function,
last_basic_block_for_function, basic_block_info_for_function,
EXIT_BLOCK_PTR_FOR_FUNCTION, ENTRY_BLOCK_PTR_FOR_FUNCTION,
basic_block_info_for_function, label_to_block_map_for_function):
Counterparts for the above, taking a struct function as an extra
argument.
(alloc_rbi_pool, free_rbi_pool): Remove prototypes.
* cfg.c: (n_edges, n_basic_blocks, last_basic_block,
basic_block_info, ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR): Remove.
(alloc_rbi_pool, free_rbi_pool): Remove.
(initialize_bb_rbi): Use ggc_alloc_cleared instead of pool_alloc.
* cfglayout.c: (cfg_layout_initialize): Don't allocate the rbi pool
here...
(cfg_layout_finalize) ... and don't free it here.
* cfgrtl.c (cfg_layout_delete_block): Zero out rbi so it gets
garbage collected.
* flow.c (free_basic_block_vars): Set label_to_block_map and
n_edges to zero too.
* function.h (struct function): Add cfg field.
* function.c (allocate_struct_function): Allocate the cfg.
* tree-cfg.c (label_to_block_map): Remove.
(build_tree_cfg): Don't allocate the rbi pool here...
(delete_tree_cfg_annotations): ...and don't free it here.
Also don't nullify label_to_block_map for cfun.
Co-Authored-By: Jan Hubicka <jh@suse.cz>
Co-Authored-By: Stuart Hastings <stuart@apple.com>
From-SVN: r98048
Diffstat (limited to 'gcc/cfglayout.c')
-rw-r--r-- | gcc/cfglayout.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/gcc/cfglayout.c b/gcc/cfglayout.c index 22c93f1..d71f011 100644 --- a/gcc/cfglayout.c +++ b/gcc/cfglayout.c @@ -1097,10 +1097,6 @@ cfg_layout_initialize (unsigned int flags) { basic_block bb; - /* Our algorithm depends on fact that there are no dead jumptables - around the code. */ - alloc_rbi_pool (); - FOR_BB_BETWEEN (bb, ENTRY_BLOCK_PTR, NULL, next_bb) initialize_bb_rbi (bb); @@ -1162,8 +1158,6 @@ cfg_layout_finalize (void) #ifdef ENABLE_CHECKING verify_insn_chain (); #endif - - free_rbi_pool (); FOR_BB_BETWEEN (bb, ENTRY_BLOCK_PTR, NULL, next_bb) bb->rbi = NULL; |