summaryrefslogtreecommitdiff
path: root/gcc/basic-block.h
diff options
context:
space:
mode:
authorKazu Hirata <kazu@cs.umass.edu>2005-05-27 22:06:46 +0000
committerKazu Hirata <kazu@gcc.gnu.org>2005-05-27 22:06:46 +0000
commit4aab792de6d092becf03e1d23f74a1ec2047fc27 (patch)
treee30578252db88291c4c33444ffad40db62dca180 /gcc/basic-block.h
parent8dabce9822f03c6d612f1a14bf67fe83498e0ab4 (diff)
downloadgcc-4aab792de6d092becf03e1d23f74a1ec2047fc27.tar.gz
basic-block.h (basic_block_def): Add phi_nodes and predictions.
* basic-block.h (basic_block_def): Add phi_nodes and predictions. Remove tree_annotations. * predict.c (tree_predicted_by_p, tree_predict_edge, combine_predictions_for_bb): Adjust references to predictions. * tree-cfg.c (init_empty_tree_cfg, create_bb): Don't call create_block_annotation. (create_block_annotation, free_blocks_annotatios, clear_blocks_annotations): Remove. (dump_cfg_stats): Don't print out the memory spent on bb_ann_d. (delete_tree_cfg_annotations): Don't call free_blocks_annotations. * tree-flow-inline.h (bb_ann): Remove. (phi_nodes, set_phi_nodes): Update references to phi_nodes. * tree-flow.h (bb_ann_d): Remove. * tree-if-conv.c (process_phi_nodes): Update a reference to phi_nodes. * tree-phinodes.c (reserve_phi_args_for_new_edge, create_phi_node, remove_phi_node): Likewise. * tree-pretty-print.c (dump_generic_bb_buff): Don't call bb_ann. * tree-ssa-dom.c (threaded_blocks): New. (tree_ssa_dominator_optimize): Initialize, clear, and free threaded_blocks. Update a call to thread_through_all_blocks. (thread_across_edge): Use threaded_blocks instead of setting incoming_edge_threaded. * tree-ssa-threadupdate.c (threaded_through_all_blocks): Take a bitmap of blocks that are threaded through. * tree.h: Move the prototype of threaded_through_blocks to tree-flow.h. From-SVN: r100279
Diffstat (limited to 'gcc/basic-block.h')
-rw-r--r--gcc/basic-block.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/basic-block.h b/gcc/basic-block.h
index 4deeb899755..cedeac5ff50 100644
--- a/gcc/basic-block.h
+++ b/gcc/basic-block.h
@@ -185,6 +185,9 @@ struct loops;
/* Declared in tree-flow.h. */
struct bb_ann_d;
+/* Declared in tree-flow.h. */
+struct edge_prediction;
+
/* A basic block is a sequence of instructions with only entry and
only one exit. If any one of the instructions are executed, they
will all be executed, and in sequence from first to last.
@@ -246,8 +249,11 @@ struct basic_block_def GTY((chain_next ("%h.next_bb"), chain_prev ("%h.prev_bb")
/* The data used by basic block copying and reordering functions. */
struct reorder_block_def * rbi;
- /* Annotations used at the tree level. */
- struct bb_ann_d *tree_annotations;
+ /* Chain of PHI nodes for this block. */
+ tree phi_nodes;
+
+ /* A list of predictions. */
+ struct edge_prediction *predictions;
/* Expected number of executions: calculated in profile.c. */
gcov_type count;