xref: /netbsd/lib/libc/arch/x86_64/gen/fpsetsticky.S (revision bf9ec67e)
1/*	$NetBSD: fpsetsticky.S,v 1.2 2002/01/13 21:45:52 thorpej Exp $	*/
2
3/*
4 * Written by Charles M. Hannum, Apr 9, 1995
5 * Public domain.
6 */
7
8#include <machine/asm.h>
9
10#ifdef WEAK_ALIAS
11WEAK_ALIAS(fpsetsticky, _fpsetsticky)
12ENTRY(_fpsetsticky)
13#else
14ENTRY(fpsetsticky)
15#endif
16	fnstenv -28(%rsp)
17	movl -24(%rsp),%eax
18	movl %eax,%edx
19
20	andl $63,%eax
21
22	subl %eax,%edx
23	andl $63,%edi
24	addl %edi,%edx
25	movl %edx,-24(%rsp)
26	fldenv -28(%rsp)
27	ret
28