loop.texi (Loop manipulation): Remove nonexistent tree_ssa_loop_version from the documentation.

* doc/loop.texi (Loop manipulation): Remove nonexistent
	tree_ssa_loop_version from the documentation.
	* cfgloopmanip.c (loop_version): Document CONDITION_BB argument.

From-SVN: r245630
This commit is contained in:
Aldy Hernandez 2017-02-21 15:37:18 +00:00 committed by Aldy Hernandez
parent 2f3ec56d60
commit 5daaf2d5d9
3 changed files with 15 additions and 7 deletions

View File

@ -1,3 +1,9 @@
2017-02-21 Aldy Hernandez <aldyh@redhat.com>
* doc/loop.texi (Loop manipulation): Remove nonexistent
tree_ssa_loop_version from the documentation.
* cfgloopmanip.c (loop_version): Document CONDITION_BB argument.
2017-02-21 Jakub Jelinek <jakub@redhat.com> 2017-02-21 Jakub Jelinek <jakub@redhat.com>
PR target/79494 PR target/79494

View File

@ -1689,10 +1689,13 @@ lv_adjust_loop_entry_edge (basic_block first_head, basic_block second_head,
This transformation given a condition and a loop, creates This transformation given a condition and a loop, creates
-if (condition) { loop_copy1 } else { loop_copy2 }, -if (condition) { loop_copy1 } else { loop_copy2 },
where loop_copy1 is the loop transformed in one way, and loop_copy2 where loop_copy1 is the loop transformed in one way, and loop_copy2
is the loop transformed in another way (or unchanged). 'condition' is the loop transformed in another way (or unchanged). COND_EXPR
may be a run time test for things that were not resolved by static may be a run time test for things that were not resolved by static
analysis (overlapping ranges (anti-aliasing), alignment, etc.). analysis (overlapping ranges (anti-aliasing), alignment, etc.).
If non-NULL, CONDITION_BB is set to the basic block containing the
condition.
THEN_PROB is the probability of the then edge of the if. THEN_SCALE THEN_PROB is the probability of the then edge of the if. THEN_SCALE
is the ratio by that the frequencies in the original loop should is the ratio by that the frequencies in the original loop should
be scaled. ELSE_SCALE is the ratio by that the frequencies in the be scaled. ELSE_SCALE is the ratio by that the frequencies in the

View File

@ -258,12 +258,11 @@ one of the edges entering loop header, thus performing either loop
unrolling or loop peeling. @code{can_duplicate_loop_p} unrolling or loop peeling. @code{can_duplicate_loop_p}
(@code{can_unroll_loop_p} on GIMPLE) must be true for the duplicated (@code{can_unroll_loop_p} on GIMPLE) must be true for the duplicated
loop. loop.
@item @code{loop_version}, @code{tree_ssa_loop_version}: These function @item @code{loop_version}: This function creates a copy of a loop, and
create a copy of a loop, and a branch before them that selects one of a branch before them that selects one of them depending on the
them depending on the prescribed condition. This is useful for prescribed condition. This is useful for optimizations that need to
optimizations that need to verify some assumptions in runtime (one of verify some assumptions in runtime (one of the copies of the loop is
the copies of the loop is usually left unchanged, while the other one is usually left unchanged, while the other one is transformed in some way).
transformed in some way).
@item @code{tree_unroll_loop}: Unrolls the loop, including peeling the @item @code{tree_unroll_loop}: Unrolls the loop, including peeling the
extra iterations to make the number of iterations divisible by unroll extra iterations to make the number of iterations divisible by unroll
factor, updating the exit condition, and removing the exits that now factor, updating the exit condition, and removing the exits that now