http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48067
--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-03-11 14:50:13 UTC --- (In reply to comment #2) > Reproduces on trunk/x86_64 with > > -O2 -ffast-math -mfma4 -fno-tree-forwprop -fno-tree-reassoc > > on trunk both forwprop and reassoc change > > d12_8 = -c12_7; > D.745_11 = c12_7 - d12_8; > > to > > D.745_11 = c12_7 + c_12_7; > > making the issue latent. C testcase with the above flags: float foo (float x, float cim) { float c = x * cim; float d = -c; return c - d; }