diff mbox

Improve comments in pass_tree_loop_init::execute

Message ID 564B062A.2030107@mentor.com
State New
Headers show

Commit Message

Tom de Vries Nov. 17, 2015, 10:49 a.m. UTC
Hi,

this no-functional-changes patch improves comments in 
pass_tree_loop_init::execute.

For the discussion related to the comment for scev_initialize, see:
- https://gcc.gnu.org/ml/gcc-patches/2013-02/msg01127.html
- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56426

OK for trunk?

Thanks,
- Tom

Comments

Richard Biener Nov. 17, 2015, 11:41 a.m. UTC | #1
On Tue, 17 Nov 2015, Tom de Vries wrote:

> Hi,
> 
> this no-functional-changes patch improves comments in
> pass_tree_loop_init::execute.
> 
> For the discussion related to the comment for scev_initialize, see:
> - https://gcc.gnu.org/ml/gcc-patches/2013-02/msg01127.html
> - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56426
> 
> OK for trunk?

The comment about SCEV is no longer accurate as we gate pass_tree_loop
on having "real" loops.

Richard.

> Thanks,
> - Tom
>
diff mbox

Patch

Improve comments in pass_tree_loop_init::execute

2015-11-17  Tom de Vries  <tom@codesourcery.com>

	* tree-ssa-loop.c (pass_tree_loop_init::execute): Improve comments.

---
 gcc/tree-ssa-loop.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/gcc/tree-ssa-loop.c b/gcc/tree-ssa-loop.c
index 570406f..40df84f 100644
--- a/gcc/tree-ssa-loop.c
+++ b/gcc/tree-ssa-loop.c
@@ -276,12 +276,21 @@  public:
 unsigned int
 pass_tree_loop_init::execute (function *fun ATTRIBUTE_UNUSED)
 {
+  /* When processing a loop in the loop pipeline, we should be able to assert
+     that:
+       (loops_state_satisfies_p (LOOPS_NORMAL | LOOPS_HAVE_RECORDED_EXITS
+					      | LOOP_CLOSED_SSA)
+	&& scev_initialized_p ())
+  */
+
   loop_optimizer_init (LOOPS_NORMAL
 		       | LOOPS_HAVE_RECORDED_EXITS);
   rewrite_into_loop_closed_ssa (NULL, TODO_update_ssa);
 
-  /* We might discover new loops, e.g. when turning irreducible
-     regions into reducible.  */
+  /* Note that we run scev_initialize here even if number_of_loops () <= 1.
+     Even if we have no real loops now, we might discover new loops while
+     executing the loop pipeline, e.g. when turning irreducible regions into
+     reducible, in which case we still would need scev to be initialized.  */
   scev_initialize ();
 
   return 0;