diff options
author | rakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-04-23 23:15:54 +0000 |
---|---|---|
committer | rakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-04-23 23:15:54 +0000 |
commit | c23dad79cc8aca9ce5f7d916a84f73905c326820 (patch) | |
tree | 916f5481a2d49b54e7ca5e6359ffeb9231fdbe30 /gcc/basic-block.h | |
parent | 401ed9a810e9f4a96a2be6caf742cd6776498a8b (diff) | |
download | gcc-c23dad79cc8aca9ce5f7d916a84f73905c326820.tar.gz |
* tree-phinodes.c (reserve_phi_args_for_new_edge, remove_phi_node):
Use phi_nodes_ptr.
(create_phi_node): Use set_phi_nodes.
* omp-low.c (expand_omp_parallel): Use bb_stmt_list.
* tree-if-conv.c (process_phi_nodes): Use set_phi_nodes.
(combine_blocks): Use bb_stmt_list and set_bb_stmt_list.
* tree-flow-inline.h (phi_nodes, set_phi_nodes,
(bsi_start, bsi_last): Use bb_stmt_list.
(phi_nodes_ptr, bb_stmt_list, set_bb_stmt_list): New functions.
* cfgexpand.c (expand_gimple_basic_block): Use bb_stmt_list.
Traverse the statements using tsi iterator.
* basic-block.h (struct basic_block_def): Fields stmt_list
and phi_nodes moved to ...
(struct tree_bb_info): ... new structure.
* tree-cfg.c (create_bb): Allocate il.tree. Use set_bb_stmt_list.
(tree_merge_blocks): Use bb_stmt_list and set_bb_stmt_list.
(remove_bb): Handle blocks with NULL stmt list. Clear il.tree field.
(tree_verify_flow_info): Verify that il.tree is not set for
entry and exit block.
(tree_split_block): Use set_bb_stmt_list.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124086 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/basic-block.h')
-rw-r--r-- | gcc/basic-block.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/gcc/basic-block.h b/gcc/basic-block.h index 34ef10476c9..bfdec0e550e 100644 --- a/gcc/basic-block.h +++ b/gcc/basic-block.h @@ -213,9 +213,6 @@ struct rtl_bb_info; /* Basic block information indexed by block number. */ struct basic_block_def GTY((chain_next ("%h.next_bb"), chain_prev ("%h.prev_bb"))) { - /* Pointers to the first and last trees of the block. */ - tree stmt_list; - /* The edges into and out of the block. */ VEC(edge,gc) *preds; VEC(edge,gc) *succs; @@ -234,12 +231,10 @@ struct basic_block_def GTY((chain_next ("%h.next_bb"), chain_prev ("%h.prev_bb") struct basic_block_def *next_bb; union basic_block_il_dependent { + struct tree_bb_info * GTY ((tag ("0"))) tree; struct rtl_bb_info * GTY ((tag ("1"))) rtl; } GTY ((desc ("((%1.flags & BB_RTL) != 0)"))) il; - /* Chain of PHI nodes for this block. */ - tree phi_nodes; - /* Expected number of executions: calculated in profile.c. */ gcov_type count; @@ -277,6 +272,15 @@ struct rtl_bb_info GTY(()) int visited; }; +struct tree_bb_info GTY(()) +{ + /* Pointers to the first and last trees of the block. */ + tree stmt_list; + + /* Chain of PHI nodes for this block. */ + tree phi_nodes; +}; + typedef struct basic_block_def *basic_block; DEF_VEC_P(basic_block); |