cfgrtl.c (commit_edge_insertions): Call find_many_sub_basic_block only when some code has been emitted.

* cfgrtl.c (commit_edge_insertions):  Call
	find_many_sub_basic_block only when some code has been emitted.
	(commit_edge_insertions_watch_calls): Bring into sync with
	commit_edge_insertions

From-SVN: r63248
This commit is contained in:
Jan Hubicka 2003-02-21 23:14:23 +01:00 committed by Jan Hubicka
parent 19df1edfbe
commit 9809a3624d
2 changed files with 39 additions and 2 deletions

View File

@ -1,3 +1,10 @@
Fri Feb 21 23:10:13 CET 2003 Jan Hubicka <jh@suse.cz>
* cfgrtl.c (commit_edge_insertions): Call
find_many_sub_basic_block only when some code has been emitted.
(commit_edge_insertions_watch_calls): Bring into sync with
commit_edge_insertions
Fri Feb 21 20:41:29 2003 J"orn Rennecke <joern.rennecke@superh.com>
* sh.h (OVERRIDE_OPTIONS): Fix code that clears 'e' register class.

View File

@ -1460,6 +1460,7 @@ commit_edge_insertions ()
{
basic_block bb;
sbitmap blocks;
bool changed = false;
#ifdef ENABLE_CHECKING
verify_flow_info ();
@ -1473,10 +1474,16 @@ commit_edge_insertions ()
{
next = e->succ_next;
if (e->insns)
commit_one_edge_insertion (e, false);
{
changed = true;
commit_one_edge_insertion (e, false);
}
}
}
if (!changed)
return;
blocks = sbitmap_alloc (last_basic_block);
sbitmap_zero (blocks);
FOR_EACH_BB (bb)
@ -1500,6 +1507,8 @@ void
commit_edge_insertions_watch_calls ()
{
basic_block bb;
sbitmap blocks;
bool changed = false;
#ifdef ENABLE_CHECKING
verify_flow_info ();
@ -1513,9 +1522,30 @@ commit_edge_insertions_watch_calls ()
{
next = e->succ_next;
if (e->insns)
commit_one_edge_insertion (e, true);
{
changed = true;
commit_one_edge_insertion (e, true);
}
}
}
if (!changed)
return;
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);
}
/* Print out one basic block with live information at start and end. */