------- Comment #2 from rguenth at gcc dot gnu dot org 2010-04-18 20:14 ------- Loop invariant motion breaks this.
<bb 6>: - g_313.0_6 = pretmp.4_9; - *g_313.0_6 = 0B; <bb 8>: # m_21 = PHI <0(11), m_3(D)(2)> + g_313.8_12 = *g_313.0_6; + g_313.0_6 = pretmp.4_9; goto <bb 5>; we insert stmts not preserving ordering. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43781