This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/66434] cc1plus: internal compiler error: in gimplify_modify_expr, at gimplify.c:4616
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 08 Jun 2015 11:18:28 +0000
- Subject: [Bug middle-end/66434] cc1plus: internal compiler error: in gimplify_modify_expr, at gimplify.c:4616
- Auto-submitted: auto-generated
- References: <bug-66434-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66434
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
The issue is in IVOPTs:
#13 0x00000000011ed370 in create_iv (base=<nop_expr 0x7ffff6a6ce20>,
step=<nop_expr 0x7ffff6a6ce40>, var=<var_decl 0x7ffff6a6d630 ivtmp.21>,
loop=0x7ffff6a4d620, incr_pos=0x7fffffffd880, after=true,
var_before=0x2523a20, var_after=0x2523a28)
at /space/rguenther/tramp3d/trunk/gcc/tree-ssa-loop-manip.c:147
147 step = force_gimple_operand (step, &stmts, true, NULL_TREE);
(gdb) l
142 step = fold_build1 (NEGATE_EXPR, TREE_TYPE (step), step);
143 incr_op = POINTER_PLUS_EXPR;
144 }
145 /* Gimplify the step if necessary. We put the computations in front
of the
146 loop (i.e. the step should be loop invariant). */
147 step = force_gimple_operand (step, &stmts, true, NULL_TREE);
148 if (stmts)
149 gsi_insert_seq_on_edge_immediate (pe, stmts);
150
151 stmt = gimple_build_assign (va, incr_op, vb, step);
ends up trying to gimplfy
(long unsigned int) ((if (_40 > 0)
{
iftmp.23 = _14 + 1;
}
else
{
iftmp.23 = 1;
}) * pretmp_43)
but we can't put GENERIC COND_EXPR into GIMPLE via force_gimple_operand ().
At least not iff it contains possibly trapping operations.
ISTR fixing up places to avoid gobbling up trapping expressions, so I'll have
a look (it's SCEV analysis).