]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/i386/fpu/s_log1p.S
(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.
[thirdparty/glibc.git] / sysdeps / i386 / fpu / s_log1p.S
CommitLineData
f7eac6eb
RM
1/*
2 * Written by J.T. Conklin <jtc@netbsd.org>.
3 * Public domain.
4 */
5
6#include <machine/asm.h>
7
8RCSID("$NetBSD: s_log1p.S,v 1.7 1995/05/09 00:10:58 jtc Exp $")
9
d38cd08c
UD
10#ifdef __ELF__
11 .section .rodata
12#else
13 .text
14#endif
15 .align ALIGNARG(4)
16 /* The fyl2xp1 can only be used for values in
17 -1 + sqrt(2) / 2 <= x <= 1 - sqrt(2) / 2
18 0.29 is a safe value.
19 */
20limit: .double 0.29
21one: .double 1.0
22
f7eac6eb 23/*
d38cd08c
UD
24 * Use the fyl2xp1 function when the argument is in the range -0.29 to 0.29,
25 * otherwise fyl2x with the needed extra computation.
f7eac6eb 26 */
d38cd08c 27 .text
f7eac6eb
RM
28ENTRY(__log1p)
29 fldln2
d38cd08c
UD
30
31 fldl 4(%esp)
32
33#ifdef PIC
a334319f
UD
34 call 1f
351: popl %edx
36 addl $_GLOBAL_OFFSET_TABLE_+[.-1b], %edx
d38cd08c
UD
37#endif
38
15daa639
UD
39 fxam
40 fnstsw
d38cd08c 41 fld %st
15daa639
UD
42 sahf
43