http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50183
--- Comment #5 from William J. Schmidt <wschmidt at gcc dot gnu.org> 2011-08-30 21:07:03 UTC --- Here's the relevant gimple following 103t.copyprop5: ========================================================================== <bb 39>: err2 = 0.0; err2_lsm.820_567 = err2; <bb 40>: # n_33 = PHI <1(39), n_223(44)> # err2_lsm.820_313 = PHI <err2_lsm.820_567(39), err2_lsm.820_573(44)> D.6172_213 = (integer(kind=8)) n_33; D.6219_214 = D.6172_213 * 12; <bb 41>: # m_27 = PHI <1(40), m_221(42)> # err2_lsm.820_353 = PHI <err2_lsm.820_313(40), err2.395_219(42)> D.6218_212 = (integer(kind=8)) m_27; D.6220_215 = D.6218_212 + D.6219_214; D.6221_216 = D.6220_215 + -13; D.6242_217 = s[D.6221_216]; err2.395_219 = D.6242_217 + err2_lsm.820_353; m_221 = m_27 + 1; if (m_27 == 12) goto <bb 43>; else goto <bb 42>; <bb 42>: goto <bb 41>; <bb 43>: # err2.395_561 = PHI <err2.395_219(41)> # err2_lsm.820_573 = PHI <err2.395_219(41)> n_223 = n_33 + 1; if (n_33 == 12) goto <bb 45>; else goto <bb 44>; <bb 44>: goto <bb 40>; <bb 45>: # err2.395_571 = PHI <err2.395_561(43)> # err2_lsm.820_574 = PHI <err2_lsm.820_573(43)> err2 = err2_lsm.820_574; D.6247_225 = ABS_EXPR <err2.395_571>; if (D.6247_225 > 1.00000000000000003643219731549774157916554706559963960899e-10) goto <bb 46>; else goto <bb 54>; ========================================================================== At the time of the verify_ssa failure, this has been changed to: ========================================================================== <bb 39>: <bb 74>: # .MEM_352 = VDEF <.MEM_351> err2 = 0.0; # VUSE <.MEM_352> err2_lsm.820_567 = err2; # .MEM_170 = VDEF <.MEM_352> Commutative_Associative_Reduction.822[0] = err2_lsm.820_567; <bb 40>: # n_33 = PHI <1(74), n_223(44)> # .MEM_291 = PHI <.MEM_170(74), .MEM_575(44)> D.6172_213 = (integer(kind=8)) n_33; D.6219_214 = D.6172_213 * 12; <bb 41>: # m_27 = PHI <1(40), m_221(42)> # .MEM_292 = PHI <.MEM_291(40), .MEM_575(42)> # VUSE <.MEM_292> err2_lsm.820_353 = Commutative_Associative_Reduction.822[0]; D.6218_212 = (integer(kind=8)) m_27; D.6220_215 = D.6218_212 + D.6219_214; D.6221_216 = D.6220_215 + -13; # VUSE <.MEM_292> D.6242_217 = s[D.6221_216]; err2.395_219 = D.6242_217 + err2_lsm.820_353; # .MEM_575 = VDEF <.MEM_292> Commutative_Associative_Reduction.822[0] = err2.395_219; m_221 = m_27 + 1; if (m_27 == 12) goto <bb 43>; else goto <bb 42>; <bb 42>: goto <bb 41>; <bb 43>: <bb 73>: n_223 = n_33 + 1; if (n_33 == 12) goto <bb 45>; else goto <bb 44>; <bb 44>: goto <bb 40>; <bb 45>: # err2_lsm.820_574 = PHI <err2.395_561(73)> # VUSE <.MEM_575> D.6815_562 = Commutative_Associative_Reduction.822[0]; err2.395_571 = D.6815_562; <bb 72>: # .MEM_569 = VDEF <.MEM_575> err2 = err2_lsm.820_574; D.6247_225 = ABS_EXPR <err2.395_571>; if (D.6247_225 > 1.00000000000000003643219731549774157916554706559963960899e-10) goto <bb 46>; else goto <bb 54>; ========================================================================== The PHI in block 45 is left without a definition.