diff options
Diffstat (limited to 'sysdeps/i386/fpu/e_asinf.S')
-rw-r--r-- | sysdeps/i386/fpu/e_asinf.S | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/sysdeps/i386/fpu/e_asinf.S b/sysdeps/i386/fpu/e_asinf.S index f7bda77fa6..1102bdedfd 100644 --- a/sysdeps/i386/fpu/e_asinf.S +++ b/sysdeps/i386/fpu/e_asinf.S @@ -5,15 +5,13 @@ */ #include <machine/asm.h> +#include <i386-math-asm.h> RCSID("$NetBSD: $") .section .rodata.cst4,"aM",@progbits,4 - .p2align 2 - .type flt_min,@object -flt_min: .byte 0, 0, 0x80, 0 - ASM_SIZE_DIRECTIVE(flt_min) +DEFINE_FLT_MIN #ifdef PIC # define MO(op) op##@GOTOFF(%ecx) @@ -35,20 +33,7 @@ ENTRY(__ieee754_asinf) fsubp /* 1 - x^2 */ fsqrt /* sqrt (1 - x^2) */ fpatan - flds MO(flt_min) - fld %st(1) - fabs - fucompp - fnstsw - sahf - jnc 1f - subl $4, %esp - cfi_adjust_cfa_offset (4) - fld %st(0) - fmul %st(0) - fstps (%esp) - addl $4, %esp - cfi_adjust_cfa_offset (-4) -1: ret + FLT_CHECK_FORCE_UFLOW + ret END (__ieee754_asinf) strong_alias (__ieee754_asinf, __asinf_finite) |