summaryrefslogtreecommitdiff
path: root/gcc/lambda-code.c
diff options
context:
space:
mode:
authorrakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4>2007-05-03 13:27:26 +0000
committerrakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4>2007-05-03 13:27:26 +0000
commit1491dd5ab53d0eaf7a2f62905b5343a0a733116d (patch)
treeb993a189f6be21f7bb002d0d9b6148b9b75960cb /gcc/lambda-code.c
parentce31a2d7a5ffb339cf788cc6f5d76e3a41baa9a8 (diff)
downloadgcc-1491dd5ab53d0eaf7a2f62905b5343a0a733116d.tar.gz
PR tree-optimization/30565
* lambda-code.c (perfect_nestify): Fix updating of dominators. * gcc.dg/tree-ssa/loop-27.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124378 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lambda-code.c')
-rw-r--r--gcc/lambda-code.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/lambda-code.c b/gcc/lambda-code.c
index ca07bdc2f04..655c0258230 100644
--- a/gcc/lambda-code.c
+++ b/gcc/lambda-code.c
@@ -2521,7 +2521,8 @@ perfect_nestify (struct loop *loop,
set_immediate_dominator (CDI_DOMINATORS, preheaderbb,
single_exit (loop)->src);
set_immediate_dominator (CDI_DOMINATORS, latchbb, bodybb);
- set_immediate_dominator (CDI_DOMINATORS, olddest, bodybb);
+ set_immediate_dominator (CDI_DOMINATORS, olddest,
+ recount_dominator (CDI_DOMINATORS, olddest));
/* Create the new iv. */
oldivvar = VEC_index (tree, loopivs, 0);
ivvar = create_tmp_var (TREE_TYPE (oldivvar), "perfectiv");