From 5263c07ff41f92685cd7e3ac81bb79a9f8f153af Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)> Date: Wed, 24 Mar 2010 22:41:49 +0000 Subject: [PATCH] mpn/x86/k7/gmp-mparam.h from box4 --- mpn/x86/k7/gmp-mparam.h | 93 ++++++++++++++++++++--------------------- 1 file changed, 45 insertions(+), 48 deletions(-) diff --git a/mpn/x86/k7/gmp-mparam.h b/mpn/x86/k7/gmp-mparam.h index 47d87c5a..db93cd5f 100644 --- a/mpn/x86/k7/gmp-mparam.h +++ b/mpn/x86/k7/gmp-mparam.h @@ -1,33 +1,20 @@ -/* Generated by tuneup.c, 2009-10-08, gcc 4.3 */ +/* Generated by tuneup.c, 2010-03-24, gcc 4.3 */ #define MUL_KARATSUBA_THRESHOLD 26 -#define MUL_TOOM3_THRESHOLD 90 -#define MUL_TOOM4_THRESHOLD 248 -#define MUL_TOOM7_THRESHOLD 315 +#define MUL_TOOM3_THRESHOLD 97 +#define MUL_TOOM4_THRESHOLD 230 +#define MUL_TOOM8H_THRESHOLD 254 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_KARATSUBA_THRESHOLD 50 #define SQR_TOOM3_THRESHOLD 95 -#define SQR_TOOM4_THRESHOLD 95 -#define SQR_TOOM7_THRESHOLD 135 +#define SQR_TOOM4_THRESHOLD 256 +#define SQR_TOOM8_THRESHOLD 262 -#define MULLOW_BASECASE_THRESHOLD 9 -#define MULLOW_DC_THRESHOLD 48 -#define MULLOW_MUL_THRESHOLD 5143 +#define POWM_THRESHOLD 180 -#define MULHIGH_BASECASE_THRESHOLD 17 -#define MULHIGH_DC_THRESHOLD 22 -#define MULHIGH_MUL_THRESHOLD 3539 - -#define MULMOD_2EXPM1_THRESHOLD 20 - -#define DIV_SB_PREINV_THRESHOLD 0 /* always */ -#define DIV_DC_THRESHOLD 100 -#define POWM_THRESHOLD 128 -#define FAC_UI_THRESHOLD 3570 - -#define GCD_ACCEL_THRESHOLD 47 -#define GCDEXT_THRESHOLD 33 +#define GCD_ACCEL_THRESHOLD 58 +#define GCDEXT_THRESHOLD 34 #define JACOBI_BASE_METHOD 1 #define USE_PREINV_DIVREM_1 1 /* native */ @@ -35,37 +22,47 @@ #define DIVREM_2_THRESHOLD 0 /* always */ #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ -#define MOD_1_1_THRESHOLD 66 -#define MOD_1_2_THRESHOLD 66 -#define MOD_1_3_THRESHOLD 103 -#define DIVREM_HENSEL_QR_1_THRESHOLD 6 -#define RSH_DIVREM_HENSEL_QR_1_THRESHOLD 4 -#define DIVREM_EUCLID_HENSEL_THRESHOLD 9 +#define MOD_1_1_THRESHOLD 10 +#define MOD_1_2_THRESHOLD 71 +#define MOD_1_3_THRESHOLD 72 +#define DIVREM_HENSEL_QR_1_THRESHOLD 5 +#define RSH_DIVREM_HENSEL_QR_1_THRESHOLD 5 +#define DIVREM_EUCLID_HENSEL_THRESHOLD 8 -#define ROOTREM_THRESHOLD 11 +#define ROOTREM_THRESHOLD 6 -#define GET_STR_DC_THRESHOLD 23 -#define GET_STR_PRECOMPUTE_THRESHOLD 36 -#define SET_STR_THRESHOLD 3987 +#define GET_STR_DC_THRESHOLD 15 +#define GET_STR_PRECOMPUTE_THRESHOLD 26 +#define SET_STR_DC_THRESHOLD 10475 +#define SET_STR_PRECOMPUTE_THRESHOLD 10475 -#define MUL_FFT_TABLE { 368, 992, 1408, 3584, 10240, 40960, 163840, 655360, 0 } -#define MUL_FFT_MODF_THRESHOLD 344 -#define MUL_FFT_THRESHOLD 5632 +#define MUL_FFT_TABLE { 368, 1056, 1408, 3584, 10240, 40960, 163840, 655360, 2621440, 10485760, 0 } +#define MUL_FFT_MODF_THRESHOLD 400 +#define MUL_FFT_FULL_THRESHOLD 1568 -#define SQR_FFT_TABLE { 368, 928, 1408, 3584, 10240, 40960, 163840, 655360, 0 } -#define SQR_FFT_MODF_THRESHOLD 296 -#define SQR_FFT_THRESHOLD 4608 +#define SQR_FFT_TABLE { 368, 928, 1408, 3584, 10240, 40960, 163840, 655360, 2621440, 10485760, 0 } +#define SQR_FFT_MODF_THRESHOLD 400 +#define SQR_FFT_FULL_THRESHOLD 1568 -/* Tuneup completed successfully, took 58 seconds */ -#define MUL_FFT_TABLE2 {{1, 4}, {377, 5}, {386, 4}, {404, 5}, {993, 6}, {1038, 5}, {1061, 6}, {1109, 5}, {1134, 6}, {1352, 7}, {1413, 6}, {1543, 7}, {1685, 6}, {1760, 7}, {1922, 6}, {2009, 7}, {3468, 8}, {3867, 7}, {4312, 8}, {4407, 7}, {4504, 8}, {4914, 7}, {5022, 8}, {5976, 7}, {6107, 8}, {6957, 9}, {7756, 8}, {9030, 9}, {9228, 8}, {9638, 9}, {9850, 8}, {10513, 9}, {11976, 8}, {12239, 9}, {13939, 10}, {14557, 9}, {14876, 10}, {15535, 9}, {15876, 8}, {16224, 9}, {22461, 10}, {23970, 9}, {28509, 10}, {31772, 9}, {36977, 10}, {40326, 9}, {41210, 10}, {57042, 11}, {62207, 12}, {63570, 10}, {82448, 11}, {98051, 10}, {106929, 11}, {109271, 12}, {127165, 11}, {129950, 10}, {138676, 9}, {141713, 10}, {144817, 11}, {228243, 12}, {259924, 11}, {265616, 10}, {283451, 11}, {296001, 10}, {315876, 11}, {329862, 10}, {344468, 11}, {352011, 12}, {392279, 11}, {497829, 12}, {508731, 13}, {519871, 12}, {531255, 11}, {767770, 12}, {784582, 11}, {855595, 12}, {933036, 13}, {MP_SIZE_T_MAX,0}} +#define MULLOW_BASECASE_THRESHOLD 8 +#define MULLOW_DC_THRESHOLD 45 +#define MULLOW_MUL_THRESHOLD 3436 -#define MUL_FFTM_TABLE2 {{1, 4}, {306, 5}, {320, 4}, {344, 5}, {368, 4}, {377, 5}, {743, 6}, {777, 5}, {813, 6}, {1760, 7}, {1799, 6}, {1880, 7}, {1922, 6}, {2009, 7}, {2727, 8}, {2787, 7}, {3248, 8}, {3320, 7}, {3468, 8}, {3867, 7}, {4039, 8}, {6957, 9}, {7756, 8}, {8460, 9}, {8836, 8}, {9030, 9}, {9850, 8}, {10066, 9}, {11976, 8}, {12239, 9}, {14876, 10}, {15535, 9}, {19299, 10}, {19722, 9}, {22461, 10}, {23970, 9}, {26142, 10}, {27898, 9}, {28509, 10}, {31772, 9}, {33179, 10}, {44943, 11}, {47962, 10}, {57042, 11}, {62207, 12}, {63570, 10}, {73983, 11}, {80681, 10}, {82448, 11}, {114110, 12}, {127165, 11}, {164920, 12}, {196129, 11}, {228243, 12}, {233241, 13}, {254354, 12}, {259924, 11}, {277377, 10}, {283451, 11}, {296001, 12}, {392279, 11}, {427785, 12}, {437153, 13}, {519871, 12}, {531255, 11}, {579340, 12}, {592026, 11}, {688959, 12}, {704046, 13}, {784582, 11}, {819320, 12}, {995682, 13}, {MP_SIZE_T_MAX,0}} +#define MULHIGH_BASECASE_THRESHOLD 17 +#define MULHIGH_DC_THRESHOLD 21 +#define MULHIGH_MUL_THRESHOLD 3436 -#define SQR_FFT_TABLE2 {{1, 4}, {377, 5}, {993, 6}, {1038, 5}, {1061, 6}, {1352, 7}, {1413, 6}, {1543, 7}, {1685, 6}, {1799, 7}, {1922, 6}, {2009, 7}, {3468, 8}, {3867, 7}, {4312, 8}, {4407, 7}, {4504, 8}, {4914, 7}, {5022, 8}, {5976, 7}, {6107, 8}, {6957, 9}, {7756, 8}, {9030, 9}, {9850, 8}, {10066, 9}, {11976, 8}, {12239, 9}, {13939, 10}, {14557, 9}, {15202, 10}, {15535, 9}, {15876, 8}, {16224, 9}, {22461, 10}, {23970, 9}, {28509, 10}, {31772, 9}, {36977, 10}, {40326, 9}, {41210, 10}, {57042, 11}, {62207, 12}, {63570, 10}, {82448, 11}, {98051, 12}, {127165, 11}, {129950, 10}, {135704, 9}, {141713, 10}, {144817, 11}, {200424, 12}, {204813, 11}, {209298, 12}, {223352, 11}, {228243, 12}, {259924, 11}, {265616, 10}, {283451, 11}, {296001, 10}, {344468, 11}, {352011, 12}, {392279, 11}, {497829, 12}, {508731, 13}, {519871, 12}, {531255, 11}, {767770, 12}, {784582, 11}, {855595, 12}, {933036, 11}, {995682, 12}, {MP_SIZE_T_MAX,0}} - -#define SQR_FFTM_TABLE2 {{1, 4}, {344, 5}, {360, 4}, {368, 5}, {743, 6}, {1760, 7}, {1799, 6}, {1880, 7}, {3248, 8}, {3393, 7}, {3622, 8}, {3867, 7}, {4039, 8}, {6957, 9}, {7756, 8}, {8460, 9}, {8836, 8}, {9030, 9}, {9850, 8}, {10066, 9}, {13939, 10}, {14245, 9}, {14876, 10}, {15535, 9}, {18084, 10}, {18480, 9}, {19299, 10}, {19722, 9}, {21047, 10}, {23970, 9}, {25581, 10}, {27898, 9}, {28509, 10}, {31772, 9}, {33906, 10}, {44943, 11}, {47962, 10}, {57042, 11}, {62207, 12}, {63570, 10}, {69326, 11}, {80681, 10}, {82448, 11}, {114110, 12}, {127165, 11}, {164920, 12}, {196129, 13}, {254354, 12}, {259924, 11}, {277377, 10}, {283451, 11}, {289658, 12}, {329862, 11}, {344468, 12}, {392279, 11}, {427785, 12}, {437153, 13}, {519871, 12}, {531255, 11}, {688959, 12}, {704046, 13}, {784582, 11}, {819320, 12}, {933036, 11}, {995682, 12}, {MP_SIZE_T_MAX,0}} - -#define MUL_FFT_FULL_TABLE2 {{16, 2}, {1022, 1}, {1045, 2}, {1068, 5}, {1092, 6}, {1141, 5}, {1166, 4}, {1219, 3}, {1302, 4}, {1361, 2}, {1454, 1}, {1486, 4}, {1553, 6}, {1588, 2}, {1659, 4}, {1696, 2}, {1734, 3}, {1772, 2}, {1851, 1}, {1934, 2}, {2021, 1}, {2066, 2}, {2256, 5}, {2357, 4}, {2409, 1}, {2462, 3}, {2572, 2}, {2687, 1}, {2746, 2}, {2932, 1}, {2997, 4}, {3063, 1}, {3343, 4}, {3417, 1}, {3492, 4}, {3648, 1}, {3980, 2}, {4440, 5}, {4638, 1}, {4951, 4}, {5060, 3}, {5171, 2}, {5285, 1}, {5401, 2}, {5765, 1}, {5892, 2}, {6022, 4}, {6154, 1}, {6427, 2}, {6568, 1}, {7986, 2}, {8161, 1}, {8523, 2}, {8901, 1}, {9096, 3}, {9296, 1}, {10140, 3}, {10363, 2}, {10590, 1}, {11803, 2}, {12062, 4}, {12327, 1}, {15993, 2}, {16344, 1}, {20300, 3}, {20745, 1}, {22140, 2}, {22625, 1}, {23628, 2}, {24146, 4}, {24675, 1}, {26334, 3}, {26911, 1}, {28720, 2}, {29349, 1}, {32708, 2}, {33425, 5}, {34157, 2}, {35670, 5}, {36452, 6}, {37251, 4}, {38067, 5}, {38901, 1}, {40624, 3}, {41514, 1}, {42424, 3}, {43353, 2}, {47280, 4}, {48316, 2}, {49374, 4}, {50456, 6}, {51561, 9}, {53845, 5}, {56230, 4}, {61321, 1}, {62664, 2}, {64037, 1}, {65440, 2}, {71365, 5}, {74525, 6}, {76157, 4}, {81272, 3}, {83052, 1}, {84871, 3}, {86730, 2}, {94582, 1}, {96654, 2}, {98771, 4}, {100934, 3}, {107713, 6}, {112483, 5}, {114947, 1}, {130905, 2}, {133772, 5}, {136702, 8}, {139696, 9}, {145881, 7}, {149076, 6}, {152341, 4}, {155677, 1}, {159086, 4}, {162570, 3}, {173486, 2}, {197567, 4}, {206315, 1}, {215450, 2}, {220168, 1}, {261830, 2}, {291783, 1}, {311376, 4}, {325163, 5}, {332284, 3}, {346997, 1}, {354596, 2}, {362361, 1}, {386691, 2}, {395159, 4}, {412655, 3}, {421691, 1}, {523686, 2}, {535154, 1}, {558848, 2}, {571086, 1}, {583592, 2}, {596372, 5}, {622776, 4}, {650350, 1}, {664591, 3}, {694016, 1}, {724743, 2}, {790340, 1}, {919743, 4}, {981496, 3}, {MP_SIZE_T_MAX,0}} - -#define SQR_FFT_FULL_TABLE2 {{16, 2}, {1022, 1}, {1045, 2}, {1068, 1}, {1092, 2}, {1116, 5}, {1166, 4}, {1219, 3}, {1302, 4}, {1361, 2}, {1454, 1}, {1486, 4}, {1553, 6}, {1588, 2}, {1659, 4}, {1696, 2}, {1734, 3}, {1772, 2}, {1851, 1}, {1934, 2}, {2021, 1}, {2112, 2}, {2256, 5}, {2306, 4}, {2409, 1}, {2462, 3}, {2572, 2}, {2629, 1}, {2746, 2}, {2932, 1}, {2997, 4}, {3063, 3}, {3131, 6}, {3200, 5}, {3271, 1}, {3343, 4}, {3417, 1}, {3492, 4}, {3569, 2}, {3648, 1}, {3980, 2}, {4068, 1}, {4158, 2}, {4440, 5}, {4638, 1}, {4951, 3}, {5171, 2}, {5285, 1}, {5401, 2}, {5765, 1}, {5892, 2}, {6022, 4}, {6154, 1}, {6427, 2}, {6568, 1}, {7986, 2}, {8901, 1}, {9096, 3}, {9296, 1}, {10140, 3}, {10363, 2}, {10590, 1}, {11803, 2}, {12062, 4}, {12327, 1}, {15993, 2}, {16344, 1}, {17068, 2}, {17824, 1}, {23628, 2}, {24146, 4}, {24675, 1}, {32708, 2}, {35670, 1}, {36452, 4}, {38067, 5}, {38901, 1}, {40624, 3}, {41514, 1}, {42424, 3}, {43353, 2}, {47280, 4}, {48316, 2}, {49374, 4}, {50456, 6}, {51561, 8}, {53845, 5}, {56230, 4}, {61321, 1}, {62664, 2}, {64037, 1}, {65440, 2}, {71365, 5}, {74525, 4}, {81272, 3}, {83052, 2}, {84871, 3}, {86730, 2}, {94582, 1}, {96654, 2}, {98771, 4}, {100934, 3}, {107713, 1}, {130905, 2}, {145881, 5}, {149076, 6}, {152341, 4}, {155677, 1}, {159086, 4}, {162570, 3}, {173486, 2}, {197567, 4}, {201894, 7}, {206315, 10}, {215450, 6}, {220168, 5}, {229917, 1}, {261830, 2}, {291783, 4}, {298173, 6}, {304703, 5}, {311376, 4}, {325163, 5}, {332284, 3}, {346997, 2}, {362361, 1}, {386691, 2}, {395159, 4}, {412655, 2}, {421691, 1}, {523686, 2}, {535154, 5}, {546873, 1}, {558848, 2}, {571086, 1}, {583592, 2}, {596372, 3}, {609431, 1}, {622776, 4}, {650350, 1}, {664591, 2}, {679144, 1}, {694016, 3}, {709213, 1}, {756831, 2}, {773404, 1}, {790340, 4}, {825333, 6}, {843406, 3}, {880748, 2}, {900034, 1}, {919743, 3}, {960464, 2}, {981496, 3}, {MP_SIZE_T_MAX,0}} +#define MULMOD_2EXPM1_THRESHOLD 20 +#define FAC_UI_THRESHOLD 6906 +#define DC_DIV_QR_THRESHOLD 92 +#define DC_DIVAPPR_Q_N_THRESHOLD 807 +#define INV_DIV_QR_THRESHOLD 2801 +#define INV_DIVAPPR_Q_N_THRESHOLD 807 +#define DC_DIV_Q_THRESHOLD 807 +#define INV_DIV_Q_THRESHOLD 1164 +#define DC_DIVAPPR_Q_THRESHOLD 807 +#define INV_DIVAPPR_Q_THRESHOLD 3690 +#define DC_BDIV_QR_THRESHOLD 88 +#define DC_BDIV_Q_THRESHOLD 448 +/* Tuneup completed successfully, took 1025 seconds */