summaryrefslogtreecommitdiff
path: root/gcc/cfghooks.c
diff options
context:
space:
mode:
authorrakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-25 23:19:56 +0000
committerrakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-25 23:19:56 +0000
commit2197fd815118cf260449f0a3b922eee86e82db89 (patch)
tree5355c46ad6f8e1bf910504750e2fb423221d421e /gcc/cfghooks.c
parent5405298c8aa3b9301db33573f175900eed3cc00a (diff)
downloadgcc-2197fd815118cf260449f0a3b922eee86e82db89.tar.gz
* cfghooks.c (split_block): Fix the information about loop latch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126936 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfghooks.c')
-rw-r--r--gcc/cfghooks.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/cfghooks.c b/gcc/cfghooks.c
index d436f011fac..948300c028e 100644
--- a/gcc/cfghooks.c
+++ b/gcc/cfghooks.c
@@ -432,7 +432,11 @@ split_block (basic_block bb, void *i)
}
if (current_loops != NULL)
- add_bb_to_loop (new_bb, bb->loop_father);
+ {
+ add_bb_to_loop (new_bb, bb->loop_father);
+ if (bb->loop_father->latch == bb)
+ bb->loop_father->latch = new_bb;
+ }
return make_single_succ_edge (bb, new_bb, EDGE_FALLTHRU);
}