David Schultz
cd3cc47033
amd64 assembly versions of sqrt(), lrint(), and llrint() using SSE2.
2005-01-15 03:32:28 +00:00
David Schultz
f365db00e5
Mark all inline asms that read the floating-point control or status
...
registers as volatile. Instructions that *wrote* to FP state were
already marked volatile, but apparently gcc has license to move
non-volatile asms past volatile asms. This broke amd64's feupdateenv
at -O2 due to a WAR conflict between fnstsw and fldenv there.
2005-01-14 07:09:23 +00:00
David Schultz
c1b70ced4f
Mark inline stmxcsr instructions as volatile, since this appears to be
...
the only way to convince gcc that they read the MXCSR. The volatile
annotation may be needed elsewhere as well.
2005-01-11 22:10:43 +00:00
David Schultz
0d2354c6fd
Insert a missing '~' in feholdexcept(), so that it correctly clears
...
the exception flags in the mxcsr as well as the x87 FPU.
2004-06-11 02:35:19 +00:00
David Schultz
fc27daefcd
Add an fenv.h implementation for the amd64 port.
...
Reviewed by: standards@
2004-06-06 10:03:25 +00:00