1234567891011121314151617181920212223242526272829303132333435 |
- /*
- * Written by:
- * J.T. Conklin ([email protected])
- * Public domain.
- */
- #include <i387/bsd_asm.h>
- //__FBSDID("$FreeBSD: src/lib/msun/i387/s_floor.S,v 1.10 2011/01/07 16:13:12 kib Exp $")
- ENTRY(floor)
- pushl %ebp
- movl %esp,%ebp
- subl $8,%esp
- fstcw -4(%ebp) /* store fpu control word */
- movw -4(%ebp),%dx
- orw $0x0400,%dx /* round towards -oo */
- andw $0xf7ff,%dx
- movw %dx,-8(%ebp)
- fldcw -8(%ebp) /* load modfied control word */
- fldl 8(%ebp); /* round */
- frndint
- fldcw -4(%ebp) /* restore original control word */
- leave
- ret
- END(floor)
-
- /* Enable stack protection */
- #if defined(__ELF__)
- .section .note.GNU-stack,"",%progbits
- #endif
|