Commit 5daaf2d5 by Aldy Hernandez Committed by Aldy Hernandez

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
parent 2f3ec56d
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
......
...@@ -1689,10 +1689,13 @@ lv_adjust_loop_entry_edge (basic_block first_head, basic_block second_head, ...@@ -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
......
...@@ -258,12 +258,11 @@ one of the edges entering loop header, thus performing either loop ...@@ -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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment