http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53190
--- Comment #5 from Uros Bizjak <ubizjak at gmail dot com> 2012-05-03 08:15:00 UTC --- (In reply to comment #4) > So you say that it's correct for CSE to CSE asm()s if they have the same > asm string and the same asm operands in case the asm is not volatile? I was > not aware we would do that ;) (but yes, it sounds like a reasonable thing) There is nothing that prevents gcc from doing this... BTW: fpsr is FP *status* register, an x87 CC-like internal register. This asm should probably depend on fpcr, a FP *control* register. In fact, there are two FP control registers, x87 and SSE one. The later is not handled at all.