aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/libm-i387
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/libm-i387')
-rw-r--r--sysdeps/libm-i387/e_acos.S3
-rw-r--r--sysdeps/libm-i387/e_acosl.S3
-rw-r--r--sysdeps/libm-i387/e_asin.S1
-rw-r--r--sysdeps/libm-i387/e_asinl.S1
-rw-r--r--sysdeps/libm-i387/e_atan2.S1
-rw-r--r--sysdeps/libm-i387/e_atan2f.S1
-rw-r--r--sysdeps/libm-i387/e_atan2l.S1
-rw-r--r--sysdeps/libm-i387/e_exp.S2
-rw-r--r--sysdeps/libm-i387/e_expl.S2
-rw-r--r--sysdeps/libm-i387/e_fmod.S1
-rw-r--r--sysdeps/libm-i387/e_fmodl.S1
-rw-r--r--sysdeps/libm-i387/e_log.S1
-rw-r--r--sysdeps/libm-i387/e_log10.S1
-rw-r--r--sysdeps/libm-i387/e_log10l.S1
-rw-r--r--sysdeps/libm-i387/e_logl.S1
-rw-r--r--sysdeps/libm-i387/e_remainder.S1
-rw-r--r--sysdeps/libm-i387/e_remainderf.S1
-rw-r--r--sysdeps/libm-i387/e_remainderl.S1
-rw-r--r--sysdeps/libm-i387/e_scalb.S1
-rw-r--r--sysdeps/libm-i387/e_scalbl.S1
-rw-r--r--sysdeps/libm-i387/e_sqrt.S1
-rw-r--r--sysdeps/libm-i387/e_sqrtf.S1
-rw-r--r--sysdeps/libm-i387/e_sqrtl.S1
-rw-r--r--sysdeps/libm-i387/s_atan.S1
-rw-r--r--sysdeps/libm-i387/s_atanf.S1
-rw-r--r--sysdeps/libm-i387/s_atanl.S1
-rw-r--r--sysdeps/libm-i387/s_ceil.S13
-rw-r--r--sysdeps/libm-i387/s_ceilf.S13
-rw-r--r--sysdeps/libm-i387/s_ceill.S13
-rw-r--r--sysdeps/libm-i387/s_copysign.S3
-rw-r--r--sysdeps/libm-i387/s_copysignf.S3
-rw-r--r--sysdeps/libm-i387/s_copysignl.S3
-rw-r--r--sysdeps/libm-i387/s_cos.S3
-rw-r--r--sysdeps/libm-i387/s_cosf.S3
-rw-r--r--sysdeps/libm-i387/s_cosl.S1
-rw-r--r--sysdeps/libm-i387/s_finite.S1
-rw-r--r--sysdeps/libm-i387/s_finitef.S1
-rw-r--r--sysdeps/libm-i387/s_finitel.S1
-rw-r--r--sysdeps/libm-i387/s_floor.S1
-rw-r--r--sysdeps/libm-i387/s_floorf.S1
-rw-r--r--sysdeps/libm-i387/s_floorl.S1
-rw-r--r--sysdeps/libm-i387/s_ilogb.S1
-rw-r--r--sysdeps/libm-i387/s_ilogbf.S1
-rw-r--r--sysdeps/libm-i387/s_ilogbl.S1
-rw-r--r--sysdeps/libm-i387/s_log1p.S3
-rw-r--r--sysdeps/libm-i387/s_log1pf.S3
-rw-r--r--sysdeps/libm-i387/s_log1pl.S1
-rw-r--r--sysdeps/libm-i387/s_logb.S1
-rw-r--r--sysdeps/libm-i387/s_logbf.S1
-rw-r--r--sysdeps/libm-i387/s_logbl.S1
-rw-r--r--sysdeps/libm-i387/s_rint.S1
-rw-r--r--sysdeps/libm-i387/s_rintf.S1
-rw-r--r--sysdeps/libm-i387/s_rintl.S1
-rw-r--r--sysdeps/libm-i387/s_scalbn.S1
-rw-r--r--sysdeps/libm-i387/s_scalbnf.S1
-rw-r--r--sysdeps/libm-i387/s_scalbnl.S1
-rw-r--r--sysdeps/libm-i387/s_significand.S1
-rw-r--r--sysdeps/libm-i387/s_significandf.S1
-rw-r--r--sysdeps/libm-i387/s_significandl.S3
-rw-r--r--sysdeps/libm-i387/s_sin.S1
-rw-r--r--sysdeps/libm-i387/s_sinf.S1
-rw-r--r--sysdeps/libm-i387/s_sinl.S1
-rw-r--r--sysdeps/libm-i387/s_tan.S1
-rw-r--r--sysdeps/libm-i387/s_tanf.S1
-rw-r--r--sysdeps/libm-i387/s_tanl.S1
65 files changed, 101 insertions, 22 deletions
diff --git a/sysdeps/libm-i387/e_acos.S b/sysdeps/libm-i387/e_acos.S
index 6ec7785..c9fa810 100644
--- a/sysdeps/libm-i387/e_acos.S
+++ b/sysdeps/libm-i387/e_acos.S
@@ -12,9 +12,10 @@ ENTRY(__ieee754_acos)
fldl 4(%esp) /* x */
fst %st(1)
fmul %st(0) /* x^2 */
- fld1
+ fld1
fsubp /* 1 - x^2 */
fsqrt /* sqrt (1 - x^2) */
fxch %st(1)
fpatan
ret
+PSEUDO_END (__ieee754_acos)
diff --git a/sysdeps/libm-i387/e_acosl.S b/sysdeps/libm-i387/e_acosl.S
index 3779fa7..4cc56c0 100644
--- a/sysdeps/libm-i387/e_acosl.S
+++ b/sysdeps/libm-i387/e_acosl.S
@@ -9,7 +9,7 @@
/* acosl = atanl (sqrtl(1 - x^2) / x) */
-ENTRY(__ieee754_acos)
+ENTRY(__ieee754_acosl)
fldt 4(%esp) /* x */
fst %st(1)
fmul %st(0) /* x^2 */
@@ -19,3 +19,4 @@ ENTRY(__ieee754_acos)
fxch %st(1)
fpatan
ret
+PSEUDO_END (__ieee754_acosl)
diff --git a/sysdeps/libm-i387/e_asin.S b/sysdeps/libm-i387/e_asin.S
index dfcd7bc..cba4193 100644
--- a/sysdeps/libm-i387/e_asin.S
+++ b/sysdeps/libm-i387/e_asin.S
@@ -17,3 +17,4 @@ ENTRY(__ieee754_asin)
fsqrt /* sqrt (1 - x^2) */
fpatan
ret
+PSEUDO_END (__ieee754_asin)
diff --git a/sysdeps/libm-i387/e_asinl.S b/sysdeps/libm-i387/e_asinl.S
index 7a90c3e..d4e2548 100644
--- a/sysdeps/libm-i387/e_asinl.S
+++ b/sysdeps/libm-i387/e_asinl.S
@@ -19,3 +19,4 @@ ENTRY(__ieee754_asinl)
fsqrt /* sqrt (1 - x^2) */
fpatan
ret
+PSEUDO_END (__ieee754_asinl)
diff --git a/sysdeps/libm-i387/e_atan2.S b/sysdeps/libm-i387/e_atan2.S
index da2e119..6f7fc74 100644
--- a/sysdeps/libm-i387/e_atan2.S
+++ b/sysdeps/libm-i387/e_atan2.S
@@ -12,3 +12,4 @@ ENTRY(__ieee754_atan2)
fldl 12(%esp)
fpatan
ret
+PSEUDO_END (__ieee754_atan2)
diff --git a/sysdeps/libm-i387/e_atan2f.S b/sysdeps/libm-i387/e_atan2f.S
index 21fc0d9..bb6d902 100644
--- a/sysdeps/libm-i387/e_atan2f.S
+++ b/sysdeps/libm-i387/e_atan2f.S
@@ -12,3 +12,4 @@ ENTRY(__ieee754_atan2f)
flds 8(%esp)
fpatan
ret
+PSEUDO_END (__ieee754_atan2f)
diff --git a/sysdeps/libm-i387/e_atan2l.S b/sysdeps/libm-i387/e_atan2l.S
index 748571e..860885c 100644
--- a/sysdeps/libm-i387/e_atan2l.S
+++ b/sysdeps/libm-i387/e_atan2l.S
@@ -14,3 +14,4 @@ ENTRY(__ieee754_atan2l)
fldt 16(%esp)
fpatan
ret
+PSEUDO_END (__ieee754_atan2l)
diff --git a/sysdeps/libm-i387/e_exp.S b/sysdeps/libm-i387/e_exp.S
index 144748e..dad201f 100644
--- a/sysdeps/libm-i387/e_exp.S
+++ b/sysdeps/libm-i387/e_exp.S
@@ -12,6 +12,7 @@ ENTRY(__ieee754_exp)
fldl 4(%esp)
/* I added the following ugly construct because exp(+-Inf) resulted
in NaN. The ugliness results from the bright minds at Intel.
+ For the i686 the code can be written better.
-- drepper@cygnus.com. */
fxam /* Is NaN or +-Inf? */
fstsw %ax
@@ -36,3 +37,4 @@ ENTRY(__ieee754_exp)
jz .LpInf /* If positive, jump. */
fldz /* Set result to 0. */
.LpInf: ret
+PSEUDO_END (__ieee754_exp)
diff --git a/sysdeps/libm-i387/e_expl.S b/sysdeps/libm-i387/e_expl.S
index d140898..2884efa 100644
--- a/sysdeps/libm-i387/e_expl.S
+++ b/sysdeps/libm-i387/e_expl.S
@@ -14,6 +14,7 @@ ENTRY(__ieee754_expl)
fldt 4(%esp)
/* I added the following ugly construct because expl(+-Inf) resulted
in NaN. The ugliness results from the bright minds at Intel.
+ For the i686 the code can be written better.
-- drepper@cygnus.com. */
fxam /* Is NaN or +-Inf? */
fstsw %ax
@@ -38,3 +39,4 @@ ENTRY(__ieee754_expl)
jz .LpInf /* If positive, jump. */
fldz /* Set result to 0. */
.LpInf: ret
+PSEUDO_END (__ieee754_expl)
diff --git a/sysdeps/libm-i387/e_fmod.S b/sysdeps/libm-i387/e_fmod.S
index c02df44..c4d7535 100644
--- a/sysdeps/libm-i387/e_fmod.S
+++ b/sysdeps/libm-i387/e_fmod.S
@@ -16,3 +16,4 @@ ENTRY(__ieee754_fmod)
jp 1b
fstpl %st(1)
ret
+PSEUDO_END (__ieee754_fmod)
diff --git a/sysdeps/libm-i387/e_fmodl.S b/sysdeps/libm-i387/e_fmodl.S
index 75ed17b..8c2bd06 100644
--- a/sysdeps/libm-i387/e_fmodl.S
+++ b/sysdeps/libm-i387/e_fmodl.S
@@ -18,3 +18,4 @@ ENTRY(__ieee754_fmodl)
jp 1b
fstpl %st(1)
ret
+PSEUDO_END (__ieee754_fmodl)
diff --git a/sysdeps/libm-i387/e_log.S b/sysdeps/libm-i387/e_log.S
index 98d569e..2a51d75 100644
--- a/sysdeps/libm-i387/e_log.S
+++ b/sysdeps/libm-i387/e_log.S
@@ -12,3 +12,4 @@ ENTRY(__ieee754_log)
fldl 4(%esp)
fyl2x
ret
+PSEUDO_END (__ieee754_log)
diff --git a/sysdeps/libm-i387/e_log10.S b/sysdeps/libm-i387/e_log10.S
index 612344b..17b3067 100644
--- a/sysdeps/libm-i387/e_log10.S
+++ b/sysdeps/libm-i387/e_log10.S
@@ -12,3 +12,4 @@ ENTRY(__ieee754_log10)
fldl 4(%esp)
fyl2x
ret
+PSEUDO_END (__ieee754_log10)
diff --git a/sysdeps/libm-i387/e_log10l.S b/sysdeps/libm-i387/e_log10l.S
index 0a19256..cfddb5c 100644
--- a/sysdeps/libm-i387/e_log10l.S
+++ b/sysdeps/libm-i387/e_log10l.S
@@ -14,3 +14,4 @@ ENTRY(__ieee754_log10l)
fldt 4(%esp)
fyl2x
ret
+PSEUDO_END(__ieee754_log10l)
diff --git a/sysdeps/libm-i387/e_logl.S b/sysdeps/libm-i387/e_logl.S
index 2575d6c..4c1550e 100644
--- a/sysdeps/libm-i387/e_logl.S
+++ b/sysdeps/libm-i387/e_logl.S
@@ -14,3 +14,4 @@ ENTRY(__ieee754_logl)
fldt 4(%esp)
fyl2x
ret
+PSEUDO_END(__ieee754_logl)
diff --git a/sysdeps/libm-i387/e_remainder.S b/sysdeps/libm-i387/e_remainder.S
index d14f2e8..287b616 100644
--- a/sysdeps/libm-i387/e_remainder.S
+++ b/sysdeps/libm-i387/e_remainder.S
@@ -16,3 +16,4 @@ ENTRY(__ieee754_remainder)
jp 1b
fstpl %st(1)
ret
+PSEUDO_END (__ieee754_remainder)
diff --git a/sysdeps/libm-i387/e_remainderf.S b/sysdeps/libm-i387/e_remainderf.S
index ed578ea..cdc1ac8 100644
--- a/sysdeps/libm-i387/e_remainderf.S
+++ b/sysdeps/libm-i387/e_remainderf.S
@@ -16,3 +16,4 @@ ENTRY(__ieee754_remainderf)
jp 1b
fstpl %st(1)
ret
+PSEUDO_END (__ieee754_remainderf)
diff --git a/sysdeps/libm-i387/e_remainderl.S b/sysdeps/libm-i387/e_remainderl.S
index ce98515..2c32550 100644
--- a/sysdeps/libm-i387/e_remainderl.S
+++ b/sysdeps/libm-i387/e_remainderl.S
@@ -17,3 +17,4 @@ ENTRY(__ieee754_remainderl)
sahf
jp 1b
ret
+PSEUDO_END (__ieee754_remainderl)
diff --git a/sysdeps/libm-i387/e_scalb.S b/sysdeps/libm-i387/e_scalb.S
index 7d95f8e..0aed96d 100644
--- a/sysdeps/libm-i387/e_scalb.S
+++ b/sysdeps/libm-i387/e_scalb.S
@@ -12,3 +12,4 @@ ENTRY(__ieee754_scalb)
fldl 4(%esp)
fscale
ret
+PSEUDO_END(__ieee754_scalb)
diff --git a/sysdeps/libm-i387/e_scalbl.S b/sysdeps/libm-i387/e_scalbl.S
index 8d5cd3b..40d6ff0 100644
--- a/sysdeps/libm-i387/e_scalbl.S
+++ b/sysdeps/libm-i387/e_scalbl.S
@@ -14,3 +14,4 @@ ENTRY(__ieee754_scalbl)
fldt 4(%esp)
fscale
ret
+PSEUDO_END(__ieee754_scalbl)
diff --git a/sysdeps/libm-i387/e_sqrt.S b/sysdeps/libm-i387/e_sqrt.S
index 34fe9b7..170363f 100644
--- a/sysdeps/libm-i387/e_sqrt.S
+++ b/sysdeps/libm-i387/e_sqrt.S
@@ -11,3 +11,4 @@ ENTRY(__ieee754_sqrt)
fldl 4(%esp)
fsqrt
ret
+PSEUDO_END (__ieee754_sqrt)
diff --git a/sysdeps/libm-i387/e_sqrtf.S b/sysdeps/libm-i387/e_sqrtf.S
index d20c4c1..f13c129 100644
--- a/sysdeps/libm-i387/e_sqrtf.S
+++ b/sysdeps/libm-i387/e_sqrtf.S
@@ -11,3 +11,4 @@ ENTRY(__ieee754_sqrtf)
flds 4(%esp)
fsqrt
ret
+PSEUDO_END (__ieee754_sqrtf)
diff --git a/sysdeps/libm-i387/e_sqrtl.S b/sysdeps/libm-i387/e_sqrtl.S
index 88e5f82..56947e1 100644
--- a/sysdeps/libm-i387/e_sqrtl.S
+++ b/sysdeps/libm-i387/e_sqrtl.S
@@ -13,3 +13,4 @@ ENTRY(__ieee754_sqrtl)
fldt 4(%esp)
fsqrt
ret
+PSEUDO_END (__ieee754_sqrtl)
diff --git a/sysdeps/libm-i387/s_atan.S b/sysdeps/libm-i387/s_atan.S
index 4dcd54f..f670031 100644
--- a/sysdeps/libm-i387/s_atan.S
+++ b/sysdeps/libm-i387/s_atan.S
@@ -12,4 +12,5 @@ ENTRY(__atan)
fld1
fpatan
ret
+PSEUDO_END (__atan)
weak_alias (__atan, atan)
diff --git a/sysdeps/libm-i387/s_atanf.S b/sysdeps/libm-i387/s_atanf.S
index d00593d..803b7f9 100644
--- a/sysdeps/libm-i387/s_atanf.S
+++ b/sysdeps/libm-i387/s_atanf.S
@@ -12,4 +12,5 @@ ENTRY(__atanf)
fld1
fpatan
ret
+PSEUDO_END (__atanf)
weak_alias (__atanf, atanf)
diff --git a/sysdeps/libm-i387/s_atanl.S b/sysdeps/libm-i387/s_atanl.S
index 867e60b..59f1390 100644
--- a/sysdeps/libm-i387/s_atanl.S
+++ b/sysdeps/libm-i387/s_atanl.S
@@ -14,4 +14,5 @@ ENTRY(__atanl)
fld1
fpatan
ret
+PSEUDO_END (__atanl)
weak_alias (__atanl, atanl)
diff --git a/sysdeps/libm-i387/s_ceil.S b/sysdeps/libm-i387/s_ceil.S
index eabe662..a500b07 100644
--- a/sysdeps/libm-i387/s_ceil.S
+++ b/sysdeps/libm-i387/s_ceil.S
@@ -13,10 +13,14 @@ ENTRY(__ceil)
subl $8,%esp
fstcw -4(%ebp) /* store fpu control word */
- movw -4(%ebp),%dx
- orw $0x0800,%dx /* round towards +oo */
- andw $0xfbff,%dx
- movw %dx,-8(%ebp)
+
+ /* We use here %edx although only the low 1 bits are defined.
+ But none of the operations should care and they are faster
+ than the 16 bit operations. */
+ movl -4(%ebp),%edx
+ orl $0x0800,%edx /* round towards +oo */
+ andl $0xfbff,%edx
+ movl %edx,-8(%ebp)
fldcw -8(%ebp) /* load modfied control word */
fldl 8(%ebp); /* round */
@@ -26,4 +30,5 @@ ENTRY(__ceil)
leave
ret
+PSEUDO_END (__ceil)
weak_alias (__ceil, ceil)
diff --git a/sysdeps/libm-i387/s_ceilf.S b/sysdeps/libm-i387/s_ceilf.S
index c2163ab..4789b01 100644
--- a/sysdeps/libm-i387/s_ceilf.S
+++ b/sysdeps/libm-i387/s_ceilf.S
@@ -13,10 +13,14 @@ ENTRY(__ceilf)
subl $8,%esp
fstcw -4(%ebp) /* store fpu control word */
- movw -4(%ebp),%dx
- orw $0x0800,%dx /* round towards +oo */
- andw $0xfbff,%dx
- movw %dx,-8(%ebp)
+
+ /* We use here %edx although only the low 1 bits are defined.
+ But none of the operations should care and they are faster
+ than the 16 bit operations. */
+ movl -4(%ebp),%edx
+ orl $0x0800,%edx /* round towards +oo */
+ andl $0xfbff,%edx
+ movl %edx,-8(%ebp)
fldcw -8(%ebp) /* load modfied control word */
flds 8(%ebp); /* round */
@@ -26,4 +30,5 @@ ENTRY(__ceilf)
leave
ret
+PSEUDO_END (__ceilf)
weak_alias (__ceilf, ceilf)
diff --git a/sysdeps/libm-i387/s_ceill.S b/sysdeps/libm-i387/s_ceill.S
index fd7bd38..a02a547 100644
--- a/sysdeps/libm-i387/s_ceill.S
+++ b/sysdeps/libm-i387/s_ceill.S
@@ -14,10 +14,14 @@ ENTRY(__ceill)
subl $8,%esp
fstcw -4(%ebp) /* store fpu control word */
- movw -4(%ebp),%dx
- orw $0x0800,%dx /* round towards +oo */
- andw $0xfbff,%dx
- movw %dx,-8(%ebp)
+
+ /* We use here %edx although only the low 1 bits are defined.
+ But none of the operations should care and they are faster
+ than the 16 bit operations. */
+ movl -4(%ebp),%edx
+ orl $0x0800,%edx /* round towards +oo */
+ andl $0xfbff,%edx
+ movl %edx,-8(%ebp)
fldcw -8(%ebp) /* load modfied control word */
fldt 8(%ebp); /* round */
@@ -27,4 +31,5 @@ ENTRY(__ceill)
leave
ret
+PSEUDO_END (__ceill)
weak_alias (__ceill, ceill)
diff --git a/sysdeps/libm-i387/s_copysign.S b/sysdeps/libm-i387/s_copysign.S
index 0de3aff..45b86f5 100644
--- a/sysdeps/libm-i387/s_copysign.S
+++ b/sysdeps/libm-i387/s_copysign.S
@@ -9,11 +9,12 @@ RCSID("$NetBSD: s_copysign.S,v 1.4 1995/05/08 23:53:02 jtc Exp $")
ENTRY(__copysign)
movl 16(%esp),%edx
- andl $0x80000000,%edx
movl 8(%esp),%eax
+ andl $0x80000000,%edx
andl $0x7fffffff,%eax
orl %edx,%eax
movl %eax,8(%esp)
fldl 4(%esp)
ret
+PSEUDO_END (__copysign)
weak_alias (__copysign, copysign)
diff --git a/sysdeps/libm-i387/s_copysignf.S b/sysdeps/libm-i387/s_copysignf.S
index a55cd37..4844a2b 100644
--- a/sysdeps/libm-i387/s_copysignf.S
+++ b/sysdeps/libm-i387/s_copysignf.S
@@ -9,11 +9,12 @@ RCSID("$NetBSD: s_copysignf.S,v 1.3 1995/05/08 23:53:25 jtc Exp $")
ENTRY(__copysignf)
movl 8(%esp),%edx
- andl $0x80000000,%edx
movl 4(%esp),%eax
+ andl $0x80000000,%edx
andl $0x7fffffff,%eax
orl %edx,%eax
movl %eax,4(%esp)
flds 4(%esp)
ret
+PSEUDO_END (__copysignf)
weak_alias (__copysignf, copysignf)
diff --git a/sysdeps/libm-i387/s_copysignl.S b/sysdeps/libm-i387/s_copysignl.S
index f65f684..37e34fe 100644
--- a/sysdeps/libm-i387/s_copysignl.S
+++ b/sysdeps/libm-i387/s_copysignl.S
@@ -15,6 +15,7 @@ ENTRY(__copysignl)
andl $0x7fff,%eax
orl %edx,%eax
movl %eax,12(%esp)
- fldl 4(%esp)
+ fldt 4(%esp)
ret
+PSEUDO_END (__copysignl)
weak_alias (__copysignl, copysignl)
diff --git a/sysdeps/libm-i387/s_cos.S b/sysdeps/libm-i387/s_cos.S
index 0ccf8bc..6b47e80 100644
--- a/sysdeps/libm-i387/s_cos.S
+++ b/sysdeps/libm-i387/s_cos.S
@@ -13,7 +13,7 @@ ENTRY(__cos)
fnstsw %ax
andw $0x400,%ax
jnz 1f
- ret
+ ret
1: fldpi
fadd %st(0)
fxch %st(1)
@@ -24,4 +24,5 @@ ENTRY(__cos)
fstp %st(1)
fcos
ret
+PSEUDO_END (__cos)
weak_alias (__cos, cos)
diff --git a/sysdeps/libm-i387/s_cosf.S b/sysdeps/libm-i387/s_cosf.S
index a200e04..a2bd0e5 100644
--- a/sysdeps/libm-i387/s_cosf.S
+++ b/sysdeps/libm-i387/s_cosf.S
@@ -11,5 +11,6 @@ RCSID("$NetBSD: s_cosf.S,v 1.3 1995/05/08 23:55:16 jtc Exp $")
ENTRY(__cosf)
flds 4(%esp)
fcos
- ret
+ ret
+PSEUDO_END (__cosf)
weak_alias (__cosf, cosf)
diff --git a/sysdeps/libm-i387/s_cosl.S b/sysdeps/libm-i387/s_cosl.S
index e2c2242..2ddb549 100644
--- a/sysdeps/libm-i387/s_cosl.S
+++ b/sysdeps/libm-i387/s_cosl.S
@@ -26,4 +26,5 @@ ENTRY(__cosl)
fstp %st(1)
fcos
ret
+PSEUDO_END (__cosl)
weak_alias (__cosl, cosl)
diff --git a/sysdeps/libm-i387/s_finite.S b/sysdeps/libm-i387/s_finite.S
index 233155e..538fec9 100644
--- a/sysdeps/libm-i387/s_finite.S
+++ b/sysdeps/libm-i387/s_finite.S
@@ -14,4 +14,5 @@ ENTRY(__finite)
setne %al
andl $0x000000ff, %eax
ret
+PSEUDO_END (__finite)
weak_alias (__finite, finite)
diff --git a/sysdeps/libm-i387/s_finitef.S b/sysdeps/libm-i387/s_finitef.S
index 28a0a40..cb0caab 100644
--- a/sysdeps/libm-i387/s_finitef.S
+++ b/sysdeps/libm-i387/s_finitef.S
@@ -14,4 +14,5 @@ ENTRY(__finitef)
setne %al
andl $0x000000ff, %eax
ret
+PSEUDO_END (__finitef)
weak_alias (__finitef, finitef)
diff --git a/sysdeps/libm-i387/s_finitel.S b/sysdeps/libm-i387/s_finitel.S
index d163965..7af8047 100644
--- a/sysdeps/libm-i387/s_finitel.S
+++ b/sysdeps/libm-i387/s_finitel.S
@@ -16,4 +16,5 @@ ENTRY(__finitel)
setne %al
andl $0x000000ff, %eax
ret
+PSEUDO_END (__finitel)
weak_alias (__finitel, finitel)
diff --git a/sysdeps/libm-i387/s_floor.S b/sysdeps/libm-i387/s_floor.S
index 66e688f..7599303 100644
--- a/sysdeps/libm-i387/s_floor.S
+++ b/sysdeps/libm-i387/s_floor.S
@@ -26,4 +26,5 @@ ENTRY(__floor)
leave
ret
+PSEUDO_END (__floor)
weak_alias (__floor, floor)
diff --git a/sysdeps/libm-i387/s_floorf.S b/sysdeps/libm-i387/s_floorf.S
index 4b10f74..c45d82e 100644
--- a/sysdeps/libm-i387/s_floorf.S
+++ b/sysdeps/libm-i387/s_floorf.S
@@ -26,4 +26,5 @@ ENTRY(__floorf)
leave
ret
+PSEUDO_END (__floorf)
weak_alias (__floorf, floorf)
diff --git a/sysdeps/libm-i387/s_floorl.S b/sysdeps/libm-i387/s_floorl.S
index af52ffc..ae4ba2e 100644
--- a/sysdeps/libm-i387/s_floorl.S
+++ b/sysdeps/libm-i387/s_floorl.S
@@ -27,4 +27,5 @@ ENTRY(__floorl)
leave
ret
+PSEUDO_END (__floorl)
weak_alias (__floorl, floorl)
diff --git a/sysdeps/libm-i387/s_ilogb.S b/sysdeps/libm-i387/s_ilogb.S
index f11ed58..6fb51d9 100644
--- a/sysdeps/libm-i387/s_ilogb.S
+++ b/sysdeps/libm-i387/s_ilogb.S
@@ -21,4 +21,5 @@ ENTRY(__ilogb)
leave
ret
+PSEUDO_END (__ilogb)
weak_alias (__ilogb, ilogb)
diff --git a/sysdeps/libm-i387/s_ilogbf.S b/sysdeps/libm-i387/s_ilogbf.S
index 5a61d28..71e4f42 100644
--- a/sysdeps/libm-i387/s_ilogbf.S
+++ b/sysdeps/libm-i387/s_ilogbf.S
@@ -21,4 +21,5 @@ ENTRY(__ilogbf)
leave
ret
+PSEUDO_END (__ilogbf)
weak_alias (__ilogbf, ilogbf)
diff --git a/sysdeps/libm-i387/s_ilogbl.S b/sysdeps/libm-i387/s_ilogbl.S
index 11c8101..2b84146 100644
--- a/sysdeps/libm-i387/s_ilogbl.S
+++ b/sysdeps/libm-i387/s_ilogbl.S
@@ -21,4 +21,5 @@ ENTRY(__ilogbl)
leave
ret
+PSEUDO_END (__ilogbl)
weak_alias (__ilogbl, ilogbl)
diff --git a/sysdeps/libm-i387/s_log1p.S b/sysdeps/libm-i387/s_log1p.S
index c4aee4a..ce8665d 100644
--- a/sysdeps/libm-i387/s_log1p.S
+++ b/sysdeps/libm-i387/s_log1p.S
@@ -10,7 +10,7 @@ RCSID("$NetBSD: s_log1p.S,v 1.7 1995/05/09 00:10:58 jtc Exp $")
/*
* Since the fyl2xp1 instruction has such a limited range:
* -(1 - (sqrt(2) / 2)) <= x <= sqrt(2) - 1
- * it's not worth trying to use it.
+ * it's not worth trying to use it.
*/
ENTRY(__log1p)
@@ -20,4 +20,5 @@ ENTRY(__log1p)
faddp
fyl2x
ret
+PSEUDO_END (__log1p)
weak_alias (__log1p, log1p)
diff --git a/sysdeps/libm-i387/s_log1pf.S b/sysdeps/libm-i387/s_log1pf.S
index e268550..7a161f2 100644
--- a/sysdeps/libm-i387/s_log1pf.S
+++ b/sysdeps/libm-i387/s_log1pf.S
@@ -10,7 +10,7 @@ RCSID("$NetBSD: s_log1pf.S,v 1.4 1995/05/09 00:13:05 jtc Exp $")
/*
* Since the fyl2xp1 instruction has such a limited range:
* -(1 - (sqrt(2) / 2)) <= x <= sqrt(2) - 1
- * it's not worth trying to use it.
+ * it's not worth trying to use it.
*/
ENTRY(__log1pf)
@@ -20,4 +20,5 @@ ENTRY(__log1pf)
faddp
fyl2x
ret
+PSEUDO_END (__log1pf)
weak_alias (__log1pf, log1pf)
diff --git a/sysdeps/libm-i387/s_log1pl.S b/sysdeps/libm-i387/s_log1pl.S
index 4a9faf7..647e136 100644
--- a/sysdeps/libm-i387/s_log1pl.S
+++ b/sysdeps/libm-i387/s_log1pl.S
@@ -22,4 +22,5 @@ ENTRY(__log1pl)
faddp
fyl2x
ret
+PSEUDO_END (__log1pl)
weak_alias (__log1pl, log1pl)
diff --git a/sysdeps/libm-i387/s_logb.S b/sysdeps/libm-i387/s_logb.S
index 4f071e0..92d8fee 100644
--- a/sysdeps/libm-i387/s_logb.S
+++ b/sysdeps/libm-i387/s_logb.S
@@ -12,4 +12,5 @@ ENTRY(__logb)
fxtract
fstpl %st
ret
+PSEUDO_END (__logb)
weak_alias (__logb, logb)
diff --git a/sysdeps/libm-i387/s_logbf.S b/sysdeps/libm-i387/s_logbf.S
index ecdd0ae..b557974 100644
--- a/sysdeps/libm-i387/s_logbf.S
+++ b/sysdeps/libm-i387/s_logbf.S
@@ -12,4 +12,5 @@ ENTRY(__logbf)
fxtract
fstpl %st
ret
+PSEUDO_END (__logbf)
weak_alias (__logbf, logbf)
diff --git a/sysdeps/libm-i387/s_logbl.S b/sysdeps/libm-i387/s_logbl.S
index e72b1fb..91bddb6 100644
--- a/sysdeps/libm-i387/s_logbl.S
+++ b/sysdeps/libm-i387/s_logbl.S
@@ -12,4 +12,5 @@ ENTRY(__logbl)
fldt 4(%esp)
fxtract
ret
+PSEUDO_END (__logbl)
weak_alias (__logbl, logbl)
diff --git a/sysdeps/libm-i387/s_rint.S b/sysdeps/libm-i387/s_rint.S
index 2f09a47..9231fef 100644
--- a/sysdeps/libm-i387/s_rint.S
+++ b/sysdeps/libm-i387/s_rint.S
@@ -11,4 +11,5 @@ ENTRY(__rint)
fldl 4(%esp)
frndint
ret
+PSEUDO_END (__rint)
weak_alias (__rint, rint)
diff --git a/sysdeps/libm-i387/s_rintf.S b/sysdeps/libm-i387/s_rintf.S
index de64d79..3e35f2c 100644
--- a/sysdeps/libm-i387/s_rintf.S
+++ b/sysdeps/libm-i387/s_rintf.S
@@ -11,4 +11,5 @@ ENTRY(__rintf)
flds 4(%esp)
frndint
ret
+PSEUDO_END (__rintf)
weak_alias (__rintf, rintf)
diff --git a/sysdeps/libm-i387/s_rintl.S b/sysdeps/libm-i387/s_rintl.S
index aec09a6..a8198d3 100644
--- a/sysdeps/libm-i387/s_rintl.S
+++ b/sysdeps/libm-i387/s_rintl.S
@@ -12,4 +12,5 @@ ENTRY(__rintl)
fldt 4(%esp)
frndint
ret
+PSEUDO_END (__rintl)
weak_alias (__rintl, rintl)
diff --git a/sysdeps/libm-i387/s_scalbn.S b/sysdeps/libm-i387/s_scalbn.S
index 99ecac6..4a41495 100644
--- a/sysdeps/libm-i387/s_scalbn.S
+++ b/sysdeps/libm-i387/s_scalbn.S
@@ -12,4 +12,5 @@ ENTRY(__scalbn)
fldl 4(%esp)
fscale
ret
+PSEUDO_END (__scalbn)
weak_alias (__scalbn, scalbn)
diff --git a/sysdeps/libm-i387/s_scalbnf.S b/sysdeps/libm-i387/s_scalbnf.S
index 0203e91..080304d 100644
--- a/sysdeps/libm-i387/s_scalbnf.S
+++ b/sysdeps/libm-i387/s_scalbnf.S
@@ -12,4 +12,5 @@ ENTRY(__scalbnf)
flds 4(%esp)
fscale
ret
+PSEUDO_END (__scalbnf)
weak_alias (__scalbnf, scalbnf)
diff --git a/sysdeps/libm-i387/s_scalbnl.S b/sysdeps/libm-i387/s_scalbnl.S
index b5fdf82..adf1dea 100644
--- a/sysdeps/libm-i387/s_scalbnl.S
+++ b/sysdeps/libm-i387/s_scalbnl.S
@@ -13,4 +13,5 @@ ENTRY(__scalbnl)
fldt 4(%esp)
fscale
ret
+PSEUDO_END (__scalbnl)
weak_alias (__scalbnl, scalbnl)
diff --git a/sysdeps/libm-i387/s_significand.S b/sysdeps/libm-i387/s_significand.S
index 09f3a0a..ff72b88 100644
--- a/sysdeps/libm-i387/s_significand.S
+++ b/sysdeps/libm-i387/s_significand.S
@@ -12,4 +12,5 @@ ENTRY(__significand)
fxtract
fstpl %st(1)
ret
+PSEUDO_END (__significand)
weak_alias (__significand, significand)
diff --git a/sysdeps/libm-i387/s_significandf.S b/sysdeps/libm-i387/s_significandf.S
index b678bc5..af92886 100644
--- a/sysdeps/libm-i387/s_significandf.S
+++ b/sysdeps/libm-i387/s_significandf.S
@@ -12,4 +12,5 @@ ENTRY(__significandf)
fxtract
fstpl %st(1)
ret
+PSEUDO_END (__significandf)
weak_alias (__significandf, significandf)
diff --git a/sysdeps/libm-i387/s_significandl.S b/sysdeps/libm-i387/s_significandl.S
index e512f54..1483a0d 100644
--- a/sysdeps/libm-i387/s_significandl.S
+++ b/sysdeps/libm-i387/s_significandl.S
@@ -11,6 +11,7 @@ RCSID("$NetBSD: $")
ENTRY(__significandl)
fldt 4(%esp)
fxtract
- fstpt %st(1)
+ fincstp
ret
+PSEUDO_END (__significandl)
weak_alias (__significandl, significandl)
diff --git a/sysdeps/libm-i387/s_sin.S b/sysdeps/libm-i387/s_sin.S
index 7928495..f06c944 100644
--- a/sysdeps/libm-i387/s_sin.S
+++ b/sysdeps/libm-i387/s_sin.S
@@ -24,4 +24,5 @@ ENTRY(__sin)
fstp %st(1)
fsin
ret
+PSEUDO_END (__sin)
weak_alias (__sin, sin)
diff --git a/sysdeps/libm-i387/s_sinf.S b/sysdeps/libm-i387/s_sinf.S
index 03a42cb..464ccb2 100644
--- a/sysdeps/libm-i387/s_sinf.S
+++ b/sysdeps/libm-i387/s_sinf.S
@@ -12,4 +12,5 @@ ENTRY(__sinf)
flds 4(%esp)
fsin
ret
+PSEUDO_END (__sinf)
weak_alias (__sinf, sinf)
diff --git a/sysdeps/libm-i387/s_sinl.S b/sysdeps/libm-i387/s_sinl.S
index 03c9c87..2872334 100644
--- a/sysdeps/libm-i387/s_sinl.S
+++ b/sysdeps/libm-i387/s_sinl.S
@@ -26,4 +26,5 @@ ENTRY(__sinl)
fstp %st(1)
fsin
ret
+PSEUDO_END (__sinl)
weak_alias (__sinl, sinl)
diff --git a/sysdeps/libm-i387/s_tan.S b/sysdeps/libm-i387/s_tan.S
index 9474c8c..9333671 100644
--- a/sysdeps/libm-i387/s_tan.S
+++ b/sysdeps/libm-i387/s_tan.S
@@ -26,4 +26,5 @@ ENTRY(__tan)
fptan
fstp %st(0)
ret
+PSEUDO_END (__tan)
weak_alias (__tan, tan)
diff --git a/sysdeps/libm-i387/s_tanf.S b/sysdeps/libm-i387/s_tanf.S
index 3296434..cbf8dd8 100644
--- a/sysdeps/libm-i387/s_tanf.S
+++ b/sysdeps/libm-i387/s_tanf.S
@@ -13,4 +13,5 @@ ENTRY(__tanf)
fptan
fstp %st(0)
ret
+PSEUDO_END (__tanf)
weak_alias (__tanf, tanf)
diff --git a/sysdeps/libm-i387/s_tanl.S b/sysdeps/libm-i387/s_tanl.S
index 6b1532a..c818e96 100644
--- a/sysdeps/libm-i387/s_tanl.S
+++ b/sysdeps/libm-i387/s_tanl.S
@@ -28,4 +28,5 @@ ENTRY(__tanl)
fptan
fstp %st(0)
ret
+PSEUDO_END (__tanl)
weak_alias (__tanl, tanl)