Commit 26c40640 by Zdenek Dvorak Committed by Zdenek Dvorak

re PR tree-optimization/22348 (Execution continues past end of for loop end…

re PR tree-optimization/22348 (Execution continues past end of for loop end condition with optimisation enabled)

	PR tree-optimize/22348
	* tree-ssa-loop-niter.c (number_of_iterations_cond):
	Fold the partial computation.

	* gcc.c-torture/execute/pr22348.c: New.

From-SVN: r102427
parent 3ac01fde
2005-07-27 Zdenek Dvorak <dvorakz@suse.cz> 2005-07-27 Zdenek Dvorak <dvorakz@suse.cz>
PR tree-optimize/22348
* tree-ssa-loop-niter.c (number_of_iterations_cond):
Fold the partial computation.
2005-07-27 Zdenek Dvorak <dvorakz@suse.cz>
PR tree-optimization/22325 PR tree-optimization/22325
* tree-flow.h (compute_phi_arg_on_exit, force_expr_to_var_cost): * tree-flow.h (compute_phi_arg_on_exit, force_expr_to_var_cost):
Declare. Declare.
......
2005-07-27 Zdenek Dvorak <dvorakz@suse.cz>
PR tree-optimize/22348
* gcc.c-torture/execute/pr22348.c: New.
2005-07-27 Richard Guenther <rguenther@suse.de> 2005-07-27 Richard Guenther <rguenther@suse.de>
* gcc.dg/tree-ssa/salias-1.c: New testcase. * gcc.dg/tree-ssa/salias-1.c: New testcase.
......
void abort (void);
void f(int i)
{
if (i>4 + 3 * 16)
abort();
}
int main()
{
unsigned int buflen, i;
buflen = 4 + 3 * 16;
for (i = 4; i < buflen; i+= 3)
f(i);
return 0;
}
...@@ -275,7 +275,7 @@ number_of_iterations_cond (tree type, tree base0, tree step0, ...@@ -275,7 +275,7 @@ number_of_iterations_cond (tree type, tree base0, tree step0,
step = fold_unary_to_constant (NEGATE_EXPR, type, step1); step = fold_unary_to_constant (NEGATE_EXPR, type, step1);
else else
step = step0; step = step0;
delta = build2 (MINUS_EXPR, type, base1, base0); delta = fold_build2 (MINUS_EXPR, type, base1, base0);
delta = fold_build2 (FLOOR_MOD_EXPR, type, delta, step); delta = fold_build2 (FLOOR_MOD_EXPR, type, delta, step);
may_xform = boolean_false_node; may_xform = boolean_false_node;
......
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