diff options
Diffstat (limited to 'lib/msun/amd64/e_fmodf.S')
-rw-r--r-- | lib/msun/amd64/e_fmodf.S | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/msun/amd64/e_fmodf.S b/lib/msun/amd64/e_fmodf.S new file mode 100644 index 000000000000..a0676625cc5e --- /dev/null +++ b/lib/msun/amd64/e_fmodf.S @@ -0,0 +1,22 @@ +/* + * Based on the i387 version written by J.T. Conklin <jtc@netbsd.org>. + * Public domain. + */ + +#include <machine/asm.h> +ENTRY(fmodf) + movss %xmm0,-4(%rsp) + movss %xmm1,-8(%rsp) + flds -8(%rsp) + flds -4(%rsp) +1: fprem + fstsw %ax + testw $0x400,%ax + jne 1b + fstps -4(%rsp) + movss -4(%rsp),%xmm0 + fstp %st + ret +END(fmodf) + + .section .note.GNU-stack,"",%progbits |