mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2025-01-18 02:39:46 +00:00
[comp-lib-gmp] Add latest versions
Add 4.3.0 and 4.3.1.
This commit is contained in:
parent
8f375a1411
commit
540d681568
@ -12,6 +12,14 @@ config GMP_V_4_2_4
|
|||||||
bool
|
bool
|
||||||
prompt "4.2.4"
|
prompt "4.2.4"
|
||||||
|
|
||||||
|
config GMP_V_4_3_0
|
||||||
|
bool
|
||||||
|
prompt "4.3.0"
|
||||||
|
|
||||||
|
config GMP_V_4_3_1
|
||||||
|
bool
|
||||||
|
prompt "4.3.1"
|
||||||
|
|
||||||
# CT_INSERT_VERSION_ABOVE
|
# CT_INSERT_VERSION_ABOVE
|
||||||
# Don't remove above line!
|
# Don't remove above line!
|
||||||
endchoice
|
endchoice
|
||||||
@ -20,5 +28,7 @@ config GMP_VERSION
|
|||||||
string
|
string
|
||||||
default "4.2.2" if GMP_V_4_2_2
|
default "4.2.2" if GMP_V_4_2_2
|
||||||
default "4.2.4" if GMP_V_4_2_4
|
default "4.2.4" if GMP_V_4_2_4
|
||||||
|
default "4.3.0" if GMP_V_4_3_0
|
||||||
|
default "4.3.1" if GMP_V_4_3_1
|
||||||
# CT_INSERT_VERSION_STRING_ABOVE
|
# CT_INSERT_VERSION_STRING_ABOVE
|
||||||
# Don't remove above line!
|
# Don't remove above line!
|
||||||
|
@ -0,0 +1,33 @@
|
|||||||
|
diff --git a/mpz/remove.c b/mpz/remove.c
|
||||||
|
--- a/mpz/remove.c
|
||||||
|
+++ b/mpz/remove.c
|
||||||
|
@@ -23,7 +23,7 @@
|
||||||
|
unsigned long int
|
||||||
|
mpz_remove (mpz_ptr dest, mpz_srcptr src, mpz_srcptr f)
|
||||||
|
{
|
||||||
|
- mpz_t fpow[40]; /* inexhaustible...until year 2020 or so */
|
||||||
|
+ mpz_t fpow[GMP_LIMB_BITS]; /* Really MP_SIZE_T_BITS */
|
||||||
|
mpz_t x, rem;
|
||||||
|
unsigned long int pwr;
|
||||||
|
int p;
|
||||||
|
@@ -69,7 +69,7 @@
|
||||||
|
mpz_set (dest, x);
|
||||||
|
}
|
||||||
|
|
||||||
|
- pwr = (1 << p) - 1;
|
||||||
|
+ pwr = (1L << p) - 1;
|
||||||
|
|
||||||
|
mpz_clear (fpow[p]);
|
||||||
|
|
||||||
|
diff --git a/mpz/remove.c b/mpz/remove.c
|
||||||
|
--- a/mpz/remove.c
|
||||||
|
+++ b/mpz/remove.c
|
||||||
|
@@ -80,7 +80,7 @@
|
||||||
|
mpz_tdiv_qr (x, rem, dest, fpow[p]);
|
||||||
|
if (SIZ (rem) == 0)
|
||||||
|
{
|
||||||
|
- pwr += 1 << p;
|
||||||
|
+ pwr += 1L << p;
|
||||||
|
mpz_set (dest, x);
|
||||||
|
}
|
||||||
|
mpz_clear (fpow[p]);
|
31
patches/gmp/4.3.1/110-unbounded-alloc.patch
Normal file
31
patches/gmp/4.3.1/110-unbounded-alloc.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
diff --git a/mpn/generic/toom44_mul.c b/mpn/generic/toom44_mul.c
|
||||||
|
--- a/mpn/generic/toom44_mul.c
|
||||||
|
+++ b/mpn/generic/toom44_mul.c
|
||||||
|
@@ -116,17 +116,16 @@
|
||||||
|
|
||||||
|
TMP_MARK;
|
||||||
|
|
||||||
|
- as1 = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
- asm1 = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
- as2 = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
- ash = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
- asmh = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
-
|
||||||
|
- bs1 = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
- bsm1 = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
- bs2 = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
- bsh = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
- bsmh = TMP_SALLOC_LIMBS (n + 1);
|
||||||
|
+ as1 = TMP_ALLOC_LIMBS (10 * n + 10);
|
||||||
|
+ asm1 = as1 + n + 1;
|
||||||
|
+ as2 = asm1 + n + 1;
|
||||||
|
+ ash = as2 + n + 1;
|
||||||
|
+ asmh = ash + n + 1;
|
||||||
|
+ bs1 = asmh + n + 1;
|
||||||
|
+ bsm1 = bs1 + n + 1;
|
||||||
|
+ bs2 = bsm1 + n + 1;
|
||||||
|
+ bsh = bs2 + n + 1;
|
||||||
|
+ bsmh = bsh + n + 1;
|
||||||
|
|
||||||
|
gp = pp;
|
||||||
|
hp = pp + n + 1;
|
Loading…
Reference in New Issue
Block a user