The public function mpn_com is now correctly declared in gmp.h.
Healed possible failures of mpn_sec_sqr for non-cryptographic sizes for
some obsolete CPUs.
The option --disable-assembly now disables all inlined asm.
Fixed bug affecting mini-gmp's bitwise functions mpz_setbit, mpz_clrbit,
Various problems related to precision for mpf have been fixed.
Fixed ABI incompatible stack alignment in calls from assembly code.
Fixed PIC bug in popcount affecting Intel processors using the 32-bit ABI.
Speedup for Intel Broadwell and Skylake through assembly code making use of
new ADX instructions.
Square root is now faster when the remainder is not needed. Also the speed
to compute the k-th root improved, for small sizes.
Improved arm64 support.
New C++ functions gcd and lcm for mpz_class.
New public mpn functions mpn_divexact_1, mpn_zero_p, and mpn_cnd_swap.
New public mpq_cmp_z function, to efficiently compare rationals with
Support for Darwin in all x86 code, thereby enabling fat builds on Darwin.
Support for more 32-bit arm processors.
Support for compilation with clang/llvm on more platforms. Caution: GMP
triggers mis-compilation bugs in clang for many platforms, such as arm, x86
(32-bit and 64-bit), powerpc, mips.
Support for AVX-less modern x86 CPUs. (Such support might be missing either
because the CPU vendor chose to disable AVX, or because the running kernel
lacks AVX context switch support.)
Stack usage trimmed; we believe 512 KiB is now sufficient for any GMP
call, irrespective of operand size.
Support for NetBSD under Xen; we switch off AVX unconditionally under
NetBSD since a bug in NetBSD makes AVX fail under Xen.
We now use manufacturers' code names for x86 CPUs, e.g., "haswell" instead
of names derived from the commercial brands.
Small improvements and better coverage for the test suite.
The various FreeBSD problems listed for 6.0.0 affect this release too.
Tuned values for FFT multiplications are provided for larger number on
This release would not have been possible without the continuous work
of improvement, revision and refinement by the whole GMP team:
Torbjörn Granlund, Niels Möller, Marco Bodrato, and Marc Glisse.
Please see the GMP
manual for a complete list of GMP contributors.