Commit 8d2d0de9 by Bin Cheng Committed by Bin Cheng

re PR tree-optimization/81799 (ICE on valid code at -O3: verify_gimple failed)

	PR tree-optimization/81799
	* tree-loop-distribution.c (version_loop_by_alias_check): Force
	cond_expr to simple gimple operand.

	gcc/testsuite
	* gcc.dg/tree-ssa/pr81799.c: New.

From-SVN: r251088
parent 5316dd1b
2017-08-14 Bin Cheng <bin.cheng@arm.com>
PR tree-optimization/81799
* tree-loop-distribution.c (version_loop_by_alias_check): Force
cond_expr to simple gimple operand.
2017-08-14 Wilco Dijkstra <wdijkstr@arm.com>
PR middle-end/46932
......
2017-08-14 Bin Cheng <bin.cheng@arm.com>
PR tree-optimization/81799
* gcc.dg/tree-ssa/pr81799.c: New.
2017-08-14 Wilco Dijkstra <wdijkstr@arm.com>
PR middle-end/46932
......
/* { dg-do compile } */
/* { dg-options "-O3" } */
int printf (const char *, ...);
int a, c[1], d, e, **f;
void fn1 (int h)
{
int *i = 0;
for (d = 0; d < 1; d++)
{
if (d)
continue;
for (; e; e++)
{
a = c[*i];
if (h)
printf ("0");
}
return;
}
f = &i;
}
......@@ -2263,7 +2263,7 @@ version_loop_by_alias_check (struct loop *loop, vec<ddr_p> *alias_ddrs)
compute_alias_check_pairs (loop, alias_ddrs, &comp_alias_pairs);
create_runtime_alias_checks (loop, &comp_alias_pairs, &cond_expr);
cond_expr = force_gimple_operand_1 (cond_expr, &cond_stmts,
is_gimple_condexpr, NULL_TREE);
is_gimple_val, NULL_TREE);
/* Depend on vectorizer to fold IFN_LOOP_DIST_ALIAS. */
if (flag_tree_loop_vectorize)
......
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