------- Comment #2 from rguenth at gcc dot gnu dot org 2008-04-24 11:27 -------
<bb 2>:
vect_px.14_32 = (vector double *) &x;
vect_px.9_31 = vect_px.14_32;
vect_ptmp.24_42 = (vector double *) &tmp;
vect_ptmp.19_43 = vect_ptmp.24_42;
<bb 3>:
# SMT.20_50 = PHI <SMT.20_58(4), SMT.20_51(D)(2)>
# ivtmp.26_48 = PHI <ivtmp.26_49(4), 0(2)>
# ivtmp.25_44 = PHI <ivtmp.25_45(4), vect_ptmp.19_43(2)>
# ivtmp.15_35 = PHI <ivtmp.15_36(4), vect_px.9_31(2)>
# tmp_34 = PHI <tmp_57(4), tmp_23(D)(2)>
# VUSE <x_24(D), SMT.10_52(D)>
vect_var_.16_37 = *ivtmp.15_35;
ivtmp.15_38 = ivtmp.15_35 + 16;
# VUSE <x_24(D), SMT.10_52(D)>
vect_var_.17_39 = *ivtmp.15_38;
ivtmp.15_40 = ivtmp.15_38 + 16;
# VUSE <x_24(D), SMT.10_52(D)>
vect_var_.18_41 = *ivtmp.15_40;
# tmp_53 = VDEF <tmp_34>
# SMT.20_54 = VDEF <SMT.20_50>
*ivtmp.25_44 = vect_var_.16_37;
ivtmp.25_46 = ivtmp.25_44 + 16;
# tmp_55 = VDEF <tmp_53>
# SMT.20_56 = VDEF <SMT.20_54>
*ivtmp.25_46 = vect_var_.17_39;
ivtmp.25_47 = ivtmp.25_46 + 16;
# tmp_57 = VDEF <tmp_55>
# SMT.20_58 = VDEF <SMT.20_56>
*ivtmp.25_47 = vect_var_.18_41;
ivtmp.15_36 = ivtmp.15_40 + 16;
ivtmp.25_45 = ivtmp.25_47 + 16;
ivtmp.26_49 = ivtmp.26_48 + 1;
if (ivtmp.26_49 < 5)
goto <bb 4>;
else
goto <bb 5>;
<bb 4>:
goto <bb 3>;
the final increment for ivtmp.15_36 is wrong -- it should be 48.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36034