http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50183
--- Comment #6 from William J. Schmidt <wschmidt at gcc dot gnu.org> 2011-09-01 21:41:19 UTC --- This PHI: <bb 43>: # err2.395_561 = PHI <err2.395_219(41)> is removed by the second call to remove_phi in translate_scalar_reduction_to_array (graphite-sese-to-poly.c). There appears to be an implicit assumption in remove_phi that the PHI result is only used in debug statements. This is not the case here because of the immediate use: <bb 45>: # err2.395_571 = PHI <err2.395_561(43)> I don't know anything about the graphite code, so it's not clear to me whether the existence of this immediate use should have kept this from being a candidate for transformation, or whether remove_phi needs additional logic. My guess is the former. At this point I think we need a domain expert to look into this one...