aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-threadedge.c
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>2013-11-22 00:36:12 -0700
committerJeff Law <law@gcc.gnu.org>2013-11-22 00:36:12 -0700
commite44a45c610269bab661aa4ebce9ccd25262d6802 (patch)
tree23dd664eea9113b0a652666d1abf8f31cff950b6 /gcc/tree-ssa-threadedge.c
parentef062b13d7ea5c4afe434a90436ce1908ac14442 (diff)
downloadgcc-e44a45c610269bab661aa4ebce9ccd25262d6802.zip
gcc-e44a45c610269bab661aa4ebce9ccd25262d6802.tar.gz
gcc-e44a45c610269bab661aa4ebce9ccd25262d6802.tar.bz2
tree-ssa-threadedge.c (thread_across_edge): Mark the start of the jump thread path properly.
* tree-ssa-threadedge.c (thread_across_edge): Mark the start of the jump thread path properly. From-SVN: r205245
Diffstat (limited to 'gcc/tree-ssa-threadedge.c')
-rw-r--r--gcc/tree-ssa-threadedge.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-ssa-threadedge.c b/gcc/tree-ssa-threadedge.c
index a144875..7600d7b 100644
--- a/gcc/tree-ssa-threadedge.c
+++ b/gcc/tree-ssa-threadedge.c
@@ -1078,8 +1078,9 @@ thread_across_edge (gimple dummy_cond,
/* Avoid threading to any block we have already visited. */
bitmap_clear (visited);
- bitmap_set_bit (visited, taken_edge->dest->index);
+ bitmap_set_bit (visited, e->src->index);
bitmap_set_bit (visited, e->dest->index);
+ bitmap_set_bit (visited, taken_edge->dest->index);
vec<jump_thread_edge *> *path = new vec<jump_thread_edge *> ();
/* Record whether or not we were able to thread through a successor