12345678910111213141516171819202122232425262728293031323334 |
- /*
- * Based on code written by J.T. Conklin <[email protected]>.
- * Public domain.
- */
- #include <i387/bsd_asm.h>
- //__FBSDID("$FreeBSD: src/lib/msun/i387/s_floorl.S,v 1.3 2011/01/07 16:13:12 kib Exp $")
- ENTRY(floorl)
- 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 */
- fldt 8(%ebp) /* round */
- frndint
- fldcw -4(%ebp) /* restore original control word */
- leave
- ret
- END(floorl)
-
- /* Enable stack protection */
- #if defined(__ELF__)
- .section .note.GNU-stack,"",%progbits
- #endif
|