GNU MPFR 3.1.0 Release Candidate 2

Vincent Lefevre vincent at
Wed Sep 21 03:31:55 CEST 2011

The release of GNU MPFR 3.1.0 ("canard à l'orange") is imminent.
Thanks very much to those who tested the first release candidate.

The main changes since this first release candidate are:
- Fixed --enable-gmp-internals.
- Handle the special cases in mpfr_cmp_q and mpfr_cmp_f (fixing
  the problem with the erange flag in particular).
- Added mpfr_buildopt_gmpinternals_p function.
- MPFR manual update and minor corrections.

Here's a second release candidate. As there should not be new
platform-specific problems, the final release is delayed by a
few days only.

The MD5's:
6ba48c87687959d5e68cd695686257f4  mpfr-3.1.0-rc2.tar.bz2
9520638a2a7cc5603f3d3ecc0f3985af  mpfr-3.1.0-rc2.tar.gz
884e8e5907a634ff9993ec0c94804676  mpfr-3.1.0-rc2.tar.xz

The SHA1's:
aa1bfb0deb70cdbd44c333417694f05655ef0265  mpfr-3.1.0-rc2.tar.bz2
4a1b54e4d576d59a2b7b3dcc39c74f7539e3aaca  mpfr-3.1.0-rc2.tar.gz
ef6b979f89243993c616d858f70187065c983988  mpfr-3.1.0-rc2.tar.xz

The signatures:

Changes from versions 3.0.* to version 3.1.0:
- The "canard à l'orange" release.
- The MPFR source has been reorganized.
- Dropped ansi2knr support.
- TLS support is now detected automatically. If TLS is supported, MPFR is
  built as thread safe by default. To disable TLS explicitly, configure
  MPFR with --disable-thread-safe.
- New --enable-gmp-internals configure option to use GMP's undocumented
  functions (not from the public API). Note that library versioning is
  not guaranteed to work if this option is used.
- The mpfr_urandom and mpfr_urandomb functions now return identical values
  on processors with different word size (assuming the same random seed, and
  since the GMP random generator does not depend itself on the word size,
- The mpfr_add_one_ulp and mpfr_sub_one_ulp macros (which are obsolete and
  no more documented) will be removed in a future release.
- Speed improvement for the mpfr_sqr and mpfr_div functions using Mulders'
  algorithm. As a consequence, other functions using those routines are
  also faster.
- Much faster formatted output (mpfr_printf, etc.) with %Rg and similar.
- The --with-gmp-build configure option can now be used when the GMP
  source directory and the GMP build directory are different (without
  having to copy header files manually as before).
- New functions mpfr_buildopt_gmpinternals_p, mpfr_buildopt_tune_case,
  mpfr_frexp, mpfr_grandom and mpfr_z_sub.
- New division-by-zero exception (flag) and associated functions.
- The mpfr.h header can be included several times, while still supporting
  optional functions (see Section "Headers and Libraries" in the manual).
- Updated tuning parameters.
- Improved MPFR manual.
- MPFR tests: libtool no longer generates wrapper scripts with "make check"
  (so that running the tests under valgrind or gdb is easier).
- Bug fixes.
  Note: The mpfr_subnormalize implementation up to MPFR 3.0.0 did not change
  the flags. In particular, it did not follow the generic rule concerning
  the inexact flag (and no special behavior was specified). The case of the
  underflow flag was more a lack of specification.

Please send success and failure reports with "./config.guess" output
to <mpfr at>.

If no problems are found, GNU MPFR 3.1.0 should be released
around 2011-10-03.


Vincent Lefèvre <vincent at> - Web: <>
100% accessible validated (X)HTML - Blog: <>
Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)

More information about the gmp-discuss mailing list