diff options
Diffstat (limited to 'sysdeps/ieee754/ldbl-128ibm/s_remquol.c')
-rw-r--r-- | sysdeps/ieee754/ldbl-128ibm/s_remquol.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_remquol.c b/sysdeps/ieee754/ldbl-128ibm/s_remquol.c index 20e17cc823..d87bce7982 100644 --- a/sysdeps/ieee754/ldbl-128ibm/s_remquol.c +++ b/sysdeps/ieee754/ldbl-128ibm/s_remquol.c @@ -1,5 +1,5 @@ /* Compute remainder and a congruent to the quotient. - Copyright (C) 1997-2016 Free Software Foundation, Inc. + Copyright (C) 1997-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997 and Jakub Jelinek <jj@ultra.linux.cz>, 1999. @@ -31,7 +31,7 @@ long double __remquol (long double x, long double y, int *quo) { int64_t hx,hy; - u_int64_t sx,lx,ly,qs; + uint64_t sx,lx,ly,qs; int cquo; double xhi, xlo, yhi, ylo; @@ -43,7 +43,9 @@ __remquol (long double x, long double y, int *quo) EXTRACT_WORDS64 (ly, ylo); sx = hx & 0x8000000000000000ULL; qs = sx ^ (hy & 0x8000000000000000ULL); + ly ^= hy & 0x8000000000000000ULL; hy &= 0x7fffffffffffffffLL; + lx ^= sx; hx &= 0x7fffffffffffffffLL; /* Purge off exception values. */ |