* A possible overflow of type int is avoided for mpz_cmp on huge operands.
* A possible error condition when a malformed file is read with mpz_inp_raw
is now correctly handled.
* New public function mpz_prevprime, companion of the existing mpz_nextprime.
* New documented pointer types mpz_ptr, mpz_srcptr, and similar for other
GMP types. Refer to the manual for full list and suggested usage. These
types have been present in gmp.h at least since GMP-4.0, but previously
not advertised to users.
* Support for 64-bit Arm under Macos.
* Support for the loongarch64 CPU family.
* Support for building with LTO, link-time optimisations.
* New special code for base = 2 in mpz_powm reduces the average time for
the functions that test primality.
* Speedup for the function mpz_nextprime on large operands.
* Speedup for multiplications (some sizes only) thanks to new internal
functions to compute small negacyclic products.
* Special assembly code for IBM z13 and later "mainframe" CPUs, resulting
in a huge speedup.
* Improved assembly for several 64-bit x86 CPUs, Risc-V, 64-bit Arm.
- Removed gmp-6.2.1-CVE-2021-43618.patch which is included in the
new release.
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=93
* Mini-GMP: Fixed a division bug, which on a machine with 64-bit
unsigned long affects approximately 1 out of 2^32 divisors.
* Mini-GMP: Fix mpz_set_str crash on inputs with a large number of
leading zeros. Also stricter input validation, rejecting inputs
with no digits.
* Handle more systems which require PIC code in static libraries (e.g.,
"hardened" Gentoo and Debian 9).
* Configuration for arm (-32 and -64) has been rewritten, fixing poor
code selection for many CPUs.
* Mini-GMP: Updated to the latest development version, including
new functions mpn_com and mpn_neg.
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=68
* 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
integers
* Support for more 32-bit arm processors
* Support for AVX-less modern x86 CPUs
* Speedups and bugfixes
- Includes gmp-6.0.0-ppc64-gcd.diff, now removed
- Update gmp keyring
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=63
* includes powerpc64le support and obsoletes
gmp-support-powerpc64le-linux.patch and gmp-ppc64le-mod.patch
* The function mpz_invert now considers any number invertible in Z/1Z
* The mpn multiply code now handles operands of more than 2^31 limbs
correctly
* Plain division of large operands is faster and more monotonous in
operand size
* Major speedup for ARM, in particular ARM Cortex-A15, thanks to improved
assembly.
* Speedup for Intel Sandy Bridge, Ivy Bridge, Haswell, thanks to rewritten
and vastly expanded assembly support. Speedup also for the older Core 2
and Nehalem.
* Faster mixed arithmetic between mpq_class and double.
* With g++, optimise more operations when one argument is a simple
constant.
* Support for ARM64 alias Aarch64 alias ARMv8.
* New public functions mpn_sec_mul and mpn_sec_sqr, implementing
side-channel
silent multiplication and squaring.
* New public functions mpn_sec_div_qr and mpn_sec_div_r, implementing
side-channel silent division.
* New public functions mpn_cnd_add_n and mpn_cnd_sub_n. Side-channel
silent conditional addition and subtraction.
* New public function mpn_sec_powm, implementing side-channel silent
modexp.
* New public function mpn_sec_invert, implementing side-channel silent
modular inversion.
* Better support for applications which use the mpz_t type, but
nevertheless need to call some of the lower-level mpn functions. See
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=50
* The internal functions mpn_sbpi1_div_qr_sec mpn_sbpi1_div_r_sec could
compute garbage with a low probability. They are now rewritten, and the
test code has been improved.
* A bug in the ia64 implementation of mpn_divrem_2, clobbering some
callee-save registers, has been fixed. This is an internal
function, with the bug manifesting itself as miscomputation in,
e.g., mpn_sqrtrem.
* The documentation now correctly says 'const' for input arguments.
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=46
* Aarch64 alias ARM64 support now works.
* A possible buffer overrun in mpz_ior has been fixed.
* A rare sign flip in mpz_remove has been fixed.
* A bug causing problems with mpf numbers with absolute value >= 2^31 has
been fixed.
* Several bugs in mini-gmp have been fixed.
* Preliminary support for the x32 ABI under x86-64.
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=39
* Bug fixes and speedups
* Many new CPUs recognised
* New functions for multi-factorials, and primorial: mpz_2fac_ui,
mpz_mfac_uiui and mpz_primorial_ui
* The fat binary mechanism is now more robust in its CPU recognition
* Drops support for BSD compatibility library
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=38
* Thresholds in mpn_powm_sec for both fat and non-fat builds are now used
safely, plugging a one-word buffer overrun introduced in the 5.0.3 release
(for non-fat) and a multi-word buffer overrun that existed since 5.0 (for
fat). (We have not been able to provoke malign stack smashing in any of
the ~100 configurations explored by the GMP nightly builds, but the bug
should be assumed to be exploitable.)
* Two bugs in multiplication code causing incorrect computation with
extremely low probability have been fixed.
* A bug in the test suite causing buffer overruns during "make check",
sometimes leading to subsequent malloc crashes, has been fixed.
* Two bugs in the gcd code have been fixed. They could lead to incorrect
results, but for uniformly distributed random operands, the likelihood for
that is infinitesimally small. (There was also a third bug, but that was
an incorrect ASSERT, which furthermore was not enabled by default.)
* A bug affecting 32-bit PowerPC division has been fixed. The bug caused
miscomputation for certain divisors in the range 2^32 ... 2^64-1 (about 1
in 2^30 of these).
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=26
* A slight timing leak of the powm_sec functions have been sealed. (This
leak could possibly be used to extract the most significant few bits of the
exponent. "Few" here means at most 10.)
* The mpz_nextprime function now runs a safer number of pseudo-random prime
tests.
* A bug in division code possibly causing incorrect computation was fixed.
* New CPUs recognised.
* IBM S/390 are now supported in both 31/32-bit and 64-bit mode.
- Dropped SUSE local patches for S/390 support.
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=22
- Update to release GMP 5.0.2
* Many minor bugs related to portability fixed.
* The support for HPPA 2.0N now works, after an assembly bug fix.
* A test case type error has been fixed. The symptom of this bug
was spurious 'make check' failures.
* Fat builds are now supported for 64-bit x86 processors also under Darwin.
- Remove unknown configure option --disable-mpfr
OBS-URL: https://build.opensuse.org/request/show/74148
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gmp?expand=0&rev=18