re PR tree-optimization/60740 (ICE in extract_affine w/ -O2 -ftree-loop-linear)
2014-04-03 Richard Biener <rguenther@suse.de> PR tree-optimization/60740 * graphite-scop-detection.c (stmt_simple_for_scop_p): Iterate over all GIMPLE_COND operands. * gcc.dg/graphite/pr60740.c: New testcase. From-SVN: r209057
This commit is contained in:
parent
880a467be7
commit
f16c88d25f
|
@ -1,3 +1,9 @@
|
||||||
|
2014-04-03 Richard Biener <rguenther@suse.de>
|
||||||
|
|
||||||
|
PR tree-optimization/60740
|
||||||
|
* graphite-scop-detection.c (stmt_simple_for_scop_p): Iterate
|
||||||
|
over all GIMPLE_COND operands.
|
||||||
|
|
||||||
2014-04-03 Nathan Sidwell <nathan@codesourcery.com>
|
2014-04-03 Nathan Sidwell <nathan@codesourcery.com>
|
||||||
|
|
||||||
* doc/invoke.texi (Wnon-virtual-dtor): Adjust documentation.
|
* doc/invoke.texi (Wnon-virtual-dtor): Adjust documentation.
|
||||||
|
|
|
@ -346,13 +346,10 @@ stmt_simple_for_scop_p (basic_block scop_entry, loop_p outermost_loop,
|
||||||
|
|
||||||
case GIMPLE_COND:
|
case GIMPLE_COND:
|
||||||
{
|
{
|
||||||
tree op;
|
|
||||||
ssa_op_iter op_iter;
|
|
||||||
enum tree_code code = gimple_cond_code (stmt);
|
|
||||||
|
|
||||||
/* We can handle all binary comparisons. Inequalities are
|
/* We can handle all binary comparisons. Inequalities are
|
||||||
also supported as they can be represented with union of
|
also supported as they can be represented with union of
|
||||||
polyhedra. */
|
polyhedra. */
|
||||||
|
enum tree_code code = gimple_cond_code (stmt);
|
||||||
if (!(code == LT_EXPR
|
if (!(code == LT_EXPR
|
||||||
|| code == GT_EXPR
|
|| code == GT_EXPR
|
||||||
|| code == LE_EXPR
|
|| code == LE_EXPR
|
||||||
|
@ -361,11 +358,14 @@ stmt_simple_for_scop_p (basic_block scop_entry, loop_p outermost_loop,
|
||||||
|| code == NE_EXPR))
|
|| code == NE_EXPR))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
FOR_EACH_SSA_TREE_OPERAND (op, stmt, op_iter, SSA_OP_ALL_USES)
|
for (unsigned i = 0; i < 2; ++i)
|
||||||
if (!graphite_can_represent_expr (scop_entry, loop, op)
|
{
|
||||||
/* We can not handle REAL_TYPE. Failed for pr39260. */
|
tree op = gimple_op (stmt, i);
|
||||||
|| TREE_CODE (TREE_TYPE (op)) == REAL_TYPE)
|
if (!graphite_can_represent_expr (scop_entry, loop, op)
|
||||||
return false;
|
/* We can not handle REAL_TYPE. Failed for pr39260. */
|
||||||
|
|| TREE_CODE (TREE_TYPE (op)) == REAL_TYPE)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2014-04-03 Richard Biener <rguenther@suse.de>
|
||||||
|
|
||||||
|
PR tree-optimization/60740
|
||||||
|
* gcc.dg/graphite/pr60740.c: New testcase.
|
||||||
|
|
||||||
2014-04-03 Nathan Sidwell <nathan@codesourcery.com>
|
2014-04-03 Nathan Sidwell <nathan@codesourcery.com>
|
||||||
|
|
||||||
* g++.dg/warn/Wnvdtor.C: Add non-polymorphic case.
|
* g++.dg/warn/Wnvdtor.C: Add non-polymorphic case.
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
/* { dg-options "-O2 -floop-interchange" } */
|
||||||
|
|
||||||
|
int **db6 = 0;
|
||||||
|
|
||||||
|
void
|
||||||
|
k26(void)
|
||||||
|
{
|
||||||
|
static int geb = 0;
|
||||||
|
int *a22 = &geb;
|
||||||
|
int **l30 = &a22;
|
||||||
|
int *c4b;
|
||||||
|
int ndf;
|
||||||
|
for (ndf = 0; ndf <= 1; ++ndf)
|
||||||
|
*c4b = (db6 == l30) && (*a22)--;
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue