aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-09-23 20:06:05 +0000
committerUlrich Drepper <drepper@redhat.com>1999-09-23 20:06:05 +0000
commit5892e30537dbe58bb80db1f587693b77fc1a4f06 (patch)
treee489884dfc518efeb9179cb569b66fa93023ddc2
parentd614ad09526f1430836df0e35ed09a0c05f8af6b (diff)
downloadglibc-5892e30537dbe58bb80db1f587693b77fc1a4f06.zip
glibc-5892e30537dbe58bb80db1f587693b77fc1a4f06.tar.gz
glibc-5892e30537dbe58bb80db1f587693b77fc1a4f06.tar.bz2
Update.
* sysdeps/i386/fpu/bits/mathinline.h (atan): Add st(1) to clobbers. (log): Likewise. (log10): Likewise. (log1p): Likewise. (log2): Likewise.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/i386/fpu/bits/mathinline.h12
2 files changed, 12 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 655c13b..ec11622 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,12 @@
* nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Set errno in
one more case.
+ * sysdeps/i386/fpu/bits/mathinline.h (atan): Add st(1) to clobbers.
+ (log): Likewise.
+ (log10): Likewise.
+ (log1p): Likewise.
+ (log2): Likewise.
+
1999-09-22 Andreas Jaeger <aj@suse.de>
* stdio-common/tstscanf.c (main): Add test case from PR libc/1313
diff --git a/sysdeps/i386/fpu/bits/mathinline.h b/sysdeps/i386/fpu/bits/mathinline.h
index a45db6e..bf077ba 100644
--- a/sysdeps/i386/fpu/bits/mathinline.h
+++ b/sysdeps/i386/fpu/bits/mathinline.h
@@ -361,7 +361,7 @@ __inline_mathcode (tan, __x, \
#define __atan2_code \
register long double __value; \
__asm __volatile__ \
- ("fpatan\n\t" \
+ ("fpatan" \
: "=t" (__value) : "0" (__x), "u" (__y) : "st(1)"); \
return __value
__inline_mathcode2 (atan2, __y, __x, __atan2_code)
@@ -441,9 +441,9 @@ __inline_mathop (sin, "fsin")
/* The argument range of this inline version is reduced. */
__inline_mathop (cos, "fcos")
-__inline_mathop (atan, "fld1; fpatan")
-__inline_mathop (log, "fldln2; fxch; fyl2x")
-__inline_mathop (log10, "fldlg2; fxch; fyl2x")
+__inline_mathop_decl (atan, "fld1; fpatan", "0" (__x) : "st(1)")
+__inline_mathop_decl (log, "fldln2; fxch; fyl2x", "0" (__x) : "st(1)")
+__inline_mathop_decl (log10, "fldlg2; fxch; fyl2x", "0" (__x) : "st(1)")
__inline_mathcode (asin, __x, return __atan2l (__x, __sqrtl (1.0 - __x * __x)))
__inline_mathcode (acos, __x, return __atan2l (__sqrtl (1.0 - __x * __x), __x))
@@ -520,7 +520,7 @@ __inline_mathcode (log1p, __x, \
("fldln2\n\t" \
"fxch\n\t" \
"fyl2xp1" \
- : "=t" (__value) : "0" (__x)); \
+ : "=t" (__value) : "0" (__x) : "st(1)"); \
return __value)
@@ -551,7 +551,7 @@ __inline_mathcode(logb, __x, \
#endif
#ifdef __USE_ISOC9X
-__inline_mathop(log2, "fld1; fxch; fyl2x")
+__inline_mathop_decl (log2, "fld1; fxch; fyl2x", "0" (__x) : "st(1)")
__MATH_INLINE float ldexpf (float __x, int __y);
__MATH_INLINE float