sched-rgn.c (haifa_edge, [...]): Remove.
authorUlrich Weigand <uweigand@de.ibm.com>
Wed, 29 Sep 2004 01:28:22 +0000 (01:28 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Wed, 29 Sep 2004 01:28:22 +0000 (01:28 +0000)
commitdcda848050bcb1460b394a99fdb6f4e4e4fd7cdd
treef7a5b00f340f9de00236110cadf124f2319118a3
parentf7deb4e9f61414874d458602adb9cba9a00233e4
sched-rgn.c (haifa_edge, [...]): Remove.

* sched-rgn.c (haifa_edge, edge_table, NEXT_IN, NEXT_OUT, FROM_BLOCK,
TO_BLOCK, nr_edges, in_edges, out_edges, IN_EDGES, OUT_EDGES,
build_control_flow, new_edge): Remove.
(schedule_insns): Remove edge_table/in_edges/out_edges cleanup.
(bitlst, bitlst_table_last, bitlst_table): Remove.
(bblst): Store basic_block pointer instead of block index.
(bblst_table): Likewise.
(edgelst): Store edge pointer instead of edge index.
(edgelst_table, edgelst_last): New variables.
(extract_bitlst): Rename to ...
(extract_edgelst): ... this.  Return edge pointers, not indices.
(split_edges): Update call.
(rgn_edges): Store edge pointers instead of indices.
(edge_to_bit): Remove.
(EDGE_TO_BIT): Store per-region edge index in edge->aux.
(SET_EDGE_TO_BIT): New macro.
(is_cfg_nonregular): Check for simple cases of unreachable blocks.
(find_rgns): Remove edge_list parameter.  Traverse standard CFG
data structures instead of haifa_edge et al.  Use edge pointers
instead of edge indices everywhere.
(compute_dom_prob_ps): Use standard CFG data structures.  Account
for exit edges.
(compute_trg_info): Likewise.
(propagate_deps): Likewise.
(debug_candidate): Account for bblst data structure change.
(check_live_1, update_live_1, is_pfree): Likewise.
(IS_REACHABLE): Use standard CFG data structures.
(init_ready_list): Update bblst_table/edgelst_table allocation.
(schedule_region): Update alloc/cleanup code to data structure
changes.  Use edge->aux to store per-region edge index.
(init_regions): No longer call build_control_flow.  Do not
create edge list any more.

From-SVN: r88264
gcc/ChangeLog
gcc/sched-rgn.c