diff options
Diffstat (limited to 'sysdeps/i386/fpu/e_asin.S')
-rw-r--r-- | sysdeps/i386/fpu/e_asin.S | 25 |
1 files changed, 4 insertions, 21 deletions
diff --git a/sysdeps/i386/fpu/e_asin.S b/sysdeps/i386/fpu/e_asin.S index ea8cb6f1b2..39c8b47da4 100644 --- a/sysdeps/i386/fpu/e_asin.S +++ b/sysdeps/i386/fpu/e_asin.S @@ -4,15 +4,11 @@ */ #include <machine/asm.h> +#include <i386-math-asm.h> RCSID("$NetBSD: e_asin.S,v 1.4 1995/05/08 23:45:40 jtc Exp $") - .section .rodata.cst8,"aM",@progbits,8 - - .p2align 3 - .type dbl_min,@object -dbl_min: .byte 0, 0, 0, 0, 0, 0, 0x10, 0 - ASM_SIZE_DIRECTIVE(dbl_min) +DEFINE_DBL_MIN #ifdef PIC # define MO(op) op##@GOTOFF(%ecx) @@ -36,20 +32,7 @@ ENTRY(__ieee754_asin) fmulp /* 1 - x^2 */ fsqrt /* sqrt (1 - x^2) */ fpatan - fldl MO(dbl_min) - fld %st(1) - fabs - fucompp - fnstsw - sahf - jnc 1f - subl $8, %esp - cfi_adjust_cfa_offset (8) - fld %st(0) - fmul %st(0) - fstpl (%esp) - addl $8, %esp - cfi_adjust_cfa_offset (-8) -1: ret + DBL_CHECK_FORCE_UFLOW + ret END (__ieee754_asin) strong_alias (__ieee754_asin, __asin_finite) |