From 918ed612a1b2328a11887b7166bc07a9efde130f Mon Sep 17 00:00:00 2001 From: Zdenek Dvorak Date: Mon, 20 May 2002 00:25:49 +0200 Subject: basic_block.h (struct basic_block_def): Added prev_bb and next_bb fields. * basic_block.h (struct basic_block_def): Added prev_bb and next_bb fields. (FOR_BB_BETWEEN, FOR_ALL_BB, FOR_ALL_BB_REVERSE): New macros for traversing basic block chain. (create_basic_block_structure, create_basic_block): Declaration changed. (link_block, unlink_block): Declare. * cfg.c (entry_exit_blocks): Initialize new fields. (link_block, unlink_block): New. (expunge_block_nocompact): Unlink basic block. (dump_flow_info): Print prev_bb/next_bb fields. * cfgbuild.c (find_basic_blocks_1, find_basic_blocks): Modified. * cfgcleanup.c (merge_blocks_move_predecessor_nojumps): Modified. * cfglayout.c (fixup_reorder_chain, cfg_layout_duplicate_bb): Modified. * cfgrtl.c (create_basic_block_structure, create_basic_block, split_block, force_nonfallthru_and_redirect, split_edge): Modified. (verify_flow_info): Check that list agrees with numbering. From-SVN: r53642 --- gcc/cfgcleanup.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gcc/cfgcleanup.c') diff --git a/gcc/cfgcleanup.c b/gcc/cfgcleanup.c index fcf6944..15dbec1 100644 --- a/gcc/cfgcleanup.c +++ b/gcc/cfgcleanup.c @@ -723,6 +723,9 @@ merge_blocks_move_predecessor_nojumps (a, b) a->index = b->index; b->index = index; + unlink_block (a); + link_block (a, b->prev_bb); + /* Now blocks A and B are contiguous. Merge them. */ merge_blocks_nomove (a, b); } -- cgit v1.1