summaryrefslogtreecommitdiff
path: root/libc/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c')
-rw-r--r--libc/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libc/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c b/libc/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c
index 96fab1aff..bdd58f8f2 100644
--- a/libc/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c
+++ b/libc/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c
@@ -22,10 +22,13 @@
int
__issignalingl (long double x)
{
- u_int64_t xi;
+ uint64_t xi;
/* For inspecting NaN status, we only have to look at the first of the pair
of IEEE 754 64-bit precision numbers. */
- GET_LDOUBLE_MSW64 (xi, x);
+ double xhi;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (xi, xhi);
#ifdef HIGH_ORDER_BIT_IS_SET_FOR_SNAN
# error untested
/* We only have to care about the high-order bit of x's significand, because