http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57206
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2013-05-08 Blocks| |53947 Ever Confirmed|0 |1 --- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> 2013-05-08 13:22:27 UTC --- That's because we cannot compute the evolution of _7 <bb 4>: # n_14 = PHI <n_11(5), n_3(D)(3)> _5 = n_3(D) - n_14; _6 = (long unsigned int) _5; _7 = _6 * 4; _9 = d_8(D) + _7; *_9 = 0.0; (set_scalar_evolution instantiated_below = 3 (scalar = _6) (scalar_evolution = (long unsigned int) {0, +, 1}_1)) ) because 4 * (long unsigned int) {0, +, 1}_1 is not affine and we fail to prove that _5 = n_3(D) - n_14; does not wrap. All kind-of side-effects of us forcing the offset operand of POINTER_PLUS_EXPR to be sizetype and to perform the array index * array element size computation in that type.