From: Diego Novillo Date: Fri, 22 Jun 2001 22:20:42 +0000 (+0000) Subject: basic-block.h (dump_edge_info): Declare. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=316dcdf6830c4b8c662035fce49096f9ac81ee24;p=platform%2Fupstream%2Fgcc.git basic-block.h (dump_edge_info): Declare. 2001-06-22 Diego Novillo * basic-block.h (dump_edge_info): Declare. (clear_edges): Declare. (mark_critical_edges): Declare. * flow.c (dump_edge_info): Remove static declaration. (clear_edges): Ditto. (mark_critical_edges): Ditto. (free_basic_block_vars): Only clear edges and free basic block array if basic_block_info is not NULL. * ssa.c (compute_dominance_frontiers): Remove static declaration. * ssa.h (compute_dominance_frontiers): Declare. From-SVN: r43518 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 323b21b..057efe4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,16 @@ +2001-06-22 Diego Novillo + + * basic-block.h (dump_edge_info): Declare. + (clear_edges): Declare. + (mark_critical_edges): Declare. + * flow.c (dump_edge_info): Remove static declaration. + (clear_edges): Ditto. + (mark_critical_edges): Ditto. + (free_basic_block_vars): Only clear edges and free basic block + array if basic_block_info is not NULL. + * ssa.c (compute_dominance_frontiers): Remove static declaration. + * ssa.h (compute_dominance_frontiers): Declare. + 2001-06-22 Toshiyasu Morita (toshiyasu.morita@hsa.hitachi.com) * predict.c: (expected_value_to_br_prob): Check for const_true_rtx diff --git a/gcc/basic-block.h b/gcc/basic-block.h index c41ee32..515d222 100644 --- a/gcc/basic-block.h +++ b/gcc/basic-block.h @@ -290,6 +290,9 @@ extern int flow_delete_block PARAMS ((basic_block)); extern void merge_blocks_nomove PARAMS ((basic_block, basic_block)); extern void tidy_fallthru_edge PARAMS ((edge, basic_block, basic_block)); +extern void dump_edge_info PARAMS ((FILE *, edge, int)); +extern void clear_edges PARAMS ((void)); +extern void mark_critical_edges PARAMS ((void)); /* Structure to hold information for each natural loop. */ struct loop diff --git a/gcc/flow.c b/gcc/flow.c index b3d4327..2d7ee80 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -364,12 +364,10 @@ typedef struct depth_first_search_dsS *depth_first_search_ds; static int count_basic_blocks PARAMS ((rtx)); static void find_basic_blocks_1 PARAMS ((rtx)); static rtx find_label_refs PARAMS ((rtx, rtx)); -static void clear_edges PARAMS ((void)); static void make_edges PARAMS ((rtx)); static void make_label_edge PARAMS ((sbitmap *, basic_block, rtx, int)); static void make_eh_edge PARAMS ((sbitmap *, basic_block, rtx)); -static void mark_critical_edges PARAMS ((void)); static void commit_one_edge_insertion PARAMS ((edge)); @@ -434,7 +432,6 @@ static void mark_used_regs PARAMS ((struct propagate_block_info *, rtx, rtx, rtx)); void dump_flow_info PARAMS ((FILE *)); void debug_flow_info PARAMS ((void)); -static void dump_edge_info PARAMS ((FILE *, edge, int)); static void print_rtl_and_abort_fcn PARAMS ((const char *, int, const char *)) ATTRIBUTE_NORETURN; @@ -1118,7 +1115,7 @@ compute_bb_for_insn (max) /* Free the memory associated with the edge structures. */ -static void +void clear_edges () { int i; @@ -1432,7 +1429,7 @@ make_eh_edge (edge_cache, src, insn) /* Identify critical edges and set the bits appropriately. */ -static void +void mark_critical_edges () { int i, n = n_basic_blocks; @@ -3094,8 +3091,11 @@ free_basic_block_vars (keep_head_end_p) if (! keep_head_end_p) { - clear_edges (); - VARRAY_FREE (basic_block_info); + if (basic_block_info) + { + clear_edges (); + VARRAY_FREE (basic_block_info); + } n_basic_blocks = 0; ENTRY_BLOCK_PTR->aux = NULL; @@ -6390,7 +6390,7 @@ debug_flow_info () dump_flow_info (stderr); } -static void +void dump_edge_info (file, e, do_succ) FILE *file; edge e; diff --git a/gcc/ssa.c b/gcc/ssa.c index 3bb1dff..97e259b 100644 --- a/gcc/ssa.c +++ b/gcc/ssa.c @@ -166,8 +166,6 @@ static rtx first_insn_after_basic_block_note PARAMS ((basic_block)); static void compute_dominance_frontiers_1 PARAMS ((sbitmap *frontiers, int *idom, int bb, sbitmap done)); -static void compute_dominance_frontiers - PARAMS ((sbitmap *frontiers, int *idom)); static void find_evaluations_1 PARAMS ((rtx dest, rtx set, void *data)); static void find_evaluations @@ -558,7 +556,7 @@ compute_dominance_frontiers_1 (frontiers, idom, bb, done) } } -static void +void compute_dominance_frontiers (frontiers, idom) sbitmap *frontiers; int *idom; diff --git a/gcc/ssa.h b/gcc/ssa.h index 5095319..5eb9785 100644 --- a/gcc/ssa.h +++ b/gcc/ssa.h @@ -27,6 +27,7 @@ typedef int (*successor_phi_fn) PARAMS ((rtx, int, int, void *)); extern int for_each_successor_phi PARAMS ((basic_block bb, successor_phi_fn, void *)); +void compute_dominance_frontiers PARAMS ((sbitmap *frontiers, int *idom)); extern int remove_phi_alternative PARAMS ((rtx, basic_block));