aboutsummaryrefslogtreecommitdiff
path: root/src/x86_64/core2/mparam.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/x86_64/core2/mparam.h')
-rw-r--r--src/x86_64/core2/mparam.h236
1 files changed, 236 insertions, 0 deletions
diff --git a/src/x86_64/core2/mparam.h b/src/x86_64/core2/mparam.h
new file mode 100644
index 0000000..0cf85d0
--- /dev/null
+++ b/src/x86_64/core2/mparam.h
@@ -0,0 +1,236 @@
+/* Various Thresholds of MPFR, not exported. -*- mode: C -*-
+
+Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
+
+This file is part of the GNU MPFR Library.
+
+The GNU MPFR Library is free software; you can redistribute it and/or modify
+it under the terms of the GNU Lesser General Public License as published by
+the Free Software Foundation; either version 3 of the License, or (at your
+option) any later version.
+
+The GNU MPFR Library is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+License for more details.
+
+You should have received a copy of the GNU Lesser General Public License
+along with the GNU MPFR Library; see the file COPYING.LESSER. If not, see
+http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
+51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */
+
+/* Generated by MPFR's tuneup.c, 2011-07-31, gcc 4.3.2 */
+/* gcc14.fsffrance.org (Intel(R) Xeon(R) CPU X5450 @ 3.00GHz) with gmp 5.0.2 */
+
+/* very similar timings were obtained on 2012-01-25 with gcc 4.1.3
+ on gcc70.fsffrance.org (Intel(R) Xeon(TM) CPU 3.20GHz) with gmp 5.0.2,
+ where GMP defines -mtune=nocona, thus we share the parameters */
+
+#define MPFR_MULHIGH_TAB \
+ -1,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,9, \
+ 10,10,12,12,13,13,13,13,14,16,16,17,18,19,20,24, \
+ 24,24,24,24,26,26,26,26,28,28,28,30,30,32,32,28, \
+ 28,30,30,32,32,32,32,32,32,32,32,34,36,48,38,36, \
+ 40,46,48,48,48,48,48,48,48,48,48,48,48,56,56,56, \
+ 56,48,48,48,56,60,60,60,64,64,56,56,56,60,60,60, \
+ 64,69,64,64,64,69,69,69,69,69,69,69,64,64,75,81, \
+ 81,80,80,80,81,81,81,81,81,81,87,81,87,87,92,93, \
+ 92,87,93,92,87,90,93,92,93,92,90,93,92,93,92,93, \
+ 92,93,93,93,104,93,99,93,99,104,105,104,105,104,105,104, \
+ 111,104,111,110,104,117,117,117,117,117,117,104,105,141,141,140, \
+ 141,141,141,141,141,141,141,141,141,141,141,141,141,140,141,141, \
+ 141,141,141,141,141,141,141,141,140,141,141,141,141,138,140,141, \
+ 141,141,140,141,141,141,141,141,141,141,141,141,165,141,153,141, \
+ 153,165,188,188,188,188,188,188,188,188,188,188,188,188,188,188, \
+ 188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188, \
+ 188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188, \
+ 188,188,204,204,188,203,188,188,204,204,188,188,216,220,220,220, \
+ 220,204,204,220,220,220,220,220,220,220,220,220,220,220,220,220, \
+ 220,220,220,235,236,219,220,220,236,236,236,236,236,236,236,236, \
+ 236,236,236,236,236,236,236,282,282,282,282,282,282,282,282,282, \
+ 282,282,282,282,282,282,282,282,282,281,282,280,282,282,282,282, \
+ 282,282,282,282,282,282,282,281,281,282,281,281,282,282,282,282, \
+ 282,282,282,282,282,282,282,282,282,282,282,281,282,280,281,282, \
+ 282,282,282,282,306,282,306,330,330,306,281,330,282,282,330,330, \
+ 330,282,330,329,330,330,330,330,330,330,330,330,330,330,330,330, \
+ 330,330,330,330,330,330,330,330,330,330,354,354,330,330,330,329, \
+ 330,330,330,330,330,330,330,329,330,330,354,354,330,330,330,330, \
+ 330,330,378,330,354,330,354,354,354,354,354,377,378,354,354,354, \
+ 378,354,378,378,354,353,354,378,354,378,378,377,378,378,378,408, \
+ 408,408,378,408,408,408,378,416,408,408,377,378,378,408,408,407, \
+ 408,408,408,408,408,408,408,440,408,440,440,440,439,440,440,440, \
+ 432,439,440,440,440,439,440,440,440,439,440,439,440,439,440,440, \
+ 440,440,440,439,440,440,440,440,440,439,440,440,440,440,439,440, \
+ 440,440,440,439,471,440,440,440,440,440,440,439,440,440,440,440, \
+ 440,440,440,440,440,440,472,440,440,439,440,440,440,439,440,440, \
+ 440,472,439,440,440,440,472,440,471,472,472,472,472,472,472,471, \
+ 471,472,471,472,472,472,504,504,504,504,504,504,504,504,472,471, \
+ 472,472,504,472,471,472,504,504,504,504,504,503,504,504,504,504, \
+ 504,503,504,504,504,504,503,504,504,504,504,504,503,504,504,504, \
+ 504,504,503,504,504,504,504,504,504,504,504,504,504,504,504,504, \
+ 504,504,504,504,544,544,544,544,544,544,544,544,544,544,544,544, \
+ 542,543,544,544,544,544,544,544,544,544,544,544,544,544,544,544, \
+ 543,544,544,544,544,544,544,544,544,544,544,544,544,544,544,544, \
+ 544,592,544,544,592,592,544,592,592,591,592,592,632,631,592,592, \
+ 592,592,592,592,592,640,640,640,640,640,616,616,616,616,616,616, \
+ 632,592,616,616,632,630,631,632,632,632,616,632,640,632,632,640, \
+ 640,640,640,640,640,640,639,640,632,632,639,640,640,640,632,632, \
+ 640,639,640,640,632,640,640,640,640,640,640,640,640,640,640,640, \
+ 640,640,640,640,640,640,632,640,640,640,640,640,640,640,640,640, \
+ 640,640,640,640,640,640,640,640,640,640,632,688,640,640,632,632, \
+ 640,640,640,640,639,640,640,640,688,632,687,640,712,688,640,640, \
+ 640,640,640,712,640,640,640,712,736,640,640,640,711,712,736,736, \
+ 640,640,688,712,712,712,712,712,728,736,728,728,736,736,736,736, \
+ 736,736,736,736,734,736,728,736,736,736,728,736,736,736,736,736, \
+ 736,736,736,736,735,712,736,736,736,712,736,736,736,736,736,736, \
+ 736,736,736,712,736,736,712,736,728,712,736,712,736,736,736,736, \
+ 728,712,736,736,735,736,736,736,735,736,736,736,736,735,736,736, \
+ 736,736,736,736,736,736,736,736,736,736,736,736,736,734,736,736, \
+ 736,736,735,736,736,736,735,736,736,736,736,736,736,736,736,736, \
+ 736,736,736,736,736,736,736,736,736,736,736,736,736,736,736,736, \
+ 736,736,736,736,736,736,736,736,736,736,736,736,736,736,735,736, \
+ 736,736,736,736,736,736,736,736,736,736,736,736,736,736,736,736, \
+ 824,824,832,832,832,832,824,832,832,832,832,832,824,831,832,832 \
+
+#define MPFR_SQRHIGH_TAB \
+ -1,0,0,0,0,0,0,5,6,6,7,8,8,8,10,9, \
+ 10,11,11,11,12,13,13,13,14,16,16,17,17,17,17,17, \
+ 18,19,20,21,20,23,24,21,26,23,23,24,24,24,25,28, \
+ 26,28,28,34,32,34,32,32,34,34,32,34,34,34,34,34, \
+ 34,36,40,38,38,36,42,42,40,40,40,40,42,42,42,42, \
+ 46,42,48,48,48,46,52,52,52,52,52,52,56,56,56,56, \
+ 64,56,64,64,64,64,68,56,64,64,64,68,63,64,64,68, \
+ 68,68,68,68,64,68,68,68,72,64,68,68,68,64,67,68, \
+ 68,68,68,68,68,68,72,84,80,72,72,72,72,72,76,76, \
+ 76,76,80,80,76,76,80,84,80,80,80,84,84,84,84,84, \
+ 84,84,84,96,84,84,92,92,96,96,96,99,92,92,92,95, \
+ 96,105,111,105,104,105,104,104,105,105,105,105,104,105,104,105, \
+ 99,114,105,116,117,117,117,123,117,123,116,123,116,111,123,123, \
+ 123,123,123,123,123,117,117,117,123,123,123,117,123,117,123,123, \
+ 123,123,123,123,117,123,123,123,156,123,123,141,123,123,135,135, \
+ 123,148,123,141,141,156,156,129,156,163,156,164,156,156,156,135, \
+ 156,141,155,164,156,156,164,148,148,147,141,164,164,164,164,156, \
+ 164,164,164,164,163,164,164,164,164,164,164,164,164,164,164,164, \
+ 164,156,164,164,156,164,164,164,188,163,164,164,164,164,187,188, \
+ 180,164,204,204,164,188,196,188,188,204,196,180,196,204,188,196, \
+ 220,187,204,220,204,180,220,220,204,204,196,204,220,204,220,220, \
+ 220,220,204,220,220,220,220,220,220,220,220,220,220,220,220,220, \
+ 252,220,220,220,220,220,252,220,252,220,220,220,220,252,252,252, \
+ 252,252,252,252,252,252,252,252,252,252,252,252,267,268,252,252, \
+ 252,250,252,252,252,268,251,252,268,252,268,268,268,252,252,252, \
+ 265,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268, \
+ 268,267,268,268,268,267,268,268,268,267,268,268,268,268,268,268, \
+ 268,268,252,268,252,268,268,268,268,268,268,265,268,268,268,268, \
+ 268,268,268,268,268,268,268,268,268,268,268,268,265,268,268,268, \
+ 252,268,268,266,268,268,268,328,265,282,312,268,268,268,268,268, \
+ 268,268,268,268,268,268,268,311,310,282,282,294,312,282,281,294, \
+ 282,268,312,312,268,311,312,268,268,312,268,312,312,268,312,327, \
+ 268,312,328,268,328,268,328,328,328,312,328,312,327,328,328,312, \
+ 327,328,328,327,325,327,327,359,328,328,327,328,328,328,328,328, \
+ 311,328,360,360,360,360,360,360,360,360,360,360,328,360,360,360, \
+ 328,312,328,360,327,328,328,359,360,328,359,328,312,360,360,327, \
+ 312,408,328,440,328,328,328,328,328,392,328,328,408,408,408,392, \
+ 407,408,408,408,392,407,408,408,407,407,408,408,408,392,408,408, \
+ 407,408,392,408,408,440,406,408,408,408,440,408,408,408,440,440, \
+ 440,440,440,392,440,392,440,440,440,440,440,440,440,440,440,440, \
+ 408,392,440,440,440,438,439,440,440,440,440,440,440,439,440,439, \
+ 440,440,440,504,408,504,408,408,408,472,408,408,407,408,440,439, \
+ 439,440,440,440,440,440,440,440,437,440,440,440,439,504,503,504, \
+ 504,503,504,504,440,502,504,503,503,504,504,503,504,504,504,504, \
+ 504,503,504,504,499,503,502,504,504,536,502,504,504,504,536,504, \
+ 504,504,503,504,504,503,536,504,502,536,503,504,504,504,536,536, \
+ 504,504,504,536,536,535,504,536,535,504,504,504,504,504,504,536, \
+ 536,536,503,536,504,503,536,536,504,535,536,536,504,535,520,536, \
+ 504,504,504,536,535,536,520,536,535,520,536,535,535,536,536,535, \
+ 504,536,536,535,536,535,535,536,536,536,536,536,535,504,536,536, \
+ 536,536,536,536,536,536,536,536,536,535,536,536,536,535,504,536, \
+ 536,536,536,536,504,535,536,536,536,535,535,536,536,536,536,536, \
+ 536,535,536,504,536,535,536,536,536,536,536,504,504,536,504,535, \
+ 536,504,536,535,536,504,504,504,536,536,504,536,504,536,504,536, \
+ 536,504,535,536,632,535,536,536,535,536,536,536,536,536,632,632, \
+ 536,631,536,536,535,536,536,536,536,535,536,536,536,631,632,632, \
+ 536,536,630,535,536,536,600,632,631,600,536,536,536,536,535,632, \
+ 536,598,536,600,536,631,600,568,632,568,568,568,568,568,664,566, \
+ 568,568,632,632,664,568,664,663,632,629,632,535,600,536,536,536, \
+ 632,536,536,599,536,630,536,632,631,632,600,600,600,664,600,664, \
+ 664,632,600,599,664,600,662,663,664,599,598,616,632,625,632,630, \
+ 628,627,630,631,632,663,632,631,632,630,632,631,632,626,632,632, \
+ 632,663,631,631,632,632,632,664,632,632,600,632,632,600,632,632, \
+ 600,600,632,632,632,662,663,663,663,600,664,632,664,663,664,632 \
+
+#define MPFR_DIVHIGH_TAB \
+ 0,1,2,3,4,5,6,7,8,9,10,11,12,13,12,13, \
+ 14,15,16,13,14,14,14,15,15,17,17,17,19,19,19,19, \
+ 23,23,19,25,23,25,23,25,25,22,26,28,25,28,25,25, \
+ 28,27,31,27,29,28,33,31,32,33,31,32,33,33,35,35, \
+ 35,39,37,43,39,37,39,41,39,40,39,40,41,45,41,47, \
+ 45,45,47,43,44,45,50,54,49,46,53,47,55,56,52,55, \
+ 52,60,60,52,60,64,62,55,55,62,55,58,56,64,61,59, \
+ 63,63,64,59,60,60,63,64,64,63,64,64,68,68,66,66, \
+ 68,69,71,71,70,71,71,72,78,74,74,71,72,78,78,74, \
+ 76,77,78,79,78,80,79,79,84,83,80,80,82,95,96,83, \
+ 92,92,88,91,92,84,95,95,92,96,94,91,94,92,96,94, \
+ 96,96,96,104,94,94,112,112,104,112,112,112,96,112,112,112, \
+ 112,112,110,104,112,112,112,111,112,108,110,120,112,112,112,112, \
+ 112,112,120,112,120,120,112,120,120,120,120,120,128,120,120,116, \
+ 128,128,124,128,120,128,128,120,120,120,128,120,128,120,124,128, \
+ 128,128,128,127,128,128,126,128,128,128,128,127,136,128,138,137, \
+ 137,135,138,138,138,137,135,138,150,150,138,147,150,138,150,150, \
+ 150,150,160,160,156,150,156,148,150,158,162,160,161,160,150,160, \
+ 160,160,168,156,156,160,168,173,162,156,180,160,160,157,168,160, \
+ 160,160,162,168,168,160,184,162,184,162,160,160,174,160,184,180, \
+ 184,184,180,184,184,186,180,184,184,184,184,184,186,188,188,192, \
+ 185,184,184,186,192,192,192,186,182,192,192,185,184,184,192,208, \
+ 192,184,184,180,192,184,192,186,186,184,192,186,186,191,186,185, \
+ 192,216,192,192,208,192,191,192,192,192,204,192,207,192,216,208, \
+ 208,216,216,197,196,216,216,208,216,222,216,222,208,222,208,222, \
+ 224,208,209,216,216,209,224,207,216,222,224,224,208,223,224,224, \
+ 224,216,222,222,224,224,224,216,224,216,222,221,222,224,224,224, \
+ 224,224,224,232,224,222,224,232,225,233,224,240,224,232,256,240, \
+ 256,256,240,255,240,256,256,240,232,240,232,232,240,232,256,256, \
+ 256,256,256,256,256,256,255,256,256,240,256,240,256,240,254,252, \
+ 256,256,256,256,256,256,256,256,254,256,256,282,276,256,254,256, \
+ 256,255,282,256,255,256,255,256,255,288,256,264,264,256,274,276, \
+ 276,269,273,273,282,269,276,276,276,276,273,282,276,282,276,277, \
+ 280,312,282,281,288,282,276,282,276,276,288,312,276,288,300,276, \
+ 304,276,288,300,304,312,312,312,312,312,306,312,312,312,316,300, \
+ 324,312,320,320,300,312,312,312,312,324,312,330,300,320,312,312, \
+ 316,318,324,324,318,312,312,324,336,336,324,312,312,336,324,320, \
+ 312,336,312,324,336,336,336,368,324,348,312,336,368,312,312,320, \
+ 368,372,368,312,324,376,372,312,368,376,376,372,370,372,318,376, \
+ 320,372,372,368,372,324,376,376,376,376,368,372,376,376,376,376, \
+ 372,372,376,376,376,372,384,376,372,368,384,376,376,370,376,376, \
+ 376,371,372,368,384,336,370,370,376,372,376,376,368,376,376,372, \
+ 376,370,376,368,376,372,376,376,368,376,376,368,368,376,368,368, \
+ 370,370,372,368,372,376,376,376,376,368,370,368,368,372,376,376, \
+ 372,376,368,376,376,376,372,376,376,372,376,376,368,376,372,376, \
+ 372,368,376,370,376,372,376,372,376,376,372,370,376,376,370,372, \
+ 372,373,376,376,384,384,384,376,376,376,376,384,376,376,384,384, \
+ 384,416,384,384,408,384,416,384,384,384,384,408,416,416,416,432, \
+ 408,408,416,408,408,416,408,416,416,416,416,416,416,408,407,440, \
+ 432,408,416,408,416,440,416,408,416,416,432,416,416,440,416,416, \
+ 416,440,432,440,408,448,448,408,408,432,440,432,448,416,416,416, \
+ 440,432,432,416,448,432,465,440,432,440,480,448,416,448,432,432, \
+ 480,432,448,440,466,448,432,440,432,440,440,440,480,430,448,448, \
+ 448,439,440,432,438,447,448,440,440,440,448,448,480,432,448,448, \
+ 448,448,448,447,448,448,448,447,448,448,440,465,448,467,448,448, \
+ 448,448,464,464,448,448,466,480,480,480,468,480,448,464,480,464, \
+ 466,466,464,479,480,480,512,480,540,480,496,480,552,512,480,479, \
+ 504,480,552,552,512,480,504,552,564,512,480,480,504,561,564,564, \
+ 512,552,560,564,564,480,564,480,552,480,564,564,564,564,536,564, \
+ 540,564,552,564,564,564,564,552,564,552,564,480,564,552,552,564, \
+ 512,564,546,564,564,564,512,552,552,559,560,561,564,564,560,560, \
+ 552,561,564,564,560,564,561,564,564,564,564,564,564,564,564,560, \
+ 561,560,564,564,560,564,564,552,564,564,564,552,564,564,564,564, \
+ 564,563,564,564,564,564,560,564,564,564,564,552,564,564,560,564 \
+
+#define MPFR_MUL_THRESHOLD 7 /* limbs */
+#define MPFR_SQR_THRESHOLD 12 /* limbs */
+#define MPFR_DIV_THRESHOLD 20 /* limbs */
+#define MPFR_EXP_2_THRESHOLD 1024 /* bits */
+#define MPFR_EXP_THRESHOLD 9670 /* bits */
+#define MPFR_SINCOS_THRESHOLD 23808 /* bits */
+#define MPFR_AI_THRESHOLD1 -13250 /* threshold for negative input of mpfr_ai */
+#define MPFR_AI_THRESHOLD2 1430
+#define MPFR_AI_THRESHOLD3 21190
+/* Tuneup completed successfully, took 770 seconds */