diff options
author | pelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4> | 2005-02-14 14:38:06 +0000 |
---|---|---|
committer | pelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4> | 2005-02-14 14:38:06 +0000 |
commit | 5bd4cf91abc8e7949c8401d8fd4721769d6b94f8 (patch) | |
tree | 6f34de8410044b4c982518cfc43c6111e5ac5873 /cache.c | |
parent | d7b63dd56ac727e1be21785e45a96a6d578cbfe7 (diff) | |
download | mpfr-5bd4cf91abc8e7949c8401d8fd4721769d6b94f8.tar.gz |
Add ZivLoop controller for constantes.
Augment exponent range in the cache.
Remove it in const_pi.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3308 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'cache.c')
-rw-r--r-- | cache.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -43,6 +43,9 @@ mpfr_cache (mpfr_ptr dest, mpfr_cache_t cache, mp_rnd_t rnd) mp_prec_t prec = MPFR_PREC (dest); mp_prec_t pold = MPFR_PREC (cache->x); int inexact, sign; + MPFR_SAVE_EXPO_DECL (expo); + + MPFR_SAVE_EXPO_MARK (expo); /* Check if the cache has been already filled */ if (MPFR_UNLIKELY(pold == 0)) @@ -112,5 +115,7 @@ mpfr_cache (mpfr_ptr dest, mpfr_cache_t cache, mp_rnd_t rnd) break; } } - return inexact; + + MPFR_SAVE_EXPO_FREE (expo); + return mpfr_check_range (dest, inexact, rnd); } |