summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>2004-10-22 17:59:50 +0000
committerkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>2004-10-22 17:59:50 +0000
commited6510d3635fed5e855266675702cb61f01e0743 (patch)
tree0852828a4b7b9d8a04d2366874e06d56e7a833aa
parent3669d9a3c8bd819399210127a2704b5aadfb7e5b (diff)
downloadppe42-gcc-ed6510d3635fed5e855266675702cb61f01e0743.tar.gz
ppe42-gcc-ed6510d3635fed5e855266675702cb61f01e0743.zip
* tree-cfg.c (thread_jumps_from_bb): Speed up by extracting
edge information when we commit ourselves to threading a particular jump. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@89462 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/tree-cfg.c5
2 files changed, 8 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7a23a2d0104..34abac14f7f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2004-10-22 Kazu Hirata <kazu@cs.umass.edu>
+ * tree-cfg.c (thread_jumps_from_bb): Speed up by extracting
+ edge information when we commit ourselves to threading a
+ particular jump.
+
+2004-10-22 Kazu Hirata <kazu@cs.umass.edu>
+
* tree-cfg.c (thread_jumps): Speed up by putting basic blocks
into worklist instead of their indexes.
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 0bf7b16b6b3..bdcabf3a58a 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -3788,9 +3788,6 @@ thread_jumps_from_bb (basic_block bb)
continue;
}
- count = e->count;
- freq = EDGE_FREQUENCY (e);
-
/* Now walk through as many forwarder blocks as possible to find
the ultimate destination we want to thread our jump to. */
last = EDGE_SUCC (e->dest, 0);
@@ -3839,6 +3836,8 @@ thread_jumps_from_bb (basic_block bb)
/* Perform the redirection. */
retval = true;
+ count = e->count;
+ freq = EDGE_FREQUENCY (e);
old_dest = e->dest;
e = redirect_edge_and_branch (e, dest);
OpenPOWER on IntegriCloud