diff options
Diffstat (limited to 'Build/source/libs/mpfr/mpfr-src/src/set_prec.c')
-rw-r--r-- | Build/source/libs/mpfr/mpfr-src/src/set_prec.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/Build/source/libs/mpfr/mpfr-src/src/set_prec.c b/Build/source/libs/mpfr/mpfr-src/src/set_prec.c index 2927efefc89..fc6ec85a5d1 100644 --- a/Build/source/libs/mpfr/mpfr-src/src/set_prec.c +++ b/Build/source/libs/mpfr/mpfr-src/src/set_prec.c @@ -22,14 +22,13 @@ http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc., #include "mpfr-impl.h" -void +MPFR_HOT_FUNCTION_ATTR void mpfr_set_prec (mpfr_ptr x, mpfr_prec_t p) { mp_size_t xsize, xoldsize; - mpfr_limb_ptr tmp; /* first, check if p is correct */ - MPFR_ASSERTN (p >= MPFR_PREC_MIN && p <= MPFR_PREC_MAX); + MPFR_ASSERTN (MPFR_PREC_COND (p)); /* Calculate the new number of limbs */ xsize = MPFR_PREC2LIMBS (p); @@ -38,8 +37,12 @@ mpfr_set_prec (mpfr_ptr x, mpfr_prec_t p) xoldsize = MPFR_GET_ALLOC_SIZE (x); if (xsize > xoldsize) { - tmp = (mpfr_limb_ptr) (*__gmp_reallocate_func) - (MPFR_GET_REAL_PTR(x), MPFR_MALLOC_SIZE(xoldsize), MPFR_MALLOC_SIZE(xsize)); + mpfr_size_limb_t *tmp; + + tmp = (mpfr_size_limb_t *) mpfr_reallocate_func + (MPFR_GET_REAL_PTR(x), + MPFR_MALLOC_SIZE(xoldsize), + MPFR_MALLOC_SIZE(xsize)); MPFR_SET_MANT_PTR(x, tmp); MPFR_SET_ALLOC_SIZE(x, xsize); } |