diff options
Diffstat (limited to 'Build/source/libs/mpfr/mpfr-src/src/invsqrt_limb.h')
-rw-r--r-- | Build/source/libs/mpfr/mpfr-src/src/invsqrt_limb.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/Build/source/libs/mpfr/mpfr-src/src/invsqrt_limb.h b/Build/source/libs/mpfr/mpfr-src/src/invsqrt_limb.h index d6d1744b30a..4593372d54a 100644 --- a/Build/source/libs/mpfr/mpfr-src/src/invsqrt_limb.h +++ b/Build/source/libs/mpfr/mpfr-src/src/invsqrt_limb.h @@ -1,6 +1,6 @@ /* __gmpfr_invsqrt_limb_approx -- reciprocal approximate square root of a limb -Copyright 2017-2019 Free Software Foundation, Inc. +Copyright 2017-2020 Free Software Foundation, Inc. Contributed by the AriC and Caramba projects, INRIA. This file is part of the GNU MPFR Library. @@ -231,17 +231,18 @@ static const mp_limb_t T3[768] = /* umul_hi(h, x, y) puts in h the high part of x*y */ #ifdef HAVE_MULX_U64 #include <immintrin.h> -#define umul_hi(h, x, y) _mulx_u64 (x, y, (unsigned long long *) &h) +#define umul_hi(h, x, y) _mulx_u64 (x, y, (unsigned long long *) &(h)) #else #define umul_hi(h, x, y) \ do { \ mp_limb_t _l; \ umul_ppmm (h, _l, x, y); \ + (void) _l; /* unused variable */ \ } while (0) #endif /* given 2^62 <= d < 2^64, put in r an approximation of - s = floor(2^96/sqrt(r)) - 2^64, with r <= s <= r + 15 */ + s = floor(2^96/sqrt(d)) - 2^64, with r <= s <= r + 15 */ #define __gmpfr_invsqrt_limb_approx(r, d) \ do { \ mp_limb_t _d, _i, _v0, _e0, _d37, _v1, _e1, _h, _v2, _e2; \ @@ -285,7 +286,7 @@ static const mp_limb_t T3[768] = } while (0) /* given 2^62 <= n < 2^64, put in s an approximation of sqrt(2^64*n), - with: s <= floor(sqrt(2^64*u)) <= s + 7 */ + with: s <= floor(sqrt(2^64*n)) <= s + 7 */ #define __gmpfr_sqrt_limb_approx(s, n) \ do { \ mp_limb_t _n, _x, _y, _z, _t; \ |