diff options
Diffstat (limited to 'sysdeps/i386/fpu/s_frexpl.S')
-rw-r--r-- | sysdeps/i386/fpu/s_frexpl.S | 23 |
1 files changed, 2 insertions, 21 deletions
diff --git a/sysdeps/i386/fpu/s_frexpl.S b/sysdeps/i386/fpu/s_frexpl.S index 2645d22..56b1456 100644 --- a/sysdeps/i386/fpu/s_frexpl.S +++ b/sysdeps/i386/fpu/s_frexpl.S @@ -1,5 +1,5 @@ /* ix87 specific frexp implementation for long double. - Copyright (C) 1997, 2000 Free Software Foundation, Inc. + Copyright (C) 1997, 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. @@ -32,12 +32,6 @@ ASM_TYPE_DIRECTIVE(two64,@object) two64: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x43 ASM_SIZE_DIRECTIVE(two64) - /* The following is LDBL_MAX / ldexp (1.0, 64), the largest - number we can handle the normal way. */ - ASM_TYPE_DIRECTIVE(largest,@object) -largest: - .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbe, 0x7f, 0, 0 - ASM_SIZE_DIRECTIVE(largest) #ifdef PIC #define MO(op) op##@GOTOFF(%edx) @@ -67,10 +61,7 @@ ENTRY (BP_SYM (__frexpl)) je 1f cmpl $0, %eax - je 2f - - cmpl $0x7fbe, %eax - ja 4f + jne 2f fldt VAL0(%esp) #ifdef PIC @@ -102,15 +93,5 @@ ENTRY (BP_SYM (__frexpl)) LEAVE ret - -4: movl VAL2(%esp), %ecx - movl %ecx, %edx - andl $0x7fff, %ecx - - andl $0x8000, %edx - subl $16382, %ecx - orl $0x3ffe, %edx - movl %edx, VAL2(%esp) - jmp 1b END (BP_SYM (__frexpl)) weak_alias (BP_SYM (__frexpl), BP_SYM (frexpl)) |