http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32375
--- Comment #8 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-07-16 13:03:10 UTC --- The issue is that we have <bb 5>: # j_2 = PHI <2(4), j_30(10)> pretmp.38_71 = (integer(kind=8)) j_2; pretmp.38_72 = stride.2_6 * pretmp.38_71; pretmp.38_73 = offset.3_8 + pretmp.38_72; pretmp.39_75 = j_2 + -1; pretmp.40_76 = (integer(kind=8)) pretmp.39_75; pretmp.40_77 = stride.2_6 * pretmp.40_76; pretmp.40_78 = offset.3_8 + pretmp.40_77; <bb 6>: # i_37 = PHI <i_29(7), 1(5)> ... D.1940_22 = *aa_21(D)[D.1939_20]; *aa_21(D)[D.1934_14] = D.1950_28; and data-dependence analysis sees (analyze_overlapping_iterations (chrec_a = {pretmp.40_78 + 1, +, 1}_2) (chrec_b = {pretmp.38_73 + 1, +, 1}_2) and (analyze_overlapping_iterations (chrec_a = {{(stride.2_6 + offset.3_8) + 1, +, stride.2_6}_1, +, 1}_2) (chrec_b = {{(stride.2_6 * 2 + offset.3_8) + 1, +, stride.2_6}_1, +, 1}_2)