summaryrefslogtreecommitdiff
path: root/patches/gmp/4.3.1/110-unbounded-alloc.patch
blob: 78e0588940db0765bd1c9dec45d81a81c1586b66 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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;