This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.19-736-g631021e
- From: rth at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 1 Jul 2014 16:54:12 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.19-736-g631021e
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 631021e0aaefbf9fde4b4472e4ec1d51fffb9bbd (commit)
via a1ac3184fad4e7f28a85dee91825fc85bfaef89a (commit)
from 0c1d731ff9aea37790dfc803b9662e19b959d1ff (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=631021e0aaefbf9fde4b4472e4ec1d51fffb9bbd
commit 631021e0aaefbf9fde4b4472e4ec1d51fffb9bbd
Author: Richard Henderson <rth@twiddle.net>
Date: Tue Jul 1 08:27:49 2014 -0700
alpha: Fix isnan
The isunordered formulation raises SIGFPE for SNaN.
diff --git a/ChangeLog b/ChangeLog
index 39b6b54..a079a18 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2014-07-01 Richard henderson <rth@redhat.com>
+ * sysdeps/alpha/fpu/bits/mathinline.h (__isnanf): Remove.
+ (__isnan, __isnanl): Remove.
+ * sysdeps/alpha/fpu/s_isnan.c (__isnan): Use integer arithmetic.
+
* sysdeps/alpha/fpu/libm-test-ulps: Update.
2014-07-01 Stefan Liebler <stli@linux.vnet.ibm.com>
diff --git a/sysdeps/alpha/fpu/bits/mathinline.h b/sysdeps/alpha/fpu/bits/mathinline.h
index 3d64b56..83f3b4a 100644
--- a/sysdeps/alpha/fpu/bits/mathinline.h
+++ b/sysdeps/alpha/fpu/bits/mathinline.h
@@ -120,29 +120,6 @@ __NTH (__signbitl (long double __x))
return __builtin_signbitl (__x);
#endif
}
-
-/* Test for NaN. Used in the isnan() macro. */
-
-__MATH_INLINE int
-__NTH (__isnanf (float __x))
-{
- return isunordered (__x, __x);
-}
-
-__MATH_INLINE int
-__NTH (__isnan (double __x))
-{
- return isunordered (__x, __x);
-}
-
-#ifndef __NO_LONG_DOUBLE_MATH
-__MATH_INLINE int
-__NTH (__isnanl (long double __x))
-{
- return isunordered (__x, __x);
-}
-#endif
-
#endif /* C99 */
#endif /* __NO_MATH_INLINES */
diff --git a/sysdeps/alpha/fpu/s_isnan.c b/sysdeps/alpha/fpu/s_isnan.c
index adfb4cc..d664f0c 100644
--- a/sysdeps/alpha/fpu/s_isnan.c
+++ b/sysdeps/alpha/fpu/s_isnan.c
@@ -31,7 +31,9 @@
int
__isnan (double x)
{
- return isunordered (x, x);
+ uint64_t ix;
+ EXTRACT_WORDS64 (ix, x);
+ return ix * 2 > 0xffe0000000000000ul;
}
hidden_def (__isnan)
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=a1ac3184fad4e7f28a85dee91825fc85bfaef89a
commit a1ac3184fad4e7f28a85dee91825fc85bfaef89a
Author: Richard Henderson <rth@twiddle.net>
Date: Tue Jul 1 08:15:32 2014 -0700
alpha: Update libm-test-ulps
diff --git a/ChangeLog b/ChangeLog
index a1e44b1..39b6b54 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-07-01 Richard henderson <rth@redhat.com>
+
+ * sysdeps/alpha/fpu/libm-test-ulps: Update.
+
2014-07-01 Stefan Liebler <stli@linux.vnet.ibm.com>
* sysdeps/s390/fpu/libm-test-ulps: Regenerate.
diff --git a/sysdeps/alpha/fpu/libm-test-ulps b/sysdeps/alpha/fpu/libm-test-ulps
index 5bdbcaf..c0098b5 100644
--- a/sysdeps/alpha/fpu/libm-test-ulps
+++ b/sysdeps/alpha/fpu/libm-test-ulps
@@ -22,6 +22,19 @@ double: 1
idouble: 1
ldouble: 1
+Function: "acosh_downward":
+float: 1
+ldouble: 1
+
+Function: "acosh_towardzero":
+float: 1
+ldouble: 1
+
+Function: "acosh_upward":
+double: 1
+ildouble: 1
+ldouble: 1
+
Function: "asin":
ildouble: 1
ldouble: 1
@@ -183,6 +196,54 @@ ifloat: 2
ildouble: 2
ldouble: 2
+Function: Real part of "cacos_downward":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 2
+ldouble: 2
+
+Function: Imaginary part of "cacos_downward":
+double: 5
+float: 3
+idouble: 5
+ifloat: 3
+ildouble: 5
+ldouble: 5
+
+Function: Real part of "cacos_towardzero":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 2
+ldouble: 2
+
+Function: Imaginary part of "cacos_towardzero":
+double: 5
+float: 3
+idouble: 5
+ifloat: 3
+ildouble: 5
+ldouble: 5
+
+Function: Real part of "cacos_upward":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 3
+ldouble: 3
+
+Function: Imaginary part of "cacos_upward":
+double: 4
+float: 4
+idouble: 4
+ifloat: 4
+ildouble: 5
+ldouble: 5
+
Function: Real part of "cacosh":
double: 1
float: 2
@@ -909,6 +970,54 @@ ifloat: 2
ildouble: 1
ldouble: 1
+Function: Real part of "cpow_downward":
+double: 1
+float: 4
+idouble: 1
+ifloat: 4
+ildouble: 6
+ldouble: 6
+
+Function: Imaginary part of "cpow_downward":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 2
+ldouble: 2
+
+Function: Real part of "cpow_towardzero":
+double: 1
+float: 4
+idouble: 1
+ifloat: 4
+ildouble: 6
+ldouble: 6
+
+Function: Imaginary part of "cpow_towardzero":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 2
+ldouble: 2
+
+Function: Real part of "cpow_upward":
+double: 4
+float: 1
+idouble: 4
+ifloat: 1
+ildouble: 3
+ldouble: 3
+
+Function: Imaginary part of "cpow_upward":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 2
+ldouble: 2
+
Function: Real part of "csin":
double: 1
float: 1
@@ -1172,8 +1281,8 @@ double: 2
float: 3
idouble: 2
ifloat: 3
-ildouble: 3
-ldouble: 3
+ildouble: 5
+ldouble: 5
Function: Real part of "ctanh":
double: 2
@@ -1244,8 +1353,8 @@ double: 2
float: 3
idouble: 2
ifloat: 3
-ildouble: 3
-ldouble: 3
+ildouble: 5
+ldouble: 5
Function: Imaginary part of "ctanh_upward":
double: 2
@@ -1319,7 +1428,9 @@ ldouble: 1
Function: "exp10_downward":
double: 1
+float: 1
idouble: 1
+ifloat: 1
ildouble: 2
ldouble: 2
@@ -1331,7 +1442,9 @@ ldouble: 1
Function: "exp10_towardzero":
double: 1
+float: 1
idouble: 1
+ifloat: 1
ildouble: 2
ldouble: 2
@@ -1573,6 +1686,30 @@ ifloat: 2
ildouble: 1
ldouble: 1
+Function: "log10_downward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
+Function: "log10_towardzero":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
+Function: "log10_upward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
Function: "log1p":
float: 1
ifloat: 1
@@ -1605,6 +1742,30 @@ Function: "log2":
ildouble: 1
ldouble: 1
+Function: "log2_downward":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+
+Function: "log2_towardzero":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
+Function: "log2_upward":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+
Function: "log_downward":
float: 1
ifloat: 1
@@ -1631,13 +1792,17 @@ ldouble: 1
Function: "pow10_downward":
double: 1
+float: 1
idouble: 1
+ifloat: 1
ildouble: 2
ldouble: 2
Function: "pow10_towardzero":
double: 1
+float: 1
idouble: 1
+ifloat: 1
ildouble: 2
ldouble: 2
@@ -1650,8 +1815,12 @@ ildouble: 2
ldouble: 2
Function: "pow_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "pow_tonearest":
float: 1
@@ -1660,14 +1829,20 @@ ildouble: 1
ldouble: 1
Function: "pow_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "pow_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "sin":
float: 1
@@ -1895,4 +2070,28 @@ ifloat: 2
ildouble: 5
ldouble: 5
+Function: "yn_downward":
+double: 3
+float: 2
+idouble: 3
+ifloat: 2
+ildouble: 5
+ldouble: 5
+
+Function: "yn_towardzero":
+double: 3
+float: 3
+idouble: 3
+ifloat: 3
+ildouble: 5
+ldouble: 5
+
+Function: "yn_upward":
+double: 4
+float: 4
+idouble: 4
+ifloat: 4
+ildouble: 5
+ldouble: 5
+
# end of automatic generation
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 8 ++
sysdeps/alpha/fpu/bits/mathinline.h | 23 ----
sysdeps/alpha/fpu/libm-test-ulps | 211 ++++++++++++++++++++++++++++++++++-
sysdeps/alpha/fpu/s_isnan.c | 4 +-
4 files changed, 216 insertions(+), 30 deletions(-)
hooks/post-receive
--
GNU C Library master sources