diff options
author | Jeff Law <law@redhat.com> | 2004-11-20 13:18:49 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2004-11-20 13:18:49 -0700 |
commit | 40806b8b8f7a4d2ba6b926300f6a0dbcf862eb9d (patch) | |
tree | 538ba30cbb64de4c967030b7047eae6f87dfcb6c | |
parent | 7afc9b98cfdbe8918765e6b75b69a225a59d3be2 (diff) | |
download | gcc-40806b8b8f7a4d2ba6b926300f6a0dbcf862eb9d.zip gcc-40806b8b8f7a4d2ba6b926300f6a0dbcf862eb9d.tar.gz gcc-40806b8b8f7a4d2ba6b926300f6a0dbcf862eb9d.tar.bz2 |
regrename.c (copyprop_hardreg_forward): Only search for a previously processed block if...
* regrename.c (copyprop_hardreg_forward): Only search for a
previously processed block if the current block only has one
predecessor.
From-SVN: r90968
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/regrename.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8f3a6e9..ffbfc55 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-11-20 Jeff Law <law@redhat.com> + + * regrename.c (copyprop_hardreg_forward): Only search for a + previously processed block if the current block only has one + predecessor. + 2004-11-20 Kazu Hirata <kazu@cs.umass.edu> * tree-ssa-threadupdate.c, tree-vectorizer.c: Fix comment diff --git a/gcc/regrename.c b/gcc/regrename.c index 3856c2c..3153e5c 100644 --- a/gcc/regrename.c +++ b/gcc/regrename.c @@ -1757,7 +1757,7 @@ copyprop_hardreg_forward (void) processed, begin with the value data that was live at the end of the predecessor block. */ /* ??? Ought to use more intelligent queuing of blocks. */ - if (EDGE_COUNT (bb->preds) > 0) + if (EDGE_COUNT (bb->preds) == 1) for (bbp = bb; bbp && bbp != EDGE_PRED (bb, 0)->src; bbp = bbp->prev_bb); if (EDGE_COUNT (bb->preds) == 1 && ! (EDGE_PRED (bb, 0)->flags & (EDGE_ABNORMAL_CALL | EDGE_EH)) |