summaryrefslogtreecommitdiff
path: root/gcc/cfganal.c
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>2005-02-21 09:21:00 -0700
committerJeff Law <law@gcc.gnu.org>2005-02-21 09:21:00 -0700
commit0b612e0bc78db837f362a4986dfd843cd98d7880 (patch)
treeb202d04cefd1ef13801259d8c8d42c475d624451 /gcc/cfganal.c
parent32efd4cd48e9286e750083fe6afab87c6204d9b2 (diff)
downloadgcc-0b612e0bc78db837f362a4986dfd843cd98d7880.tar.gz
cfganal.c (find_unreachable_blocks): Manually CSE load of e->dest.
* cfganal.c (find_unreachable_blocks): Manually CSE load of e->dest. From-SVN: r95334
Diffstat (limited to 'gcc/cfganal.c')
-rw-r--r--gcc/cfganal.c14
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);