Commit 9dca2ad5 by Jan Hubicka Committed by Jan Hubicka

cfgrtl.c (commit_one_edge_insertion): Only mark BB for splitting.

	* cfgrtl.c (commit_one_edge_insertion): Only mark BB for splitting.
	(commit_edge_insertions): Call find_many_sub_basic_blocks

	* reg-stack.c (convert_regs): Cleax aux for blocks.

From-SVN: r63216
parent 64465d27
Fri Feb 21 11:05:44 CET 2003 Jan Hubicka <jh@suse.cz>
* cfgrtl.c (commit_one_edge_insertion): Only mark BB for splitting.
(commit_edge_insertions): Call find_many_sub_basic_blocks
* reg-stack.c (convert_regs): Cleax aux for blocks.
Fri Feb 21 10:29:52 CET 2003 Jan Hubicka <jh@suse.cz> Fri Feb 21 10:29:52 CET 2003 Jan Hubicka <jh@suse.cz>
* toplev.c (parse_options_and_default_flags): Undo accidental commit. * toplev.c (parse_options_and_default_flags): Undo accidental commit.
......
...@@ -1449,7 +1449,8 @@ commit_one_edge_insertion (e, watch_calls) ...@@ -1449,7 +1449,8 @@ commit_one_edge_insertion (e, watch_calls)
else if (GET_CODE (last) == JUMP_INSN) else if (GET_CODE (last) == JUMP_INSN)
abort (); abort ();
find_sub_basic_blocks (bb); /* Mark the basic block for find_sub_basic_blocks. */
bb->aux = &bb->aux;
} }
/* Update the CFG for all queued instructions. */ /* Update the CFG for all queued instructions. */
...@@ -1458,6 +1459,7 @@ void ...@@ -1458,6 +1459,7 @@ void
commit_edge_insertions () commit_edge_insertions ()
{ {
basic_block bb; basic_block bb;
sbitmap blocks;
#ifdef ENABLE_CHECKING #ifdef ENABLE_CHECKING
verify_flow_info (); verify_flow_info ();
...@@ -1474,6 +1476,21 @@ commit_edge_insertions () ...@@ -1474,6 +1476,21 @@ commit_edge_insertions ()
commit_one_edge_insertion (e, false); commit_one_edge_insertion (e, false);
} }
} }
blocks = sbitmap_alloc (last_basic_block);
sbitmap_zero (blocks);
FOR_EACH_BB (bb)
if (bb->aux)
{
SET_BIT (blocks, bb->index);
/* Check for forgotten bb->aux values before commit_edge_insertions
call. */
if (bb->aux != &bb->aux)
abort ();
bb->aux = NULL;
}
find_many_sub_basic_blocks (blocks);
sbitmap_free (blocks);
} }
/* Update the CFG for all queued instructions, taking special care of inserting /* Update the CFG for all queued instructions, taking special care of inserting
......
...@@ -2922,6 +2922,7 @@ convert_regs (file) ...@@ -2922,6 +2922,7 @@ convert_regs (file)
inserted |= convert_regs_2 (file, b); inserted |= convert_regs_2 (file, b);
} }
} }
clear_aux_for_blocks ();
fixup_abnormal_edges (); fixup_abnormal_edges ();
if (inserted) if (inserted)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment