https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87473
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords|ice-on-invalid-code |ice-on-valid-code Priority|P3 |P2 Status|UNCONFIRMED |NEW Last reconfirmed| |2018-10-01 CC| |wschmidt at gcc dot gnu.org Target Milestone|--- |7.4 Ever confirmed|0 |1 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Confirmed. #1 0x0000000001e11b98 in create_add_on_incoming_edge (c=0x2fc4000, basis_name= <ssa_name 0x7ffff69e12d0>, increment=..., e=<edge 0x7ffff69d6d20 (5 -> 6)>, loc=2147483670, known_stride=false) at /tmp/trunk2/gcc/gimple-ssa-strength-reduction.c:2344 2344 gcc_unreachable (); (gdb) p increment $1 = {<fixed_wide_int_storage<192>> = {val = {-2, -1, 140737488345120, 10789461}, len = 1}, static is_sign_extended = <optimized out>} (so the value is -2) from /* If the phi argument is the base name of the CAND_PHI, then this incoming arc should use the hidden basis. */ if (operand_equal_p (arg, phi_cand->base_expr, 0)) if (basis->index == 0) feeding_def = gimple_assign_lhs (basis->cand_stmt); else { widest_int incr = -basis->index; feeding_def = create_add_on_incoming_edge (c, basis_name, incr, e, loc, known_stride); } we get there with basis->index == 2, eventually generated from _16 = _15 + 2;