------- Comment #2 from hjagasia at gcc dot gnu dot org 2008-12-22 19:41 ------- For the clast_stmt below:
if (midend_8 >= mid_10+1) { for (s_3=0;s_3<=min(midend_8-mid_10-1,63);s_3++) { S5(0,s_3) ; } } graphite gets into translate_clast:stmt_guard->graphite_create_new_guard->graphite_create_guard_cond_expr->graphite_translate_clast_equation->clast_to_gcc_expression Finally graphite calls fold_build2 (PLUS_EXPR, type, tl, tr); which in turn calls build2_stat (code, type, op0, op1, PASS_MEM_STAT); Finally for the RHS of the clast guard equation "if (midend_8 >= mid_10+1)" the following code is invoked: if ((code == MINUS_EXPR || code == PLUS_EXPR || code == MULT_EXPR) && arg0 && arg1 && tt && POINTER_TYPE_P (tt)) gcc_assert (TREE_CODE (arg0) == INTEGER_CST || TREE_CODE (arg1) == INTEGER_CST); For the RHS, "mid_10+1", the TREE_CODE of "mid_10" is SSA_NAME and that of "1" is INTEGER_CST. Hence the gcc_assert raises an assertion. -- hjagasia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2008-12-22 19:41:18 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38559