Announce: GNU MPFR 3.1.0 is released

Vincent Lefevre vincent at
Mon Oct 3 18:30:48 CEST 2011

GNU MPFR 3.1.0 ("canard à l'orange") is now available for download
from the MPFR web site:

and from INRIAGForge:

It will be available on the GNU FTP site in a few hours.

Thanks very much to those who sent us bug reports and/or tested
the release candidates.

The MD5's:
238ae4a15cc3a5049b723daef5d17938  mpfr-3.1.0.tar.bz2
10968131acc26d79311ac4f8982ff078  mpfr-3.1.0.tar.gz
6e495841bb026481567006cec0f821c3  mpfr-3.1.0.tar.xz

The SHA1's:
9ba6dfe62dad298f0570daf182db31660f7f016c  mpfr-3.1.0.tar.bz2
d7d31b1cc796886a61a57a13bf43a496601d46b5  mpfr-3.1.0.tar.gz
fae7d5b1e607c9208f0076d6931ff44dc169e143  mpfr-3.1.0.tar.xz

The signatures:

Changes from versions 3.0.* to version 3.1.0:
- 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 divide-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.

You can send success and failure reports to <mpfr at>, and give
us the canonical system name (by running the "./config.guess" script),
the processor and the compiler version, in order to complete the
"Platforms Known to Support MPFR" section of the MPFR 3.1.0 web page.


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