2 * Written by J.T. Conklin <jtc@netbsd.org>.
5 * Changes for long double by Ulrich Drepper <drepper@cygnus.com>
7 * Removed header file dependency for use in libmingwex.a by
8 * Danny Smith <dannysmith@users.sourceforge.net>
10 #include <_mingw_mac.h>
19 .globl __MINGW_USYMBOL(floorf)
20 .def __MINGW_USYMBOL(floorf); .scl 2; .type 32; .endef
21 __MINGW_USYMBOL(floorf):
27 fstcw 4(%rsp) /* store fpu control word */
28 movl $0x400,%edx /* round towards -oo */
32 fldcw (%rsp) /* load modified control word */
36 fldcw 4(%rsp) /* restore original control word */
46 fstcw 4(%esp) /* store fpu control word */
48 /* We use here %edx although only the low 1 bits are defined.
49 But none of the operations should care and they are faster
50 than the 16 bit operations. */
51 movl $0x400,%edx /* round towards -oo */
55 fldcw (%esp) /* load modified control word */
59 fldcw 4(%esp) /* restore original control word */