OpenLibm/i387/s_tan.S

36 lines
501 B
ArmAsm
Raw Normal View History

/*
* Written by:
* J.T. Conklin (jtc@netbsd.org)
* Public domain.
*/
#include <i387/bsd_asm.h>
2011-12-15 07:16:26 +01:00
//__FBSDID("$FreeBSD: src/lib/msun/i387/s_tan.S,v 1.9 2011/01/07 16:13:12 kib Exp $")
ENTRY(tan)
fldl 4(%esp)
fptan
fnstsw %ax
andw $0x400,%ax
jnz 1f
fstp %st(0)
ret
1: fldpi
fadd %st(0)
fxch %st(1)
2: fprem1
fstsw %ax
andw $0x400,%ax
jnz 2b
fstp %st(1)
fptan
fstp %st(0)
ret
END(tan)
/* Enable stack protection */
#if defined(__ELF__)
.section .note.GNU-stack,"",%progbits
#endif