diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-21 16:21:00 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-21 16:21:00 +0000 |
commit | 045fbdee30b81a22d85fcdcf878e51a19c246c50 (patch) | |
tree | b202d04cefd1ef13801259d8c8d42c475d624451 /gcc/cfganal.c | |
parent | 1673562af27e9961ceb68baa04575b5b4db24ba4 (diff) | |
download | gcc-045fbdee30b81a22d85fcdcf878e51a19c246c50.tar.gz |
* cfganal.c (find_unreachable_blocks): Manually CSE load of
e->dest.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95334 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfganal.c')
-rw-r--r-- | gcc/cfganal.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/gcc/cfganal.c b/gcc/cfganal.c index f2322535243..45e9590b3a3 100644 --- a/gcc/cfganal.c +++ b/gcc/cfganal.c @@ -308,11 +308,15 @@ find_unreachable_blocks (void) basic_block b = *--tos; FOR_EACH_EDGE (e, ei, b->succs) - if (!(e->dest->flags & BB_REACHABLE)) - { - *tos++ = e->dest; - e->dest->flags |= BB_REACHABLE; - } + { + basic_block dest = e->dest; + + if (!(dest->flags & BB_REACHABLE)) + { + *tos++ = dest; + dest->flags |= BB_REACHABLE; + } + } } free (worklist); |