diff options
author | Torbjorn Granlund <tege@gmplib.org> | 2009-11-29 19:29:11 +0100 |
---|---|---|
committer | Torbjorn Granlund <tege@gmplib.org> | 2009-11-29 19:29:11 +0100 |
commit | 78e8ae9dc28a2a315625d85d3e8f3f566cb7f76f (patch) | |
tree | 9df98c2130705c634e0f329264abd0979af801b7 /mpn | |
parent | b29cc779f5c8ad290e881ba953ec9efa301975e7 (diff) | |
download | gmp-78e8ae9dc28a2a315625d85d3e8f3f566cb7f76f.tar.gz |
Retune.
Diffstat (limited to 'mpn')
-rw-r--r-- | mpn/alpha/ev6/gmp-mparam.h | 54 | ||||
-rw-r--r-- | mpn/arm/gmp-mparam.h | 24 | ||||
-rw-r--r-- | mpn/ia64/gmp-mparam.h | 34 | ||||
-rw-r--r-- | mpn/pa32/hppa2_0/gmp-mparam.h | 67 | ||||
-rw-r--r-- | mpn/pa64/gmp-mparam.h | 58 | ||||
-rw-r--r-- | mpn/powerpc32/750/gmp-mparam.h | 54 | ||||
-rw-r--r-- | mpn/powerpc32/gmp-mparam.h | 49 | ||||
-rw-r--r-- | mpn/sparc64/gmp-mparam.h | 66 | ||||
-rw-r--r-- | mpn/x86/k7/gmp-mparam.h | 32 | ||||
-rw-r--r-- | mpn/x86/p6/sse2/gmp-mparam.h | 58 | ||||
-rw-r--r-- | mpn/x86/pentium4/sse2/gmp-mparam.h | 66 | ||||
-rw-r--r-- | mpn/x86_64/atom/gmp-mparam.h | 32 | ||||
-rw-r--r-- | mpn/x86_64/core2/gmp-mparam.h | 41 | ||||
-rw-r--r-- | mpn/x86_64/corei/gmp-mparam.h | 26 | ||||
-rw-r--r-- | mpn/x86_64/gmp-mparam.h | 32 | ||||
-rw-r--r-- | mpn/x86_64/nano/gmp-mparam.h | 34 |
16 files changed, 373 insertions, 354 deletions
diff --git a/mpn/alpha/ev6/gmp-mparam.h b/mpn/alpha/ev6/gmp-mparam.h index b330793e6..e2029514d 100644 --- a/mpn/alpha/ev6/gmp-mparam.h +++ b/mpn/alpha/ev6/gmp-mparam.h @@ -23,40 +23,40 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define DIVEXACT_BY3_METHOD 0 /* override ../diveby3.asm */ -/* 500 MHz 21164 */ +/* 500 MHz 21164 (agnesi.math.su.se) */ -/* Generated by tuneup.c, 2009-11-24, gcc 3.3 */ +/* Generated by tuneup.c, 2009-11-29, gcc 3.3 */ -#define MUL_TOOM22_THRESHOLD 37 -#define MUL_TOOM33_THRESHOLD 89 -#define MUL_TOOM44_THRESHOLD 160 +#define MUL_TOOM22_THRESHOLD 32 +#define MUL_TOOM33_THRESHOLD 73 +#define MUL_TOOM44_THRESHOLD 166 -#define SQR_BASECASE_THRESHOLD 6 +#define SQR_BASECASE_THRESHOLD 5 #define SQR_TOOM2_THRESHOLD 60 -#define SQR_TOOM3_THRESHOLD 109 -#define SQR_TOOM4_THRESHOLD 172 +#define SQR_TOOM3_THRESHOLD 105 +#define SQR_TOOM4_THRESHOLD 167 -#define MUL_FFT_TABLE { 336, 736, 1856, 3328, 9216, 28672, 81920, 327680, 0 } -#define MUL_FFT_MODF_THRESHOLD 352 -#define MUL_FFT_THRESHOLD 5632 +#define MUL_FFT_TABLE { 304, 864, 1728, 3328, 9216, 28672, 147456, 327680, 0 } +#define MUL_FFT_MODF_THRESHOLD 432 +#define MUL_FFT_THRESHOLD 3968 -#define SQR_FFT_TABLE { 432, 864, 1728, 3840, 9216, 20480, 81920, 327680, 0 } +#define SQR_FFT_TABLE { 400, 864, 1600, 3840, 9216, 28672, 114688, 327680, 0 } #define SQR_FFT_MODF_THRESHOLD 376 -#define SQR_FFT_THRESHOLD 3968 +#define SQR_FFT_THRESHOLD 3712 #define MULLOW_BASECASE_THRESHOLD 0 /* always */ -#define MULLOW_DC_THRESHOLD 113 -#define MULLOW_MUL_N_THRESHOLD 10970 +#define MULLOW_DC_THRESHOLD 129 +#define MULLOW_MUL_N_THRESHOLD 7842 #define MULMOD_BNM1_THRESHOLD 16 -#define DC_DIV_QR_THRESHOLD 112 -#define REDC_1_TO_REDC_N_THRESHOLD 195 +#define DC_DIV_QR_THRESHOLD 118 +#define REDC_1_TO_REDC_N_THRESHOLD 122 -#define MATRIX22_STRASSEN_THRESHOLD 21 -#define HGCD_THRESHOLD 290 -#define GCD_DC_THRESHOLD 1194 -#define GCDEXT_DC_THRESHOLD 1105 +#define MATRIX22_STRASSEN_THRESHOLD 19 +#define HGCD_THRESHOLD 300 +#define GCD_DC_THRESHOLD 1421 +#define GCDEXT_DC_THRESHOLD 1063 #define JACOBI_BASE_METHOD 3 #define DIVREM_1_NORM_THRESHOLD 0 /* preinv always */ @@ -64,14 +64,14 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MOD_1_NORM_THRESHOLD 0 /* always */ #define MOD_1_UNNORM_THRESHOLD 0 /* always */ #define MOD_1_1_THRESHOLD 2 -#define MOD_1_2_THRESHOLD 7 -#define MOD_1_4_THRESHOLD 31 +#define MOD_1_2_THRESHOLD 6 +#define MOD_1_4_THRESHOLD 30 #define USE_PREINV_DIVREM_1 1 /* preinv always */ #define USE_PREINV_MOD_1 1 /* preinv always */ #define DIVEXACT_1_THRESHOLD 0 /* always */ #define MODEXACT_1_ODD_THRESHOLD MP_SIZE_T_MAX /* never */ -#define GET_STR_DC_THRESHOLD 19 -#define GET_STR_PRECOMPUTE_THRESHOLD 24 -#define SET_STR_DC_THRESHOLD 3828 -#define SET_STR_PRECOMPUTE_THRESHOLD 9861 +#define GET_STR_DC_THRESHOLD 18 +#define GET_STR_PRECOMPUTE_THRESHOLD 23 +#define SET_STR_DC_THRESHOLD 2797 +#define SET_STR_PRECOMPUTE_THRESHOLD 10681 diff --git a/mpn/arm/gmp-mparam.h b/mpn/arm/gmp-mparam.h index 8e08a3dea..136e0de85 100644 --- a/mpn/arm/gmp-mparam.h +++ b/mpn/arm/gmp-mparam.h @@ -23,7 +23,7 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 593MHz ARM (gcc50.fsffrance.org) */ -/* Generated by tuneup.c, 2009-11-26, gcc 4.3 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.3 */ #define MUL_TOOM22_THRESHOLD 34 #define MUL_TOOM33_THRESHOLD 121 @@ -34,27 +34,27 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define SQR_TOOM3_THRESHOLD 141 #define SQR_TOOM4_THRESHOLD 212 -#define MUL_FFT_TABLE { 368, 928, 1664, 4608, 14336, 40960, 163840, 655360, 0 } +#define MUL_FFT_TABLE { 368, 928, 1920, 4608, 14336, 40960, 163840, 655360, 0 } #define MUL_FFT_MODF_THRESHOLD 384 -#define MUL_FFT_THRESHOLD 6400 +#define MUL_FFT_THRESHOLD 6912 #define SQR_FFT_TABLE { 432, 928, 1664, 4608, 10240, 40960, 163840, 655360, 0 } -#define SQR_FFT_MODF_THRESHOLD 392 +#define SQR_FFT_MODF_THRESHOLD 376 #define SQR_FFT_THRESHOLD 7168 #define MULLOW_BASECASE_THRESHOLD 0 /* always */ #define MULLOW_DC_THRESHOLD 120 -#define MULLOW_MUL_N_THRESHOLD 6933 +#define MULLOW_MUL_N_THRESHOLD 11138 #define MULMOD_BNM1_THRESHOLD 20 -#define DC_DIV_QR_THRESHOLD 140 -#define REDC_1_TO_REDC_N_THRESHOLD 230 +#define DC_DIV_QR_THRESHOLD 132 +#define REDC_1_TO_REDC_N_THRESHOLD 123 #define MATRIX22_STRASSEN_THRESHOLD 19 -#define HGCD_THRESHOLD 99 -#define GCD_DC_THRESHOLD 693 -#define GCDEXT_DC_THRESHOLD 642 +#define HGCD_THRESHOLD 106 +#define GCD_DC_THRESHOLD 706 +#define GCDEXT_DC_THRESHOLD 630 #define JACOBI_BASE_METHOD 2 #define DIVREM_1_NORM_THRESHOLD 0 /* preinv always */ @@ -71,6 +71,6 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MODEXACT_1_ODD_THRESHOLD MP_SIZE_T_MAX /* never */ #define GET_STR_DC_THRESHOLD 14 -#define GET_STR_PRECOMPUTE_THRESHOLD 29 -#define SET_STR_DC_THRESHOLD 321 +#define GET_STR_PRECOMPUTE_THRESHOLD 28 +#define SET_STR_DC_THRESHOLD 309 #define SET_STR_PRECOMPUTE_THRESHOLD 1037 diff --git a/mpn/ia64/gmp-mparam.h b/mpn/ia64/gmp-mparam.h index 5f929b8f8..9c5587525 100644 --- a/mpn/ia64/gmp-mparam.h +++ b/mpn/ia64/gmp-mparam.h @@ -23,38 +23,38 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 1300MHz Itanium2 (babe.fsffrance.org) */ -/* Generated by tuneup.c, 2009-11-25, gcc 4.2 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.2 */ #define MUL_TOOM22_THRESHOLD 44 #define MUL_TOOM33_THRESHOLD 89 -#define MUL_TOOM44_THRESHOLD 220 +#define MUL_TOOM44_THRESHOLD 232 -#define SQR_BASECASE_THRESHOLD 25 +#define SQR_BASECASE_THRESHOLD 26 #define SQR_TOOM2_THRESHOLD 119 -#define SQR_TOOM3_THRESHOLD 145 -#define SQR_TOOM4_THRESHOLD 288 +#define SQR_TOOM3_THRESHOLD 141 +#define SQR_TOOM4_THRESHOLD 284 #define MUL_FFT_TABLE { 528, 1120, 1856, 3840, 11264, 28672, 114688, 327680, 0 } -#define MUL_FFT_MODF_THRESHOLD 720 +#define MUL_FFT_MODF_THRESHOLD 624 #define MUL_FFT_THRESHOLD 7680 #define SQR_FFT_TABLE { 592, 1248, 2368, 3840, 11264, 28672, 81920, 327680, 0 } #define SQR_FFT_MODF_THRESHOLD 608 #define SQR_FFT_THRESHOLD 4992 -#define MULLOW_BASECASE_THRESHOLD 19 -#define MULLOW_DC_THRESHOLD 91 +#define MULLOW_BASECASE_THRESHOLD 17 +#define MULLOW_DC_THRESHOLD 88 #define MULLOW_MUL_N_THRESHOLD 15280 #define MULMOD_BNM1_THRESHOLD 24 -#define DC_DIV_QR_THRESHOLD 69 +#define DC_DIV_QR_THRESHOLD 64 #define REDC_1_TO_REDC_2_THRESHOLD 10 -#define REDC_2_TO_REDC_N_THRESHOLD 272 +#define REDC_2_TO_REDC_N_THRESHOLD 172 -#define MATRIX22_STRASSEN_THRESHOLD 26 +#define MATRIX22_STRASSEN_THRESHOLD 23 #define HGCD_THRESHOLD 116 -#define GCD_DC_THRESHOLD 465 +#define GCD_DC_THRESHOLD 501 #define GCDEXT_DC_THRESHOLD 584 #define JACOBI_BASE_METHOD 2 @@ -62,13 +62,13 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MOD_1_UNNORM_THRESHOLD 0 /* always */ #define MOD_1_1_THRESHOLD 9 #define MOD_1_2_THRESHOLD 10 -#define MOD_1_4_THRESHOLD 14 +#define MOD_1_4_THRESHOLD 16 #define USE_PREINV_DIVREM_1 1 /* native */ #define USE_PREINV_MOD_1 1 /* preinv always */ #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always */ -#define GET_STR_DC_THRESHOLD 14 -#define GET_STR_PRECOMPUTE_THRESHOLD 22 -#define SET_STR_DC_THRESHOLD 1502 -#define SET_STR_PRECOMPUTE_THRESHOLD 3489 +#define GET_STR_DC_THRESHOLD 15 +#define GET_STR_PRECOMPUTE_THRESHOLD 21 +#define SET_STR_DC_THRESHOLD 1339 +#define SET_STR_PRECOMPUTE_THRESHOLD 3565 diff --git a/mpn/pa32/hppa2_0/gmp-mparam.h b/mpn/pa32/hppa2_0/gmp-mparam.h index 1cfd70b1d..d4ff81c8c 100644 --- a/mpn/pa32/hppa2_0/gmp-mparam.h +++ b/mpn/pa32/hppa2_0/gmp-mparam.h @@ -21,53 +21,56 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define GMP_LIMB_BITS 32 #define BYTES_PER_MP_LIMB 4 -/* Generated by tuneup.c, 2009-03-05, gcc 4.3 */ +/* 552 MHz PA8600 (gcc61.fsffrance.org) */ -#define MUL_TOOM22_THRESHOLD 15 -#define MUL_TOOM33_THRESHOLD 98 +/* Generated by tuneup.c, 2009-11-29, gcc 4.2 */ + +#define MUL_TOOM22_THRESHOLD 22 +#define MUL_TOOM33_THRESHOLD 104 #define MUL_TOOM44_THRESHOLD 158 #define SQR_BASECASE_THRESHOLD 6 -#define SQR_TOOM2_THRESHOLD 48 -#define SQR_TOOM3_THRESHOLD 97 -#define SQR_TOOM4_THRESHOLD 232 +#define SQR_TOOM2_THRESHOLD 51 +#define SQR_TOOM3_THRESHOLD 89 +#define SQR_TOOM4_THRESHOLD 250 + +#define MUL_FFT_TABLE { 304, 672, 1152, 2560, 6144, 24576, 98304, 393216, 0 } +#define MUL_FFT_MODF_THRESHOLD 232 +#define MUL_FFT_THRESHOLD 1792 + +#define SQR_FFT_TABLE { 304, 672, 1152, 2560, 6144, 24576, 98304, 393216, 0 } +#define SQR_FFT_MODF_THRESHOLD 232 +#define SQR_FFT_THRESHOLD 1792 #define MULLOW_BASECASE_THRESHOLD 0 /* always */ -#define MULLOW_DC_THRESHOLD 92 -#define MULLOW_MUL_N_THRESHOLD 363 +#define MULLOW_DC_THRESHOLD 90 +#define MULLOW_MUL_N_THRESHOLD 2350 -#define DIV_SB_PREINV_THRESHOLD 4 -#define DIV_DC_THRESHOLD 92 -#define POWM_THRESHOLD 142 +#define MULMOD_BNM1_THRESHOLD 16 -#define MATRIX22_STRASSEN_THRESHOLD 17 -#define HGCD_THRESHOLD 100 -#define GCD_DC_THRESHOLD 365 -#define GCDEXT_DC_THRESHOLD 339 +#define DC_DIV_QR_THRESHOLD 100 +#define REDC_1_TO_REDC_N_THRESHOLD 89 + +#define MATRIX22_STRASSEN_THRESHOLD 11 +#define HGCD_THRESHOLD 101 +#define GCD_DC_THRESHOLD 368 +#define GCDEXT_DC_THRESHOLD 330 #define JACOBI_BASE_METHOD 2 -#define DIVREM_1_NORM_THRESHOLD 3 -#define DIVREM_1_UNNORM_THRESHOLD 5 +#define DIVREM_1_NORM_THRESHOLD 0 /* always */ +#define DIVREM_1_UNNORM_THRESHOLD 4 #define MOD_1_NORM_THRESHOLD 4 -#define MOD_1_UNNORM_THRESHOLD 5 -#define MOD_1_1_THRESHOLD 6 -#define MOD_1_2_THRESHOLD 9 -#define MOD_1_4_THRESHOLD 24 +#define MOD_1_UNNORM_THRESHOLD 4 +#define MOD_1_1_THRESHOLD 12 +#define MOD_1_2_THRESHOLD 13 +#define MOD_1_4_THRESHOLD 18 #define USE_PREINV_DIVREM_1 1 -#define USE_PREINV_MOD_1 1 +#define USE_PREINV_MOD_1 0 #define DIVREM_2_THRESHOLD 0 /* always */ #define DIVEXACT_1_THRESHOLD 0 /* always */ #define MODEXACT_1_ODD_THRESHOLD MP_SIZE_T_MAX /* never */ -#define GET_STR_DC_THRESHOLD 8 -#define GET_STR_PRECOMPUTE_THRESHOLD 13 +#define GET_STR_DC_THRESHOLD 7 +#define GET_STR_PRECOMPUTE_THRESHOLD 14 #define SET_STR_DC_THRESHOLD 224 #define SET_STR_PRECOMPUTE_THRESHOLD 702 - -#define MUL_FFT_TABLE { 272, 672, 896, 2560, 6144, 24576, 98304, 393216, 0 } -#define MUL_FFT_MODF_THRESHOLD 232 -#define MUL_FFT_THRESHOLD 1792 - -#define SQR_FFT_TABLE { 304, 672, 1152, 2560, 10240, 24576, 98304, 393216, 0 } -#define SQR_FFT_MODF_THRESHOLD 232 -#define SQR_FFT_THRESHOLD 1792 diff --git a/mpn/pa64/gmp-mparam.h b/mpn/pa64/gmp-mparam.h index e8e11f32c..17a1509e7 100644 --- a/mpn/pa64/gmp-mparam.h +++ b/mpn/pa64/gmp-mparam.h @@ -1,6 +1,6 @@ /* gmp-mparam.h -- Compiler/machine parameter header file. -Copyright 1991, 1993, 1994, 1999, 2000, 2001, 2002, 2003, 2004, 2008 +Copyright 1991, 1993, 1994, 1999, 2000, 2001, 2002, 2003, 2004, 2008, 2009 Free Software Foundation, Inc. This file is part of the GNU MP Library. @@ -23,50 +23,54 @@ with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 440MHz PA8200 */ -/* Generated by tuneup.c, 2009-01-04, system compiler */ +/* Generated by tuneup.c, 2009-11-29, system compiler */ #define MUL_TOOM22_THRESHOLD 30 -#define MUL_TOOM33_THRESHOLD 114 -#define MUL_TOOM44_THRESHOLD 244 +#define MUL_TOOM33_THRESHOLD 113 +#define MUL_TOOM44_THRESHOLD 195 #define SQR_BASECASE_THRESHOLD 4 -#define SQR_TOOM2_THRESHOLD 58 -#define SQR_TOOM3_THRESHOLD 174 -#define SQR_TOOM4_THRESHOLD 312 +#define SQR_TOOM2_THRESHOLD 56 +#define SQR_TOOM3_THRESHOLD 169 +#define SQR_TOOM4_THRESHOLD 284 + +#define MUL_FFT_TABLE { 336, 800, 1600, 2816, 7168, 20480, 81920, 327680, 0 } +#define MUL_FFT_MODF_THRESHOLD 280 +#define MUL_FFT_THRESHOLD 1664 + +#define SQR_FFT_TABLE { 368, 800, 1728, 3328, 7168, 20480, 81920, 327680, 786432, 0 } +#define SQR_FFT_MODF_THRESHOLD 264 +#define SQR_FFT_THRESHOLD 1792 #define MULLOW_BASECASE_THRESHOLD 0 /* always */ -#define MULLOW_DC_THRESHOLD 142 -#define MULLOW_MUL_N_THRESHOLD 507 +#define MULLOW_DC_THRESHOLD 111 +#define MULLOW_MUL_N_THRESHOLD 2764 + +#define MULMOD_BNM1_THRESHOLD 16 -#define DIV_SB_PREINV_THRESHOLD 0 /* always */ -#define DIV_DC_THRESHOLD 124 -#define POWM_THRESHOLD 224 +#define DC_DIV_QR_THRESHOLD 140 +#define REDC_1_TO_REDC_N_THRESHOLD 121 #define MATRIX22_STRASSEN_THRESHOLD 11 -#define HGCD_THRESHOLD 294 -#define GCD_DC_THRESHOLD 913 -#define GCDEXT_DC_THRESHOLD 830 +#define HGCD_THRESHOLD 244 +#define GCD_DC_THRESHOLD 744 +#define GCDEXT_DC_THRESHOLD 744 #define JACOBI_BASE_METHOD 2 #define DIVREM_1_NORM_THRESHOLD 0 /* always */ #define DIVREM_1_UNNORM_THRESHOLD 0 /* always */ #define MOD_1_NORM_THRESHOLD 0 /* always */ #define MOD_1_UNNORM_THRESHOLD 0 /* always */ +#define MOD_1_1_THRESHOLD MP_SIZE_T_MAX /* never */ +#define MOD_1_2_THRESHOLD MP_SIZE_T_MAX /* never */ +#define MOD_1_4_THRESHOLD MP_SIZE_T_MAX /* never */ #define USE_PREINV_DIVREM_1 1 #define USE_PREINV_MOD_1 1 #define DIVREM_2_THRESHOLD 0 /* always */ #define DIVEXACT_1_THRESHOLD 0 /* always */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always */ -#define GET_STR_DC_THRESHOLD 23 -#define GET_STR_PRECOMPUTE_THRESHOLD 26 -#define SET_STR_DC_THRESHOLD 2743 -#define SET_STR_PRECOMPUTE_THRESHOLD 5147 - -#define MUL_FFT_TABLE { 400, 800, 1600, 2816, 7168, 20480, 81920, 327680, 0 } -#define MUL_FFT_MODF_THRESHOLD 280 -#define MUL_FFT_THRESHOLD 1664 - -#define SQR_FFT_TABLE { 368, 800, 1728, 3328, 7168, 20480, 81920, 327680, 786432, 0 } -#define SQR_FFT_MODF_THRESHOLD 264 -#define SQR_FFT_THRESHOLD 1632 +#define GET_STR_DC_THRESHOLD 20 +#define GET_STR_PRECOMPUTE_THRESHOLD 23 +#define SET_STR_DC_THRESHOLD 2008 +#define SET_STR_PRECOMPUTE_THRESHOLD 4066 diff --git a/mpn/powerpc32/750/gmp-mparam.h b/mpn/powerpc32/750/gmp-mparam.h index 23a0a0500..752b23285 100644 --- a/mpn/powerpc32/750/gmp-mparam.h +++ b/mpn/powerpc32/750/gmp-mparam.h @@ -1,6 +1,6 @@ /* PowerPC-32 gmp-mparam.h -- Compiler/machine parameter header file. -Copyright 2002, 2004 Free Software Foundation, Inc. +Copyright 2002, 2004, 2009 Free Software Foundation, Inc. This file is part of the GNU MP Library. @@ -26,49 +26,53 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 450 MHz PPC 7400 */ -/* Generated by tuneup.c, 2008-12-23, gcc 4.0 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.0 */ #define MUL_TOOM22_THRESHOLD 10 -#define MUL_TOOM33_THRESHOLD 41 -#define MUL_TOOM44_THRESHOLD 88 +#define MUL_TOOM33_THRESHOLD 38 +#define MUL_TOOM44_THRESHOLD 99 #define SQR_BASECASE_THRESHOLD 4 #define SQR_TOOM2_THRESHOLD 18 #define SQR_TOOM3_THRESHOLD 57 -#define SQR_TOOM4_THRESHOLD 88 +#define SQR_TOOM4_THRESHOLD 143 + +#define MUL_FFT_TABLE { 240, 672, 896, 2560, 6144, 40960, 98304, 393216, 0 } +#define MUL_FFT_MODF_THRESHOLD 232 +#define MUL_FFT_THRESHOLD 2816 + +#define SQR_FFT_TABLE { 240, 544, 896, 2560, 6144, 24576, 98304, 393216, 0 } +#define SQR_FFT_MODF_THRESHOLD 216 +#define SQR_FFT_THRESHOLD 2304 #define MULLOW_BASECASE_THRESHOLD 0 /* always */ -#define MULLOW_DC_THRESHOLD 32 -#define MULLOW_MUL_N_THRESHOLD 194 +#define MULLOW_DC_THRESHOLD 33 +#define MULLOW_MUL_N_THRESHOLD 5472 + +#define MULMOD_BNM1_THRESHOLD 12 -#define DIV_SB_PREINV_THRESHOLD 0 /* always */ -#define DIV_DC_THRESHOLD 33 -#define POWM_THRESHOLD 48 +#define DC_DIV_QR_THRESHOLD 31 +#define REDC_1_TO_REDC_N_THRESHOLD 43 -#define MATRIX22_STRASSEN_THRESHOLD 13 -#define HGCD_THRESHOLD 91 -#define GCD_DC_THRESHOLD 256 -#define GCDEXT_DC_THRESHOLD 256 +#define MATRIX22_STRASSEN_THRESHOLD 11 +#define HGCD_THRESHOLD 90 +#define GCD_DC_THRESHOLD 253 +#define GCDEXT_DC_THRESHOLD 268 #define JACOBI_BASE_METHOD 1 #define DIVREM_1_NORM_THRESHOLD 0 /* always */ #define DIVREM_1_UNNORM_THRESHOLD 0 /* always */ #define MOD_1_NORM_THRESHOLD 0 /* always */ #define MOD_1_UNNORM_THRESHOLD 0 /* always */ +#define MOD_1_1_THRESHOLD 4 +#define MOD_1_2_THRESHOLD MP_SIZE_T_MAX /* never */ +#define MOD_1_4_THRESHOLD MP_SIZE_T_MAX /* never */ #define USE_PREINV_DIVREM_1 1 #define USE_PREINV_MOD_1 1 #define DIVEXACT_1_THRESHOLD 0 /* always */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ -#define GET_STR_DC_THRESHOLD 13 +#define GET_STR_DC_THRESHOLD 12 #define GET_STR_PRECOMPUTE_THRESHOLD 27 -#define SET_STR_DC_THRESHOLD 390 -#define SET_STR_PRECOMPUTE_THRESHOLD 814 - -#define MUL_FFT_TABLE { 240, 608, 896, 2560, 6144, 40960, 0 } -#define MUL_FFT_MODF_THRESHOLD 232 -#define MUL_FFT_THRESHOLD 1792 - -#define SQR_FFT_TABLE { 240, 544, 896, 2560, 6144, 24576, 0 } -#define SQR_FFT_MODF_THRESHOLD 216 -#define SQR_FFT_THRESHOLD 1792 +#define SET_STR_DC_THRESHOLD 387 +#define SET_STR_PRECOMPUTE_THRESHOLD 824 diff --git a/mpn/powerpc32/gmp-mparam.h b/mpn/powerpc32/gmp-mparam.h index a0e40edad..cfcf9dd1c 100644 --- a/mpn/powerpc32/gmp-mparam.h +++ b/mpn/powerpc32/gmp-mparam.h @@ -32,7 +32,7 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 1417 MHz PPC 7447A */ -/* Generated by tuneup.c, 2009-01-14, gcc 4.3 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.3 */ #define MUL_TOOM22_THRESHOLD 14 #define MUL_TOOM33_THRESHOLD 73 @@ -43,41 +43,42 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define SQR_TOOM3_THRESHOLD 77 #define SQR_TOOM4_THRESHOLD 130 +#define MUL_FFT_TABLE { 304, 672, 896, 2560, 6144, 24576, 98304, 393216, 0 } +#define MUL_FFT_MODF_THRESHOLD 320 +#define MUL_FFT_THRESHOLD 2816 + +#define SQR_FFT_TABLE { 272, 672, 1152, 2560, 10240, 24576, 98304, 393216, 0 } +#define SQR_FFT_MODF_THRESHOLD 288 +#define SQR_FFT_THRESHOLD 2304 + #define MULLOW_BASECASE_THRESHOLD 0 /* always */ -#define MULLOW_DC_THRESHOLD 52 -#define MULLOW_MUL_N_THRESHOLD 292 +#define MULLOW_DC_THRESHOLD 45 +#define MULLOW_MUL_N_THRESHOLD 5472 + +#define MULMOD_BNM1_THRESHOLD 12 -#define DIV_SB_PREINV_THRESHOLD 0 /* always */ -#define DIV_DC_THRESHOLD 46 -#define POWM_THRESHOLD 87 +#define DC_DIV_QR_THRESHOLD 43 +#define REDC_1_TO_REDC_N_THRESHOLD 59 #define MATRIX22_STRASSEN_THRESHOLD 15 -#define HGCD_THRESHOLD 127 -#define GCD_DC_THRESHOLD 361 -#define GCDEXT_DC_THRESHOLD 382 +#define HGCD_THRESHOLD 123 +#define GCD_DC_THRESHOLD 354 +#define GCDEXT_DC_THRESHOLD 368 #define JACOBI_BASE_METHOD 1 #define DIVREM_1_NORM_THRESHOLD 0 /* always */ #define DIVREM_1_UNNORM_THRESHOLD 0 /* always */ #define MOD_1_NORM_THRESHOLD 0 /* always */ #define MOD_1_UNNORM_THRESHOLD 0 /* always */ -#define MOD_1_1_THRESHOLD 7 -#define MOD_1_2_THRESHOLD 21 -#define MOD_1_4_THRESHOLD 68 +#define MOD_1_1_THRESHOLD 6 +#define MOD_1_2_THRESHOLD 15 +#define MOD_1_4_THRESHOLD 74 #define USE_PREINV_DIVREM_1 1 -#define USE_PREINV_MOD_1 1 +#define USE_PREINV_MOD_1 0 #define DIVEXACT_1_THRESHOLD 0 /* always */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ -#define GET_STR_DC_THRESHOLD 22 -#define GET_STR_PRECOMPUTE_THRESHOLD 42 +#define GET_STR_DC_THRESHOLD 17 +#define GET_STR_PRECOMPUTE_THRESHOLD 37 #define SET_STR_DC_THRESHOLD 788 -#define SET_STR_PRECOMPUTE_THRESHOLD 1554 - -#define MUL_FFT_TABLE { 304, 672, 1152, 2560, 6144, 24576, 0 } -#define MUL_FFT_MODF_THRESHOLD 320 -#define MUL_FFT_THRESHOLD 2816 - -#define SQR_FFT_TABLE { 272, 672, 1152, 2560, 10240, 24576, 0 } -#define SQR_FFT_MODF_THRESHOLD 288 -#define SQR_FFT_THRESHOLD 2304 +#define SET_STR_PRECOMPUTE_THRESHOLD 1495 diff --git a/mpn/sparc64/gmp-mparam.h b/mpn/sparc64/gmp-mparam.h index 88f387240..b7effbbb2 100644 --- a/mpn/sparc64/gmp-mparam.h +++ b/mpn/sparc64/gmp-mparam.h @@ -21,55 +21,57 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define GMP_LIMB_BITS 64 #define BYTES_PER_MP_LIMB 8 -/* Generated by tuneup.c, 2009-01-15, gcc 3.4 */ +/* 500 MHz ultrasparc2 running GNU/Linux */ + +/* Generated by tuneup.c, 2009-11-29, gcc 4.1 */ #define MUL_TOOM22_THRESHOLD 30 -#define MUL_TOOM33_THRESHOLD 93 -#define MUL_TOOM44_THRESHOLD 142 +#define MUL_TOOM33_THRESHOLD 171 +#define MUL_TOOM44_THRESHOLD 256 -#define SQR_BASECASE_THRESHOLD 9 -#define SQR_TOOM2_THRESHOLD 70 -#define SQR_TOOM3_THRESHOLD 99 -#define SQR_TOOM4_THRESHOLD 175 +#define SQR_BASECASE_THRESHOLD 10 +#define SQR_TOOM2_THRESHOLD 71 +#define SQR_TOOM3_THRESHOLD 116 +#define SQR_TOOM4_THRESHOLD 336 -#define MUL_FFT_TABLE { 240, 480, 1344, 2304, 5120, 12288, 81920, 327680, 786432, 0 } -#define MUL_FFT_MODF_THRESHOLD 216 +#define MUL_FFT_TABLE { 240, 608, 1600, 2816, 7168, 20480, 81920, 196608, 786432, 0 } +#define MUL_FFT_MODF_THRESHOLD 184 #define MUL_FFT_THRESHOLD 1664 -#define SQR_FFT_TABLE { 304, 608, 1344, 2304, 7168, 12288, 81920, 327680, 0 } -#define SQR_FFT_MODF_THRESHOLD 216 -#define SQR_FFT_THRESHOLD 1408 +#define SQR_FFT_TABLE { 336, 672, 1600, 2816, 7168, 20480, 49152, 196608, 786432, 0 } +#define SQR_FFT_MODF_THRESHOLD 200 +#define SQR_FFT_THRESHOLD 1536 -#define MULLOW_BASECASE_THRESHOLD 11 -#define MULLOW_DC_THRESHOLD 0 /* never mpn_mullow_basecase */ -#define MULLOW_MUL_N_THRESHOLD 2350 +#define MULLOW_BASECASE_THRESHOLD 18 +#define MULLOW_DC_THRESHOLD 33 +#define MULLOW_MUL_N_THRESHOLD 3152 -#define MULMOD_BNM1_THRESHOLD 12 +#define MULMOD_BNM1_THRESHOLD 16 -#define DC_DIV_QR_THRESHOLD 15 -#define REDC_2_THRESHOLD 10 -#define REDC_N_THRESHOLD 190 +#define DC_DIV_QR_THRESHOLD 27 +#define REDC_1_TO_REDC_2_THRESHOLD 10 +#define REDC_2_TO_REDC_N_THRESHOLD 107 #define MATRIX22_STRASSEN_THRESHOLD 12 -#define HGCD_THRESHOLD 47 -#define GCD_DC_THRESHOLD 130 -#define GCDEXT_DC_THRESHOLD 183 +#define HGCD_THRESHOLD 56 +#define GCD_DC_THRESHOLD 283 +#define GCDEXT_DC_THRESHOLD 198 #define JACOBI_BASE_METHOD 3 -#define DIVREM_1_NORM_THRESHOLD 0 /* always */ -#define DIVREM_1_UNNORM_THRESHOLD 0 /* always */ -#define MOD_1_NORM_THRESHOLD 0 /* always */ -#define MOD_1_UNNORM_THRESHOLD 0 /* always */ -#define MOD_1_1_THRESHOLD MP_SIZE_T_MAX /* never */ +#define DIVREM_1_NORM_THRESHOLD 3 +#define DIVREM_1_UNNORM_THRESHOLD 3 +#define MOD_1_NORM_THRESHOLD 3 +#define MOD_1_UNNORM_THRESHOLD 3 +#define MOD_1_1_THRESHOLD 5 #define MOD_1_2_THRESHOLD MP_SIZE_T_MAX /* never */ #define MOD_1_4_THRESHOLD MP_SIZE_T_MAX /* never */ #define USE_PREINV_DIVREM_1 1 #define USE_PREINV_MOD_1 1 -#define DIVREM_2_THRESHOLD 0 /* always */ +#define DIVREM_2_THRESHOLD 7 #define DIVEXACT_1_THRESHOLD 0 /* always */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always */ -#define GET_STR_DC_THRESHOLD 18 -#define GET_STR_PRECOMPUTE_THRESHOLD 28 -#define SET_STR_DC_THRESHOLD 286 -#define SET_STR_PRECOMPUTE_THRESHOLD 1045 +#define GET_STR_DC_THRESHOLD 12 +#define GET_STR_PRECOMPUTE_THRESHOLD 17 +#define SET_STR_DC_THRESHOLD 381 +#define SET_STR_PRECOMPUTE_THRESHOLD 1659 | diff --git a/mpn/x86/k7/gmp-mparam.h b/mpn/x86/k7/gmp-mparam.h index fc65b1f82..72a4c37bb 100644 --- a/mpn/x86/k7/gmp-mparam.h +++ b/mpn/x86/k7/gmp-mparam.h @@ -24,22 +24,22 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 1883 MHz Athlon */ -/* Generated by tuneup.c, 2009-11-27, gcc 4.2 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.2 */ #define MUL_TOOM22_THRESHOLD 28 #define MUL_TOOM33_THRESHOLD 85 -#define MUL_TOOM44_THRESHOLD 148 +#define MUL_TOOM44_THRESHOLD 147 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 50 -#define SQR_TOOM3_THRESHOLD 84 -#define SQR_TOOM4_THRESHOLD 212 +#define SQR_TOOM3_THRESHOLD 87 +#define SQR_TOOM4_THRESHOLD 216 -#define MUL_FFT_TABLE { 400, 800, 1408, 3584, 10240, 40960, 163840, 655360, 0 } +#define MUL_FFT_TABLE { 432, 800, 1408, 3584, 10240, 40960, 163840, 655360, 0 } #define MUL_FFT_MODF_THRESHOLD 656 #define MUL_FFT_THRESHOLD 7680 -#define SQR_FFT_TABLE { 400, 800, 1408, 3584, 10240, 24576, 163840, 393216, 0 } +#define SQR_FFT_TABLE { 432, 800, 1408, 3584, 10240, 24576, 229376, 655360, 0 } #define SQR_FFT_MODF_THRESHOLD 560 #define SQR_FFT_THRESHOLD 3840 @@ -47,14 +47,14 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MULLOW_DC_THRESHOLD 56 #define MULLOW_MUL_N_THRESHOLD 11138 -#define MULMOD_BNM1_THRESHOLD 16 +#define MULMOD_BNM1_THRESHOLD 20 -#define DC_DIV_QR_THRESHOLD 86 -#define REDC_1_TO_REDC_N_THRESHOLD 158 +#define DC_DIV_QR_THRESHOLD 78 +#define REDC_1_TO_REDC_N_THRESHOLD 86 -#define MATRIX22_STRASSEN_THRESHOLD 15 +#define MATRIX22_STRASSEN_THRESHOLD 16 #define HGCD_THRESHOLD 164 -#define GCD_DC_THRESHOLD 591 +#define GCD_DC_THRESHOLD 580 #define GCDEXT_DC_THRESHOLD 558 #define JACOBI_BASE_METHOD 1 @@ -62,16 +62,16 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MOD_1_UNNORM_THRESHOLD 3 #define MOD_1_1_THRESHOLD 6 #define MOD_1_2_THRESHOLD 7 -#define MOD_1_4_THRESHOLD 20 +#define MOD_1_4_THRESHOLD 18 #define USE_PREINV_DIVREM_1 1 /* native */ #define USE_PREINV_MOD_1 0 #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ -#define GET_STR_DC_THRESHOLD 14 -#define GET_STR_PRECOMPUTE_THRESHOLD 32 -#define SET_STR_DC_THRESHOLD 327 -#define SET_STR_PRECOMPUTE_THRESHOLD 1558 +#define GET_STR_DC_THRESHOLD 22 +#define GET_STR_PRECOMPUTE_THRESHOLD 37 +#define SET_STR_DC_THRESHOLD 537 +#define SET_STR_PRECOMPUTE_THRESHOLD 1576 /* These tables need to be updated. */ diff --git a/mpn/x86/p6/sse2/gmp-mparam.h b/mpn/x86/p6/sse2/gmp-mparam.h index 6c2856550..3b4321c8c 100644 --- a/mpn/x86/p6/sse2/gmp-mparam.h +++ b/mpn/x86/p6/sse2/gmp-mparam.h @@ -30,45 +30,51 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 1867 MHz P6 model 13 */ -/* Generated by tuneupc, 2008-10-30, gcc 4.3 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.3 */ #define MUL_TOOM22_THRESHOLD 20 #define MUL_TOOM33_THRESHOLD 77 -#define MUL_TOOM44_THRESHOLD 142 +#define MUL_TOOM44_THRESHOLD 182 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 30 -#define SQR_TOOM3_THRESHOLD 101 +#define SQR_TOOM3_THRESHOLD 102 #define SQR_TOOM4_THRESHOLD 154 -#define MULLOW_BASECASE_THRESHOLD 4 -#define MULLOW_DC_THRESHOLD 38 -#define MULLOW_MUL_N_THRESHOLD 234 +#define MUL_FFT_TABLE { 400, 928, 1664, 4608, 10240, 40960, 163840, 393216, 0 } +#define MUL_FFT_MODF_THRESHOLD 496 +#define MUL_FFT_THRESHOLD 7168 + +#define SQR_FFT_TABLE { 400, 928, 1664, 3584, 10240, 40960, 98304, 655360, 0 } +#define SQR_FFT_MODF_THRESHOLD 496 +#define SQR_FFT_THRESHOLD 3840 + +#define MULLOW_BASECASE_THRESHOLD 0 /* always */ +#define MULLOW_DC_THRESHOLD 40 +#define MULLOW_MUL_N_THRESHOLD 11138 + +#define MULMOD_BNM1_THRESHOLD 16 -#define DIV_SB_PREINV_THRESHOLD 0 /* always */ -#define DIV_DC_THRESHOLD 24 -#define POWM_THRESHOLD 150 +#define DC_DIV_QR_THRESHOLD 19 +#define REDC_1_TO_REDC_N_THRESHOLD 73 -#define MATRIX22_STRASSEN_THRESHOLD 23 -#define HGCD_THRESHOLD 95 -#define GCD_DC_THRESHOLD 381 -#define GCDEXT_DC_THRESHOLD 419 +#define MATRIX22_STRASSEN_THRESHOLD 17 +#define HGCD_THRESHOLD 94 +#define GCD_DC_THRESHOLD 400 +#define GCDEXT_DC_THRESHOLD 400 #define JACOBI_BASE_METHOD 1 +#define MOD_1_NORM_THRESHOLD 3 +#define MOD_1_UNNORM_THRESHOLD 5 +#define MOD_1_1_THRESHOLD 5 +#define MOD_1_2_THRESHOLD 7 +#define MOD_1_4_THRESHOLD 8 #define USE_PREINV_DIVREM_1 1 /* native */ -#define USE_PREINV_MOD_1 1 /* native */ +#define USE_PREINV_MOD_1 1 #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ -#define GET_STR_DC_THRESHOLD 14 -#define GET_STR_PRECOMPUTE_THRESHOLD 24 -#define SET_STR_DC_THRESHOLD 276 -#define SET_STR_PRECOMPUTE_THRESHOLD 1078 - -#define MUL_FFT_TABLE { 400, 928, 1664, 3584, 10240, 40960, 98304, 393216, 1572864, 0 } -#define MUL_FFT_MODF_THRESHOLD 496 -#define MUL_FFT_THRESHOLD 7168 - -#define SQR_FFT_TABLE { 432, 928, 1664, 3584, 10240, 40960, 98304, 393216, 1572864, 0 } -#define SQR_FFT_MODF_THRESHOLD 448 -#define SQR_FFT_THRESHOLD 3840 +#define GET_STR_DC_THRESHOLD 13 +#define GET_STR_PRECOMPUTE_THRESHOLD 20 +#define SET_STR_DC_THRESHOLD 582 +#define SET_STR_PRECOMPUTE_THRESHOLD 1076 diff --git a/mpn/x86/pentium4/sse2/gmp-mparam.h b/mpn/x86/pentium4/sse2/gmp-mparam.h index da9ace622..c7f575d18 100644 --- a/mpn/x86/pentium4/sse2/gmp-mparam.h +++ b/mpn/x86/pentium4/sse2/gmp-mparam.h @@ -22,47 +22,53 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define BYTES_PER_MP_LIMB 4 -/* 2600 MHz Pentium 4 model 2 */ +/* 2600 MHz Pentium 4 model 2 (bonk.sics.se) */ -/* Generated by tuneup.c, 2009-01-06, gcc 3.4 */ +/* Generated by tuneup.c, 2009-11-28, gcc 4.0 */ #define MUL_TOOM22_THRESHOLD 31 -#define MUL_TOOM33_THRESHOLD 119 -#define MUL_TOOM44_THRESHOLD 178 +#define MUL_TOOM33_THRESHOLD 162 +#define MUL_TOOM44_THRESHOLD 336 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 49 -#define SQR_TOOM3_THRESHOLD 165 -#define SQR_TOOM4_THRESHOLD 252 +#define SQR_TOOM3_THRESHOLD 171 +#define SQR_TOOM4_THRESHOLD 458 -#define MULLOW_BASECASE_THRESHOLD 15 -#define MULLOW_DC_THRESHOLD 44 -#define MULLOW_MUL_N_THRESHOLD 363 +#define MUL_FFT_TABLE { 528, 1184, 1664, 4608, 14336, 40960, 229376, 655360, 0 } +#define MUL_FFT_MODF_THRESHOLD 592 +#define MUL_FFT_THRESHOLD 9216 + +#define SQR_FFT_TABLE { 496, 1184, 1920, 5632, 14336, 40960, 163840, 655360, 0 } +#define SQR_FFT_MODF_THRESHOLD 512 +#define SQR_FFT_THRESHOLD 4864 + +#define MULLOW_BASECASE_THRESHOLD 12 +#define MULLOW_DC_THRESHOLD 51 +#define MULLOW_MUL_N_THRESHOLD 15896 + +#define MULMOD_BNM1_THRESHOLD 20 -#define DIV_SB_PREINV_THRESHOLD MP_SIZE_T_MAX /* never */ -#define DIV_DC_THRESHOLD 33 -#define POWM_THRESHOLD 95 +#define DC_DIV_QR_THRESHOLD 30 +#define REDC_1_TO_REDC_N_THRESHOLD 75 -#define MATRIX22_STRASSEN_THRESHOLD 23 -#define HGCD_THRESHOLD 64 -#define GCD_DC_THRESHOLD 310 -#define GCDEXT_DC_THRESHOLD 310 -#define JACOBI_BASE_METHOD 1 +#define MATRIX22_STRASSEN_THRESHOLD 27 +#define HGCD_THRESHOLD 74 +#define GCD_DC_THRESHOLD 293 +#define GCDEXT_DC_THRESHOLD 278 +#define JACOBI_BASE_METHOD 2 +#define MOD_1_NORM_THRESHOLD 29 +#define MOD_1_UNNORM_THRESHOLD MP_SIZE_T_MAX /* never */ +#define MOD_1_1_THRESHOLD 12 +#define MOD_1_2_THRESHOLD 17 +#define MOD_1_4_THRESHOLD 18 #define USE_PREINV_DIVREM_1 1 /* native */ -#define USE_PREINV_MOD_1 1 /* native */ +#define USE_PREINV_MOD_1 1 #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ -#define GET_STR_DC_THRESHOLD 11 -#define GET_STR_PRECOMPUTE_THRESHOLD 26 -#define SET_STR_DC_THRESHOLD 118 -#define SET_STR_PRECOMPUTE_THRESHOLD 1078 - -#define MUL_FFT_TABLE { 560, 928, 1920, 5632, 14336, 40960, 0 } -#define MUL_FFT_MODF_THRESHOLD 720 -#define MUL_FFT_THRESHOLD 9216 - -#define SQR_FFT_TABLE { 592, 928, 1920, 4608, 14336, 40960, 0 } -#define SQR_FFT_MODF_THRESHOLD 608 -#define SQR_FFT_THRESHOLD 5888 +#define GET_STR_DC_THRESHOLD 12 +#define GET_STR_PRECOMPUTE_THRESHOLD 24 +#define SET_STR_DC_THRESHOLD 143 +#define SET_STR_PRECOMPUTE_THRESHOLD 929 diff --git a/mpn/x86_64/atom/gmp-mparam.h b/mpn/x86_64/atom/gmp-mparam.h index c9431d569..f5d00d3a1 100644 --- a/mpn/x86_64/atom/gmp-mparam.h +++ b/mpn/x86_64/atom/gmp-mparam.h @@ -22,39 +22,39 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define BYTES_PER_MP_LIMB 8 -/* Generated by tuneup.c, 2009-11-26, gcc 4.4 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.4 */ #define MUL_TOOM22_THRESHOLD 10 #define MUL_TOOM33_THRESHOLD 66 -#define MUL_TOOM44_THRESHOLD 105 +#define MUL_TOOM44_THRESHOLD 118 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 16 #define SQR_TOOM3_THRESHOLD 65 -#define SQR_TOOM4_THRESHOLD 169 +#define SQR_TOOM4_THRESHOLD 166 -#define MUL_FFT_TABLE { 272, 544, 1088, 1792, 5120, 12288, 49152, 196608, 786432, 0 } +#define MUL_FFT_TABLE { 272, 544, 1088, 1792, 5120, 20480, 49152, 196608, 786432, 0 } #define MUL_FFT_MODF_THRESHOLD 240 -#define MUL_FFT_THRESHOLD 1408 +#define MUL_FFT_THRESHOLD 1664 #define SQR_FFT_TABLE { 272, 544, 1088, 1792, 5120, 12288, 49152, 196608, 786432, 0 } #define SQR_FFT_MODF_THRESHOLD 216 #define SQR_FFT_THRESHOLD 1408 -#define MULLOW_BASECASE_THRESHOLD 0 /* always */ -#define MULLOW_DC_THRESHOLD 25 +#define MULLOW_BASECASE_THRESHOLD 2 +#define MULLOW_DC_THRESHOLD 23 #define MULLOW_MUL_N_THRESHOLD 2350 -#define MULMOD_BNM1_THRESHOLD 8 +#define MULMOD_BNM1_THRESHOLD 12 #define DC_DIV_QR_THRESHOLD 27 #define REDC_1_TO_REDC_2_THRESHOLD 12 -#define REDC_2_TO_REDC_N_THRESHOLD 60 +#define REDC_2_TO_REDC_N_THRESHOLD 42 -#define MATRIX22_STRASSEN_THRESHOLD 13 -#define HGCD_THRESHOLD 87 -#define GCD_DC_THRESHOLD 201 -#define GCDEXT_DC_THRESHOLD 233 +#define MATRIX22_STRASSEN_THRESHOLD 21 +#define HGCD_THRESHOLD 86 +#define GCD_DC_THRESHOLD 195 +#define GCDEXT_DC_THRESHOLD 221 #define JACOBI_BASE_METHOD 2 #define MOD_1_NORM_THRESHOLD 0 /* always */ @@ -67,10 +67,10 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ -#define GET_STR_DC_THRESHOLD 15 +#define GET_STR_DC_THRESHOLD 16 #define GET_STR_PRECOMPUTE_THRESHOLD 27 -#define SET_STR_DC_THRESHOLD 268 -#define SET_STR_PRECOMPUTE_THRESHOLD 1120 +#define SET_STR_DC_THRESHOLD 234 +#define SET_STR_PRECOMPUTE_THRESHOLD 1105 /* These tables need to be updated. */ diff --git a/mpn/x86_64/core2/gmp-mparam.h b/mpn/x86_64/core2/gmp-mparam.h index 7ec4783e2..373c979f4 100644 --- a/mpn/x86_64/core2/gmp-mparam.h +++ b/mpn/x86_64/core2/gmp-mparam.h @@ -23,40 +23,38 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 2133 MHz Core 2 (65nm) */ -/* Generated by tuneup.c, 2009-11-24, gcc 4.2 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.2 */ -/* Generated by tuneup.c, 2009-11-26, gcc 4.2 */ - -#define MUL_TOOM22_THRESHOLD 23 -#define MUL_TOOM33_THRESHOLD 66 -#define MUL_TOOM44_THRESHOLD 178 +#define MUL_TOOM22_THRESHOLD 22 +#define MUL_TOOM33_THRESHOLD 65 +#define MUL_TOOM44_THRESHOLD 169 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 28 -#define SQR_TOOM3_THRESHOLD 101 -#define SQR_TOOM4_THRESHOLD 143 +#define SQR_TOOM3_THRESHOLD 85 +#define SQR_TOOM4_THRESHOLD 142 -#define MUL_FFT_TABLE { 336, 800, 1600, 2816, 7168, 20480, 81920, 327680, 0 } +#define MUL_FFT_TABLE { 400, 800, 1600, 2816, 7168, 20480, 81920, 196608, 0 } #define MUL_FFT_MODF_THRESHOLD 400 #define MUL_FFT_THRESHOLD 4224 -#define SQR_FFT_TABLE { 304, 736, 1728, 3328, 7168, 20480, 81920, 327680, 0 } -#define SQR_FFT_MODF_THRESHOLD 336 +#define SQR_FFT_TABLE { 336, 736, 1728, 2816, 7168, 20480, 81920, 327680, 0 } +#define SQR_FFT_MODF_THRESHOLD 368 #define SQR_FFT_THRESHOLD 2688 #define MULLOW_BASECASE_THRESHOLD 0 /* always */ -#define MULLOW_DC_THRESHOLD 19 +#define MULLOW_DC_THRESHOLD 20 #define MULLOW_MUL_N_THRESHOLD 5472 -#define MULMOD_BNM1_THRESHOLD 12 +#define MULMOD_BNM1_THRESHOLD 20 -#define DC_DIV_QR_THRESHOLD 52 +#define DC_DIV_QR_THRESHOLD 46 #define REDC_1_TO_REDC_2_THRESHOLD 10 -#define REDC_2_TO_REDC_N_THRESHOLD 111 +#define REDC_2_TO_REDC_N_THRESHOLD 74 -#define MATRIX22_STRASSEN_THRESHOLD 25 +#define MATRIX22_STRASSEN_THRESHOLD 17 #define HGCD_THRESHOLD 135 -#define GCD_DC_THRESHOLD 443 +#define GCD_DC_THRESHOLD 451 #define GCDEXT_DC_THRESHOLD 460 #define JACOBI_BASE_METHOD 1 @@ -72,10 +70,5 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define GET_STR_DC_THRESHOLD 11 #define GET_STR_PRECOMPUTE_THRESHOLD 21 -#define SET_STR_DC_THRESHOLD 704 -#define SET_STR_PRECOMPUTE_THRESHOLD 1785 - -/* These tables are obsolete. */ -#define MUL_FFT_TABLE2 {{1,4}, {273,5}, {545,6}, {1217,7}, {3201,8}, {6913,9}, {7681,8}, {8449,9}, {9729,8}, {10497,9}, {13825,10}, {15361,9}, {19969,10}, {23553,9}, {28161,11}, {30721,10}, {31745,9}, {34305,10}, {39937,9}, {42497,10}, {56321,11}, {63489,10}, {81409,11}, {92161,10}, {93185,11}, {96257,12}, {126977,11}, {131073,10}, {138241,11}, {167937,10}, {169473,11}, {169985,10}, {172033,11}, {195585,9}, {196097,11}, {198657,10}, {208897,11}, {217089,12}, {258049,11}, {261121,9}, {262657,10}, {275457,11}, {302081,10}, {307201,11}, {331777,12}, {389121,11}, {425985,13}, {516097,12}, {520193,11}, {598017,12}, {610305,11}, {614401,12}, {651265,11}, {653313,10}, {654337,11}, {673793,10}, {674817,11}, {677889,10}, {679937,11}, {718849,10}, {719873,12}, {782337,11}, {850945,12}, {913409,11}, {925697,13}, {1040385,12}, {1044481,11}, {1112065,12}, {1175553,11}, {1244161,12}, {1306625,11}, {1310721,12}, {1327105,11}, {1347585,12}, {1355777,11}, {1366017,12}, {1439745,13}, {1564673,12}, {1835009,14}, {1900545,12}, {1904641,14}, {2080769,13}, {2088961,12}, {2488321,13}, {2613249,12}, {2879489,13}, {2932737,12}, {2940929,13}, {3137537,12}, {3403777,13}, {3661825,12}, {3928065,14}, {4177921,13}, {4186113,12}, {4452353,13}, {4710401,12}, {4978689,13}, {5234689,12}, {5500929,13}, {5758977,14}, {6275073,13}, {7856129,15}, {8355841,14}, {8372225,13}, {9957377,14}, {MP_SIZE_T_MAX, 0}} - -#define SQR_FFT_TABLE2 {{1,4}, {241,5}, {545,6}, {1345,7}, {3201,8}, {6913,9}, {7681,8}, {8961,9}, {9729,8}, {10497,9}, {13825,10}, {15361,9}, {19969,10}, {23553,9}, {28161,11}, {30721,10}, {31745,9}, {34305,10}, {55297,11}, {63489,10}, {80897,11}, {94209,10}, {97281,12}, {126977,11}, {129025,9}, {130049,10}, {138753,11}, {162817,9}, {164353,11}, {170497,10}, {178177,11}, {183297,10}, {184321,11}, {194561,10}, {208897,12}, {219137,11}, {221185,12}, {258049,11}, {261121,9}, {261633,10}, {267777,9}, {268289,11}, {270337,10}, {274945,9}, {276481,10}, {278529,11}, {292865,9}, {293377,10}, {295937,9}, {296449,10}, {306177,9}, {309249,10}, {310273,11}, {328705,12}, {331777,11}, {335873,12}, {344065,11}, {346113,12}, {352257,11}, {356353,12}, {389121,11}, {395265,10}, {398337,11}, {419841,10}, {421889,11}, {423937,13}, {516097,12}, {520193,11}, {546817,10}, {550913,11}, {561153,10}, {563201,11}, {579585,10}, {585729,11}, {621569,12}, {636929,11}, {638977,12}, {651265,11}, {714753,10}, {716801,11}, {718849,12}, {782337,11}, {849921,12}, {913409,11}, {954369,13}, {1040385,12}, {1044481,11}, {1112065,12}, {1175553,11}, {1243137,12}, {1306625,11}, {1374209,12}, {1437697,13}, {1564673,12}, {1961985,14}, {2080769,13}, {2088961,12}, {2486273,13}, {2613249,12}, {2879489,13}, {3137537,12}, {3272705,13}, {3661825,12}, {3928065,14}, {4177921,13}, {4186113,12}, {4452353,13}, {4710401,12}, {4976641,13}, {5234689,12}, {5320705,13}, {5324801,12}, {5447681,13}, {5455873,12}, {5500929,13}, {5758977,14}, {6275073,13}, {6283265,12}, {6549505,13}, {7856129,15}, {8355841,14}, {8372225,13}, {9953281,14}, {MP_SIZE_T_MAX, 0}} +#define SET_STR_DC_THRESHOLD 172 +#define SET_STR_PRECOMPUTE_THRESHOLD 2058 diff --git a/mpn/x86_64/corei/gmp-mparam.h b/mpn/x86_64/corei/gmp-mparam.h index 8e60f94de..9ae53462b 100644 --- a/mpn/x86_64/corei/gmp-mparam.h +++ b/mpn/x86_64/corei/gmp-mparam.h @@ -23,7 +23,7 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 2667 MHz Core i7 */ -/* Generated by tuneup.c, 2009-11-24, gcc 4.2 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.2 */ #define MUL_TOOM22_THRESHOLD 16 #define MUL_TOOM33_THRESHOLD 66 @@ -31,10 +31,10 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 30 -#define SQR_TOOM3_THRESHOLD 105 +#define SQR_TOOM3_THRESHOLD 102 #define SQR_TOOM4_THRESHOLD 250 -#define MUL_FFT_TABLE { 336, 800, 1600, 2816, 7168, 20480, 81920, 196608, 786432, 0 } +#define MUL_FFT_TABLE { 336, 800, 1600, 2816, 7168, 20480, 81920, 196608, 0 } #define MUL_FFT_MODF_THRESHOLD 400 #define MUL_FFT_THRESHOLD 3456 @@ -42,20 +42,20 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define SQR_FFT_MODF_THRESHOLD 368 #define SQR_FFT_THRESHOLD 2688 -#define MULLOW_BASECASE_THRESHOLD 4 +#define MULLOW_BASECASE_THRESHOLD 3 #define MULLOW_DC_THRESHOLD 21 #define MULLOW_MUL_N_THRESHOLD 5472 -#define MULMOD_BNM1_THRESHOLD 12 +#define MULMOD_BNM1_THRESHOLD 16 #define DC_DIV_QR_THRESHOLD 38 -#define REDC_1_TO_REDC_2_THRESHOLD 10 -#define REDC_2_TO_REDC_N_THRESHOLD 110 +#define REDC_1_TO_REDC_2_THRESHOLD 11 +#define REDC_2_TO_REDC_N_THRESHOLD 72 #define MATRIX22_STRASSEN_THRESHOLD 17 -#define HGCD_THRESHOLD 139 -#define GCD_DC_THRESHOLD 354 -#define GCDEXT_DC_THRESHOLD 496 +#define HGCD_THRESHOLD 135 +#define GCD_DC_THRESHOLD 330 +#define GCDEXT_DC_THRESHOLD 487 #define JACOBI_BASE_METHOD 1 #define MOD_1_NORM_THRESHOLD 0 /* always */ @@ -69,9 +69,9 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ #define GET_STR_DC_THRESHOLD 13 -#define GET_STR_PRECOMPUTE_THRESHOLD 23 -#define SET_STR_DC_THRESHOLD 632 -#define SET_STR_PRECOMPUTE_THRESHOLD 1939 +#define GET_STR_PRECOMPUTE_THRESHOLD 22 +#define SET_STR_DC_THRESHOLD 294 +#define SET_STR_PRECOMPUTE_THRESHOLD 1973 /* Generated 2009-01-12, gcc 4.2 */ diff --git a/mpn/x86_64/gmp-mparam.h b/mpn/x86_64/gmp-mparam.h index 8d43a2403..6e6a9b26a 100644 --- a/mpn/x86_64/gmp-mparam.h +++ b/mpn/x86_64/gmp-mparam.h @@ -23,7 +23,7 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 2500 MHz Athlon64 / 512 Kibyte cache */ -/* Generated by tuneup.c, 2009-11-24, gcc 4.2 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.2 */ #define MUL_TOOM22_THRESHOLD 28 #define MUL_TOOM33_THRESHOLD 81 @@ -31,28 +31,28 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 40 -#define SQR_TOOM3_THRESHOLD 121 +#define SQR_TOOM3_THRESHOLD 77 #define SQR_TOOM4_THRESHOLD 532 -#define MUL_FFT_TABLE { 464, 1056, 1856, 3840, 11264, 36864, 114688, 327680, 0 } +#define MUL_FFT_TABLE { 464, 1056, 1856, 3840, 11264, 36864, 114688, 458752, 0 } #define MUL_FFT_MODF_THRESHOLD 688 #define MUL_FFT_THRESHOLD 7936 -#define SQR_FFT_TABLE { 496, 1120, 2368, 4352, 11264, 36864, 114688, 327680, 0 } +#define SQR_FFT_TABLE { 496, 1120, 2240, 4352, 11264, 45056, 114688, 327680, 0 } #define SQR_FFT_MODF_THRESHOLD 688 -#define SQR_FFT_THRESHOLD 4992 +#define SQR_FFT_THRESHOLD 6272 -#define MULLOW_BASECASE_THRESHOLD 20 +#define MULLOW_BASECASE_THRESHOLD 8 #define MULLOW_DC_THRESHOLD 0 /* never mpn_mullow_basecase */ #define MULLOW_MUL_N_THRESHOLD 15585 -#define MULMOD_BNM1_THRESHOLD 16 +#define MULMOD_BNM1_THRESHOLD 20 -#define DC_DIV_QR_THRESHOLD 40 +#define DC_DIV_QR_THRESHOLD 51 #define REDC_1_TO_REDC_2_THRESHOLD 34 -#define REDC_2_TO_REDC_N_THRESHOLD 162 +#define REDC_2_TO_REDC_N_THRESHOLD 107 -#define MATRIX22_STRASSEN_THRESHOLD 21 +#define MATRIX22_STRASSEN_THRESHOLD 33 #define HGCD_THRESHOLD 144 #define GCD_DC_THRESHOLD 501 #define GCDEXT_DC_THRESHOLD 693 @@ -60,18 +60,18 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MOD_1_NORM_THRESHOLD 0 /* always */ #define MOD_1_UNNORM_THRESHOLD 0 /* always */ -#define MOD_1_1_THRESHOLD 5 -#define MOD_1_2_THRESHOLD 6 +#define MOD_1_1_THRESHOLD 4 +#define MOD_1_2_THRESHOLD 7 #define MOD_1_4_THRESHOLD 15 #define USE_PREINV_DIVREM_1 1 /* native */ #define USE_PREINV_MOD_1 0 #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ -#define GET_STR_DC_THRESHOLD 18 -#define GET_STR_PRECOMPUTE_THRESHOLD 33 -#define SET_STR_DC_THRESHOLD 268 -#define SET_STR_PRECOMPUTE_THRESHOLD 2215 +#define GET_STR_DC_THRESHOLD 17 +#define GET_STR_PRECOMPUTE_THRESHOLD 32 +#define SET_STR_DC_THRESHOLD 266 +#define SET_STR_PRECOMPUTE_THRESHOLD 2105 /* These tables are older than the thresholds above. */ diff --git a/mpn/x86_64/nano/gmp-mparam.h b/mpn/x86_64/nano/gmp-mparam.h index 374999649..ae4bf3232 100644 --- a/mpn/x86_64/nano/gmp-mparam.h +++ b/mpn/x86_64/nano/gmp-mparam.h @@ -23,38 +23,38 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ /* 1600 MHz Nano 2xxx */ -/* Generated by tuneup.c, 2009-11-27, gcc 4.3 */ +/* Generated by tuneup.c, 2009-11-29, gcc 4.3 */ -#define MUL_TOOM22_THRESHOLD 26 -#define MUL_TOOM33_THRESHOLD 41 -#define MUL_TOOM44_THRESHOLD 315 +#define MUL_TOOM22_THRESHOLD 27 +#define MUL_TOOM33_THRESHOLD 42 +#define MUL_TOOM44_THRESHOLD 330 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 38 -#define SQR_TOOM3_THRESHOLD 60 -#define SQR_TOOM4_THRESHOLD 522 +#define SQR_TOOM3_THRESHOLD 77 +#define SQR_TOOM4_THRESHOLD 608 -#define MUL_FFT_TABLE { 400, 928, 1856, 2816, 7168, 28672, 81920, 327680, 0 } -#define MUL_FFT_MODF_THRESHOLD 496 +#define MUL_FFT_TABLE { 400, 800, 1856, 2816, 7168, 28672, 81920, 327680, 0 } +#define MUL_FFT_MODF_THRESHOLD 528 #define MUL_FFT_THRESHOLD 5632 -#define SQR_FFT_TABLE { 400, 800, 1856, 3328, 7168, 20480, 81920, 327680, 0 } +#define SQR_FFT_TABLE { 368, 800, 1856, 3328, 7168, 20480, 81920, 327680, 0 } #define SQR_FFT_MODF_THRESHOLD 464 #define SQR_FFT_THRESHOLD 3456 -#define MULLOW_BASECASE_THRESHOLD 19 -#define MULLOW_DC_THRESHOLD 40 +#define MULLOW_BASECASE_THRESHOLD 21 +#define MULLOW_DC_THRESHOLD 0 /* never mpn_mullow_basecase */ #define MULLOW_MUL_N_THRESHOLD 11138 #define MULMOD_BNM1_THRESHOLD 16 #define DC_DIV_QR_THRESHOLD 47 -#define REDC_1_TO_REDC_2_THRESHOLD 17 -#define REDC_2_TO_REDC_N_THRESHOLD 139 +#define REDC_1_TO_REDC_2_THRESHOLD 16 +#define REDC_2_TO_REDC_N_THRESHOLD 89 #define MATRIX22_STRASSEN_THRESHOLD 17 -#define HGCD_THRESHOLD 116 -#define GCD_DC_THRESHOLD 474 +#define HGCD_THRESHOLD 100 +#define GCD_DC_THRESHOLD 465 #define GCDEXT_DC_THRESHOLD 693 #define JACOBI_BASE_METHOD 1 @@ -68,7 +68,7 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ -#define GET_STR_DC_THRESHOLD 14 -#define GET_STR_PRECOMPUTE_THRESHOLD 22 +#define GET_STR_DC_THRESHOLD 12 +#define GET_STR_PRECOMPUTE_THRESHOLD 20 #define SET_STR_DC_THRESHOLD 686 #define SET_STR_PRECOMPUTE_THRESHOLD 1947 |