sortix-mirror/libm/arch/i387/fpsetprec.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

35 lines
490 B
ArmAsm

/* $NetBSD: fpsetprec.S,v 1.1 2011/03/26 19:51:41 christos Exp $ */
/*
* Written by Charles M. Hannum, Apr 9, 1995
* Public domain.
*/
#include <machine/asm.h>
#ifdef WEAK_ALIAS
WEAK_ALIAS(fpsetprec, _fpsetprec)
ENTRY(_fpsetprec)
#else
ENTRY(fpsetprec)
#endif
subl $4,%esp
fnstcw (%esp)
movl (%esp),%eax
rorl $8,%eax
movl %eax,%edx
andl $3,%eax
subl %eax,%edx
movl 8(%esp),%ecx
andl $3,%ecx
orl %ecx,%edx
roll $8,%edx
movl %edx,(%esp)
fldcw (%esp)
addl $4,%esp
ret