Mentions légales du service

Skip to content
Snippets Groups Projects
ChangeLog 1.12 MiB
Newer Older
Torbjorn Granlund's avatar
Torbjorn Granlund committed
2020-01-17  Torbjörn Granlund  <tg@gmplib.org>

	* Version 6.2.0 released.

	* gmp-h.in (__GNU_MP__): Bump.
	(__GNU_MP_VERSION,__GNU_MP_VERSION_MINOR,__GNU_MP_VERSION_PATCHLEVEL):
	Bump version info.
	* Makefile.am (LIBGMP_LT_*, LIBGMPXX_LT_*, LIBMP_LT_*):
	Bump version info.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2020-01-15  Torbjörn Granlund  <tg@gmplib.org>

	* mpn/x86_64/bt1/gcd_11.asm: Add missing FUNC_EXIT.

2020-01-10  Torbjörn Granlund  <tg@gmplib.org>

	* longlong.h (powerpc): Add clobbers, make formatting cleanups.

	* configure.ac (HAVE_NATIVE): Add mpn_sbpi1_bdiv_r.

	* tune/tune-gcd-p.c (main): Use %zu for size_t printing.

	* configfsf.guess: Update from upstream.

	* mpn/x86/pentium4/sse2/popcount.asm: For simplicity and correctness
	use LEAL directly.

2020-01-03  Niels Möller  <nisse@lysator.liu.se>

	* configure.ac: Delete suggestion to use TESTS_ENVIRONMENT to run
	wine. It worked only with older versions of automake.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-12-23  Torbjörn Granlund  <tg@gmplib.org>

	* mpf/mul.c: Rewrite to invoke mpn_sqr when appropriate.

Marco Bodrato's avatar
Marco Bodrato committed
2019-12-08 Marco Bodrato <bodrato@mail.dm.unipi.it>

	* mpz/powm.c: Full normalisation when e=1 & b<0.
	* tests/mpz/t-powm.c: More tests for the e=1 case.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-12-02  Torbjörn Granlund  <tg@gmplib.org>

	* mpn/generic/gcd_11.c: Remove check for NATIVE_ implementation.

2019-11-24  Niels Möller  <nisse@lysator.liu.se>

	* mpn/generic/gcdext_1.c [USE_ZEROTAB]: Delete code variant for
	USE_ZEROTAB != 0. Was used in the currently disabled binary
	gcdext.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-11-20  Torbjörn Granlund  <tg@gmplib.org>

	* mpn/generic/powm.c (MPN_REDC_1): Prefer mpn_sbpi1_bdiv_r when it is
	provided.
	* mpn/generic/sec_powm.c (MPN_REDC_1_SEC): Likewise.

2019-11-17  Torbjörn Granlund  <tg@gmplib.org>

	* config.guess: Recognise zen2.
	* configure.ac: Likewise.

	* mpn/x86_64/bt1/aorsmul_1.asm: Rewrite.
	* mpn/x86_64/bt1/mul_1.asm: Rewrite.

	* mpn/arm/v6t2/gcd_11.asm: Increase alignment; update x/l table.

Marco Bodrato's avatar
Marco Bodrato committed
2019-11-16 Seth Troisi <sethtroisi@google.com>

	* tune/common.c (speed_mpn_perfect_power_p): New function.
	(speed_mpn_perfect_power_p): New function.
	* tune/speed.h: Declare both.
	* tune/speed.c (routine): Add mpn_perfect_{power,square}_p.

	* tune/common.c (speed_mpz_nextprime): New function.
	* tune/speed.h: Declare it.
	* tune/speed.c (routine): Add mpz_nextprime.

2019-11-09 Marco Bodrato <bodrato@mail.dm.unipi.it>
Marco Bodrato's avatar
Marco Bodrato committed

Marco Bodrato's avatar
Marco Bodrato committed
	* tune/speed.c (routine_t): Add R flag to mpz_powm
Marco Bodrato's avatar
Marco Bodrato committed
	* tune/speed.h (SPEED_ROUTINE_MPZ_POWM): Use R flag as the base.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-10-02  Torbjörn Granlund  <tg@gmplib.org>

	* configure.ac: Make more path distinctions for the benefit of
	gmp-mparam.h.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-10-01  Torbjörn Granlund  <tg@gmplib.org>

	* configure.ac (arm64): Let cortex-a7x look in a57 folder.

2019-10-01  Niels Möller  <nisse@lysator.liu.se>

	* mpn/generic/gcdext_1.c (mpn_gcdext_1) [GCDEXT_1_USE_BINARY]: Fix
	canonicalization condition.

2019-09-30  Niels Möller  <nisse@lysator.liu.se>

	* tests/mpn/t-gcdext_1.c: New test.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-09-23  Torbjörn Granlund  <tg@gmplib.org>

	* mpn/generic/hgcd2.c: Mark added div1 variants as static.

	* tune/tuneup.c, tune/speed.c, tune/speed.h, tune/common.c,
	tune/Makefile.am: Add measuring of mpn_hgcd2 method 4 and 5.
	* tune/hgcd2-4.c, tune/hgcd2-5.c: New files.

2019-09-23  Niels Möller  <nisse@lysator.liu.se>

	* gmp-impl.h (hgcd2_func_t) [TUNE_PROGRAM_BUILD]: New typedef.
	(hgcd2_func) [TUNE_PROGRAM_BUILD]: New function pointer.

	* tune/hgcd2.c (mpn_hgcd2): New file, with a redefined function to
	invoke an implementation via the hgcd2_func function pointer.
	Initially points to the default implementation in
	mpn/generic/hgcd2.c.
	* tune/Makefile.am (tuneup_SOURCES): Add hgcd2.c.

	* tune/tuneup.c (one_method): Return index of selected function.
	(tune_hgcd2): Set hgcd2_func to point to selected function. So
	that the later tuning of mpn_hgcd and mpn_gcd uses the right
	implementation of hgcd2.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-09-23  Torbjörn Granlund  <tg@gmplib.org>

	* mpn/generic/hgcd2.c: Improve method 4 and 5 by using the division
	free methods optimistically, detecting errors.  Tweak table values.

2019-09-22  Torbjörn Granlund  <tg@gmplib.org>

	* mpn/generic/hgcd2.c: Add a 4th and 5th div1 method.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-09-18  Torbjörn Granlund  <tg@gmplib.org>

	* mpn/generic/hgcd2.c (div1, div2): Rearrange things to allow for asm.
	(div2): Avoid out-of-specs shift.
	(div2): Use same variable naming in all variants.

2019-09-16  Niels Möller  <nisse@lysator.liu.se>

	* mpn/generic/hgcd2.c (HGCD2_DIV2_METHOD): New define.
	(div2): Replaced, since the old implementation had lots of poorly
	predicted and expensive branches. Two new implementaions, selected
	by HGCD2_DIV2_METHOD.
	(div2) [HGCD2_DIV2_METHOD == 1]: Calls div1 on the high limbs,
	with unlikely case handling large quotients.
	(div2) [HGCD2_DIV2_METHOD == 2]: The previously #if:ed out
	version. A bitwise division, relying on fast count_leading_zeros,
	and with fewer branches than the previous code.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-09-15  Torbjörn Granlund  <tg@gmplib.org>

	* acinclude.m4 (GMP_ASM_X86_ADX): Remove unused.

	* configure.ac (x86): Amend last change.

2019-09-14  Niels Möller  <nisse@lysator.liu.se>

	* mpn/generic/hgcd2.c (HGCD2_DIV1_METHOD): Rename, and change
	default to 3. Updated all usage.
	(HGCD2_METHOD): ... the old name, deleted.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-09-14  Torbjörn Granlund  <tg@gmplib.org>

	* configure.ac: Remove obsolete path-triggered invocation of
	GMP_ASM_X86_ADX and GMP_ASM_X86_MULX.

	* acinclude.m4 (GMP_ASM_X86_MULX): Set X86_ASM_MULX to config.h.
	* configure.ac (x86): Set x86_have_mulx for relevant CPUs.
	Use if to conditionally invoke GMP_ASM_X86_MULX.
	* longlong.h (x86 umul_ppmm): Test also X86_ASM_MULX for when to use
	mulx variant.

2019-09-13  Niels Möller  <nisse@lysator.liu.se>

	* tune/tuneup.c (one_method): New helper function, to measure
	several functions for a fix size.
	(tune_hgcd2, tune_div_qr_1, tune_mod_1, tune_jacobi_base): Use it.

Torbjorn Granlund's avatar
Torbjorn Granlund committed
2019-09-13  Torbjörn Granlund  <tg@gmplib.org>

	* configure.ac (HAVE_HOST_CPU_1): Add many x86_64 CPU types.
	* longlong.h (x86 umul_ppmm): Fix criterion for when to use mulx.
	(count_leading_zeros): Use lzcnt for appropriate CPUs.
	(count_trailing_zeros): Use tzcnt for appropriate CPUs.

	* mpn/generic/hgcd2.c (HGCD2_METHOD=2 div1): Rewrite.

2019-09-09  Torbjörn Granlund  <tg@gmplib.org>

	* mpn/generic/mul.c: Call mpn_mul_basecase early when in range.  Never
	call mpn_sqr.

	* mpn/generic/gcd.c: Rewrite tail of function, for n <= 2.

2019-09-08  Torbjörn Granlund  <tg@gmplib.org>

	* configure.ac (arm): Select arch armv7ve for a7, a12, a15, and a17,
Loading
Loading full blame...