diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-20 20:18:49 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-20 20:18:49 +0000 |
commit | bb30f677e665bca25e979d13b23a9fc83c83d883 (patch) | |
tree | 538ba30cbb64de4c967030b7047eae6f87dfcb6c /gcc/regrename.c | |
parent | c7b58a13465d0e4be3f861d933e9072e27cf3457 (diff) | |
download | gcc-bb30f677e665bca25e979d13b23a9fc83c83d883.tar.gz |
* regrename.c (copyprop_hardreg_forward): Only search for a
previously processed block if the current block only has one
predecessor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@90968 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/regrename.c')
-rw-r--r-- | gcc/regrename.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/regrename.c b/gcc/regrename.c index 3856c2cf020..3153e5c353f 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)) |