diff options
author | pelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4> | 2003-11-17 14:43:54 +0000 |
---|---|---|
committer | pelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4> | 2003-11-17 14:43:54 +0000 |
commit | c59abbe962268a65eda822b85787802fdc45f812 (patch) | |
tree | 5a393b247bfd44273614562939c24b958177f554 /set_str.c | |
parent | f3ec3c948ac523a73c8bae0e85592c87bc627a41 (diff) | |
download | mpfr-c59abbe962268a65eda822b85787802fdc45f812.tar.gz |
* Optimize a few div.c and mul.c.
* Reorder the tests.
* Remove mpfr_round_raw_generic and create 4 new functions which replace it, for efficiency reasons.
* Add round_raw_generic.c which is the generic file to create the 4 new functions.
* Add new MACRO: MPFR_RNDUTEST_OR_RNDDNOTTEST which is a faster way to check if (rnd_mode==GMP_RNDU && test) || (rnd_mode==GMP_RNDD && !test).
* Add new MACRO: MPFR_UNSIGNED_MINUS_MODULO.
* Optimize mpfr_can_round_raw.
* Some new defines in mpfr.h to increase compatibility with MPFR v2.0.1 and above.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@2550 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'set_str.c')
-rw-r--r-- | set_str.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -351,8 +351,8 @@ mpfr_set_str (mpfr_t x, const char *str, int base, mp_rnd_t rnd) /* round y */ - if (mpfr_round_raw_generic (MPFR_MANT(x), result + n, n * BITS_PER_MP_LIMB, - negative, MPFR_PREC(x), rnd, NULL, (int) 0)) + if (mpfr_round_raw_4 (MPFR_MANT(x), result + n, n * BITS_PER_MP_LIMB, + negative, MPFR_PREC(x), rnd )) { /* overflaw when rounding y */ MPFR_MANT(x)[MPFR_LIMB_SIZE(x) - 1] |