patches/gmp/4.3.1/110-unbounded-alloc.patch
author Michael Hope <michael.hope@linaro.org>
Thu Sep 29 12:40:42 2011 +1300 (2011-09-29)
changeset 2695 f2495884ca3e
permissions -rw-r--r--
config: add a 'auto' value for the number of parallel jobs

When CT_PARALLEL_JOBS is -1, set the number of parallel jobs to the
number of online CPUs + 1. Update documentation to match.

I find this useful when building in the cloud. You can use the same
.config file and have the build adapt to the number of processors
available. Limited testing shows that NCPUS+1 is faster than NCPUS+0
or NCPUS+2.

Signed-off-by: Michael Hope <michael.hope@linaro.org>
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;