xref: /relibc/openlibm/amd64/e_remainderf.S (revision 4f5112ea59cd2488b806c68b41e95dc31ebc8f0b)
1/*
2 * Based on the i387 version written by J.T. Conklin <jtc@netbsd.org>.
3 * Public domain.
4 */
5
6#include <amd64/bsd_asm.h>
7
8//RCSID("from: $NetBSD: e_remainderf.S,v 1.2 1995/05/08 23:49:47 jtc Exp $")
9//__FBSDID("$FreeBSD: src/lib/msun/amd64/e_remainderf.S,v 1.2 2011/01/07 16:13:12 kib Exp $")
10
11ENTRY(remainderf)
12	movss	%xmm0,-4(%rsp)
13	movss	%xmm1,-8(%rsp)
14	flds	-8(%rsp)
15	flds	-4(%rsp)
161:	fprem1
17	fstsw	%ax
18	testw	$0x400,%ax
19	jne	1b
20	fstps	-4(%rsp)
21	movss	-4(%rsp),%xmm0
22	fstp	%st
23	ret
24
25
26/* Enable stack protection */
27#if defined(__ELF__)
28.section .note.GNU-stack,"",%progbits
29#endif
30