Commit 71118889 by Richard Sandiford Committed by Richard Sandiford

Fix nb_iterations calculation in tree-vect-loop-manip.c

We previously stored the number of loop iterations rather
than the number of latch iterations.

gcc/
2016-11-15  Richard Sandiford  <richard.sandiford@arm.com>
	    Alan Hayward  <alan.hayward@arm.com>
	    David Sherwood  <david.sherwood@arm.com>

	* tree-vect-loop-manip.c (slpeel_make_loop_iterate_ntimes): Set
	nb_iterations to the number of latch iterations rather than the
	number of loop iterations.

Co-Authored-By: Alan Hayward <alan.hayward@arm.com>
Co-Authored-By: David Sherwood <david.sherwood@arm.com>

From-SVN: r242493
parent ae1a0866
......@@ -2,6 +2,14 @@
Alan Hayward <alan.hayward@arm.com>
David Sherwood <david.sherwood@arm.com>
* tree-vect-loop-manip.c (slpeel_make_loop_iterate_ntimes): Set
nb_iterations to the number of latch iterations rather than the
number of loop iterations.
2016-11-16 Richard Sandiford <richard.sandiford@arm.com>
Alan Hayward <alan.hayward@arm.com>
David Sherwood <david.sherwood@arm.com>
* combine.c (maybe_swap_commutative_operands): New function.
(combine_simplify_rtx): Use it.
(change_zero_ext): Likewise.
......@@ -285,7 +285,10 @@ slpeel_make_loop_iterate_ntimes (struct loop *loop, tree niters)
LOCATION_LINE (loop_loc));
dump_gimple_stmt (MSG_NOTE, TDF_SLIM, cond_stmt, 0);
}
loop->nb_iterations = niters;
/* Record the number of latch iterations. */
loop->nb_iterations = fold_build2 (MINUS_EXPR, TREE_TYPE (niters), niters,
build_int_cst (TREE_TYPE (niters), 1));
}
/* Helper routine of slpeel_tree_duplicate_loop_to_edge_cfg.
......
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