patches/gmp/4.3.1/110-unbounded-alloc.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat Dec 31 18:47:37 2011 +0100 (2011-12-31)
changeset 2829 0c3c95f911ec
permissions -rw-r--r--
docs: credit Konrad EISELE for the initial multilib support

Konrad submitted an initial patch adding multlib support:
http://sourceware.org/ml/crossgcc/2011-11/msg00040.html

The patch was full of good ideas, but had a few issues, so
I (Yann E. MORIN) started it all from scatch, re-using part
of the original patch. This got implemented in this series:
hg log -r 446a17b5dd1e:e47d17391ae3

As I forgot to credit Konrad in these changelogs, update the
docs so that the work by Konrad gets credited. Without his
initial effort, we would probably not have had multlib support
so soon. Thank you Konrad!

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1440
     1
diff --git a/mpn/generic/toom44_mul.c b/mpn/generic/toom44_mul.c
yann@1440
     2
--- a/mpn/generic/toom44_mul.c
yann@1440
     3
+++ b/mpn/generic/toom44_mul.c
yann@1440
     4
@@ -116,17 +116,16 @@
yann@1440
     5
 
yann@1440
     6
   TMP_MARK;
yann@1440
     7
 
yann@1440
     8
-  as1  = TMP_SALLOC_LIMBS (n + 1);
yann@1440
     9
-  asm1 = TMP_SALLOC_LIMBS (n + 1);
yann@1440
    10
-  as2  = TMP_SALLOC_LIMBS (n + 1);
yann@1440
    11
-  ash  = TMP_SALLOC_LIMBS (n + 1);
yann@1440
    12
-  asmh = TMP_SALLOC_LIMBS (n + 1);
yann@1440
    13
-
yann@1440
    14
-  bs1  = TMP_SALLOC_LIMBS (n + 1);
yann@1440
    15
-  bsm1 = TMP_SALLOC_LIMBS (n + 1);
yann@1440
    16
-  bs2  = TMP_SALLOC_LIMBS (n + 1);
yann@1440
    17
-  bsh  = TMP_SALLOC_LIMBS (n + 1);
yann@1440
    18
-  bsmh = TMP_SALLOC_LIMBS (n + 1);
yann@1440
    19
+  as1  = TMP_ALLOC_LIMBS (10 * n + 10);
yann@1440
    20
+  asm1 = as1  + n + 1;
yann@1440
    21
+  as2  = asm1 + n + 1;
yann@1440
    22
+  ash  = as2  + n + 1;
yann@1440
    23
+  asmh = ash  + n + 1;
yann@1440
    24
+  bs1  = asmh + n + 1;
yann@1440
    25
+  bsm1 = bs1  + n + 1;
yann@1440
    26
+  bs2  = bsm1 + n + 1;
yann@1440
    27
+  bsh  = bs2  + n + 1;
yann@1440
    28
+  bsmh = bsh  + n + 1;
yann@1440
    29
 
yann@1440
    30
   gp = pp;
yann@1440
    31
   hp = pp + n + 1;