------- Comment #2 from rguenth at gcc dot gnu dot org 2007-09-11 11:31 ------- A bug in VRP respective its friend SCEV.
iin_5 = i_1 - 1; lin_6 = iin_5; pin_7 = (void *) iin_5; iout_8 = iin_5; printf (&" %d - In: %d, %ld (%p), Out: %ld\n"[0], i_1, iin_5, iin_5, pin_7, iin_5); i_9 = i_1 + 1; (scalar = pin_7) (scalar_evolution = {-1B, +, 1B}_1)) ) (instantiate_parameters (loop_nb = 1) (chrec = {-1B, +, 1B}_1) (res = {-1B, +, 1B}_1)) Found new range for pin_7: [-1B, -1B] Value ranges after VRP: i_1: VARYING i_2: ~[0, 0] EQUIVALENCES: { } (0 elements) iin_5: [-1, 1] EQUIVALENCES: { } (0 elements) lin_6: [-1, 1] EQUIVALENCES: { iin_5 } (1 elements) pin_7: [-1B, -1B] EQUIVALENCES: { } (0 elements) <L0>:; iin_5 = i_27 - 1; lin_6 = iin_5; pin_7 = (void *) iin_5; iout_8 = iin_5; printf (&" %d - In: %d, %ld (%p), Out: %ld\n"[0], i_27, iin_5, iin_5, -1B, iin_5); i_9 = i_27 + 1; -- rguenth at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2007-09-11 11:31:46 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33381