http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53190
Uros Bizjak <ubizjak at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID --- Comment #3 from Uros Bizjak <ubizjak at gmail dot com> 2012-05-02 17:25:22 UTC --- (In reply to comment #2) > (clobber (reg:QI 18 fpsr)) > (clobber (reg:QI 17 flags)) > > > It might clobber those but that is not considered an use. So CSE is doing the > correct thing as there is no use based on fpsr. The asm that depends on some unknown-to-gcc global processor state should be marked as volatile. This is a bug in glibc. As a side note, mathinline.h really needs some serious TLC, there are many functions that are much better implemented with gcc builtin functions, not to mention that x87 asm in 32bit case interferes *badly* with -mfpmath=sse. Fortunately, there is -D__NO_MATH_INLINES, used in my projects from day one. Really, there is no justification for mathinline.h to live, as far as gcc is concerned.