aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog16
-rw-r--r--gcc/cfgloop.c3
-rw-r--r--gcc/graphite-clast-to-gimple.c1
-rw-r--r--gcc/graphite-scop-detection.c1
-rw-r--r--gcc/loop-doloop.c1
-rw-r--r--gcc/loop-init.c1
-rw-r--r--gcc/loop-unroll.c2
-rw-r--r--gcc/loop-unswitch.c1
-rw-r--r--gcc/tree-loop-distribution.c2
-rw-r--r--gcc/tree-parloops.c3
-rw-r--r--gcc/tree-ssa-loop-manip.c1
11 files changed, 23 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6242143..b19d883 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,19 @@
+2012-03-05 Richard Guenther <rguenther@suse.de>
+
+ * cfgloop.c (verify_loop_structure): Verify dominators before
+ using them.
+ * graphite-clast-to-gimple.c (graphite_verify): Do not verify
+ dominators from here.
+ * graphite-scop-detection.c (create_sese_edges): Likewise.
+ * loop-doloop.c (doloop_optimize_loops): Likewise.
+ * loop-init.c (loop_optimizer_init): Likewise.
+ * loop-unroll.c (unroll_and_peel_loops): Likewise.
+ * loop-unswitch.c (unswitch_loops): Likewise.
+ * tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Likewise.
+ * tree-parloops.c (parallelize_loops): Likewise. Verify
+ only when checking is enabled.
+ * tree-loop-distribution.c (tree_loop_distribution): Likewise.
+
2012-03-05 Bernd Schmidt <bernds@codesourcery.com>
* genautomata.c (parse_automata_opt): New static function.
diff --git a/gcc/cfgloop.c b/gcc/cfgloop.c
index fa64797..160486f 100644
--- a/gcc/cfgloop.c
+++ b/gcc/cfgloop.c
@@ -1318,6 +1318,9 @@ verify_loop_structure (void)
loop_iterator li;
struct loop_exit *exit, *mexit;
+ /* We need up-to-date dominators, verify them. */
+ verify_dominators (CDI_DOMINATORS);
+
/* Check sizes. */
sizes = XCNEWVEC (unsigned, num);
sizes[0] = 2;
diff --git a/gcc/graphite-clast-to-gimple.c b/gcc/graphite-clast-to-gimple.c
index abf88778..6b6969b 100644
--- a/gcc/graphite-clast-to-gimple.c
+++ b/gcc/graphite-clast-to-gimple.c
@@ -55,7 +55,6 @@ graphite_verify (void)
{
#ifdef ENABLE_CHECKING
verify_loop_structure ();
- verify_dominators (CDI_DOMINATORS);
verify_loop_closed_ssa (true);
#endif
}
diff --git a/gcc/graphite-scop-detection.c b/gcc/graphite-scop-detection.c
index 0a3680b..3f4d7d8 100644
--- a/gcc/graphite-scop-detection.c
+++ b/gcc/graphite-scop-detection.c
@@ -1026,7 +1026,6 @@ create_sese_edges (VEC (sd_region, heap) *regions)
#ifdef ENABLE_CHECKING
verify_loop_structure ();
- verify_dominators (CDI_DOMINATORS);
verify_ssa (false);
#endif
}
diff --git a/gcc/loop-doloop.c b/gcc/loop-doloop.c
index 5f64569..65ba651 100644
--- a/gcc/loop-doloop.c
+++ b/gcc/loop-doloop.c
@@ -747,7 +747,6 @@ doloop_optimize_loops (void)
iv_analysis_done ();
#ifdef ENABLE_CHECKING
- verify_dominators (CDI_DOMINATORS);
verify_loop_structure ();
#endif
}
diff --git a/gcc/loop-init.c b/gcc/loop-init.c
index 9184a14..daf5fa0 100644
--- a/gcc/loop-init.c
+++ b/gcc/loop-init.c
@@ -91,7 +91,6 @@ loop_optimizer_init (unsigned flags)
flow_loops_dump (dump_file, NULL, 1);
#ifdef ENABLE_CHECKING
- verify_dominators (CDI_DOMINATORS);
verify_loop_structure ();
#endif
}
diff --git a/gcc/loop-unroll.c b/gcc/loop-unroll.c
index 378b933..5a658d8 100644
--- a/gcc/loop-unroll.c
+++ b/gcc/loop-unroll.c
@@ -198,7 +198,6 @@ unroll_and_peel_loops (int flags)
if (check)
{
#ifdef ENABLE_CHECKING
- verify_dominators (CDI_DOMINATORS);
verify_loop_structure ();
#endif
}
@@ -255,7 +254,6 @@ peel_loops_completely (int flags)
{
peel_loop_completely (loop);
#ifdef ENABLE_CHECKING
- verify_dominators (CDI_DOMINATORS);
verify_loop_structure ();
#endif
}
diff --git a/gcc/loop-unswitch.c b/gcc/loop-unswitch.c
index 78da115..d6c4c22 100644
--- a/gcc/loop-unswitch.c
+++ b/gcc/loop-unswitch.c
@@ -149,7 +149,6 @@ unswitch_loops (void)
{
unswitch_single_loop (loop, NULL_RTX, 0);
#ifdef ENABLE_CHECKING
- verify_dominators (CDI_DOMINATORS);
verify_loop_structure ();
#endif
}
diff --git a/gcc/tree-loop-distribution.c b/gcc/tree-loop-distribution.c
index 06dd14d..0d21763 100644
--- a/gcc/tree-loop-distribution.c
+++ b/gcc/tree-loop-distribution.c
@@ -1293,7 +1293,9 @@ tree_loop_distribution (void)
fprintf (dump_file, "Loop %d is the same.\n", num);
}
+#ifdef ENABLE_CHECKING
verify_loop_structure ();
+#endif
VEC_free (gimple, heap, work_list);
}
diff --git a/gcc/tree-parloops.c b/gcc/tree-parloops.c
index e791ac3..abae3fd 100644
--- a/gcc/tree-parloops.c
+++ b/gcc/tree-parloops.c
@@ -2226,10 +2226,11 @@ parallelize_loops (void)
}
gen_parallel_loop (loop, reduction_list,
n_threads, &niter_desc);
+#ifdef ENABLE_CHECKING
verify_flow_info ();
- verify_dominators (CDI_DOMINATORS);
verify_loop_structure ();
verify_loop_closed_ssa (true);
+#endif
}
free_stmt_vec_info_vec ();
diff --git a/gcc/tree-ssa-loop-manip.c b/gcc/tree-ssa-loop-manip.c
index f6e2e9c..a0123ff 100644
--- a/gcc/tree-ssa-loop-manip.c
+++ b/gcc/tree-ssa-loop-manip.c
@@ -1096,7 +1096,6 @@ tree_transform_and_unroll_loop (struct loop *loop, unsigned factor,
#ifdef ENABLE_CHECKING
verify_flow_info ();
- verify_dominators (CDI_DOMINATORS);
verify_loop_structure ();
verify_loop_closed_ssa (true);
#endif