1
0
Fork 0
mirror of https://gitlab.com/sortix/sortix.git synced 2023-02-13 20:55:38 -05:00
sortix--sortix/libm/arch/i387/fpsetsticky.S
Jonas 'Sortie' Termansen 5980be9b3c Add Sortix Math Library.
This work is based in part on code from NetBSD libm, libc and kernel.

The library is partly public domain and partly BSD-style licensed.
2013-12-17 14:30:39 +01:00

32 lines
481 B
ArmAsm

/* $NetBSD: fpsetsticky.S,v 1.6 2002/01/13 21:45:43 thorpej Exp $ */
/*
* Written by Charles M. Hannum, Apr 9, 1995
* Public domain.
*/
#include <machine/asm.h>
#ifdef WEAK_ALIAS
WEAK_ALIAS(fpsetsticky, _fpsetsticky)
ENTRY(_fpsetsticky)
#else
ENTRY(fpsetsticky)
#endif
subl $28,%esp
fnstenv (%esp)
movl 4(%esp),%eax
movl %eax,%edx
andl $63,%eax
subl %eax,%edx
movl 32(%esp),%ecx
andl $63,%ecx
addl %ecx,%edx
movl %edx,4(%esp)
fldenv (%esp)
addl $28,%esp
ret