aboutsummaryrefslogtreecommitdiff
path: root/src/x86/mparam.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/x86/mparam.h')
-rw-r--r--src/x86/mparam.h233
1 files changed, 233 insertions, 0 deletions
diff --git a/src/x86/mparam.h b/src/x86/mparam.h
new file mode 100644
index 0000000..5514690
--- /dev/null
+++ b/src/x86/mparam.h
@@ -0,0 +1,233 @@
+/* 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.4.2 */
+/* contributed by Jim Cloos <cloos at jhcloos dot com> with GMP 5.0.2 on a
+ Pentium3-M, where __i386, __i686, __pentiumpro are defined */
+
+#define MPFR_MULHIGH_TAB \
+ -1,0,-1,-1,-1,-1,-1,-1,-1,7,8,9,10,0,0,0, \
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, \
+ 0,0,0,0,0,0,0,0,0,0,28,30,30,30,30,32, \
+ 32,32,34,34,34,32,34,34,34,36,36,36,36,40,40,40, \
+ 42,44,48,48,48,48,48,48,48,48,48,52,52,52,52,52, \
+ 52,52,56,56,60,56,60,60,60,60,60,64,64,64,64,64, \
+ 64,64,64,64,64,64,68,64,64,68,68,68,68,72,72,81, \
+ 81,80,81,81,87,87,87,87,87,87,87,87,87,87,93,87, \
+ 93,93,93,93,93,93,93,93,99,99,93,93,93,92,93,99, \
+ 99,99,99,99,99,99,99,99,105,105,99,105,105,104,105,105, \
+ 105,105,111,117,117,117,117,117,117,117,117,117,117,117,117,117, \
+ 123,123,123,123,141,141,141,141,141,141,141,141,141,141,141,141, \
+ 141,141,141,141,141,141,141,141,141,153,153,153,153,153,153,153, \
+ 153,153,153,153,153,165,165,165,153,165,165,165,165,165,165,165, \
+ 165,165,165,165,165,177,177,165,177,177,177,177,165,177,177,177, \
+ 177,177,177,177,177,177,177,177,177,177,177,177,177,177,177,177, \
+ 177,177,189,204,189,204,204,204,204,204,204,189,204,189,204,204, \
+ 204,204,204,204,204,204,204,204,203,204,204,204,204,204,204,204, \
+ 220,204,220,220,220,220,220,220,220,220,220,220,220,220,220,220, \
+ 236,220,236,236,236,236,236,235,236,235,236,236,236,236,235,236, \
+ 236,236,236,236,236,236,236,236,236,252,252,252,252,252,252,252, \
+ 252,252,252,252,252,252,252,252,282,282,282,282,282,282,282,282, \
+ 282,282,282,282,282,282,282,282,282,282,282,282,282,282,282,282, \
+ 282,282,282,282,282,282,282,306,306,282,306,306,306,306,306,306, \
+ 306,306,306,306,306,306,306,306,306,306,306,306,306,306,306,306, \
+ 306,306,306,306,306,330,330,330,329,330,330,330,330,330,330,330, \
+ 330,330,330,330,330,330,330,330,330,330,330,330,330,330,354,354, \
+ 354,354,354,354,354,354,354,354,354,354,354,354,354,354,354,354, \
+ 354,354,354,354,354,354,354,354,354,378,378,378,378,378,378,378, \
+ 378,377,378,378,378,378,378,378,378,378,378,378,378,378,378,378, \
+ 408,408,408,408,408,408,408,408,408,408,408,408,408,408,408,408, \
+ 408,408,408,408,408,408,407,408,407,408,408,407,408,408,408,408, \
+ 408,408,439,408,440,440,439,440,440,440,440,439,440,440,439,440, \
+ 439,440,439,440,439,439,440,440,440,440,439,440,439,440,439,440, \
+ 440,440,439,439,440,440,472,440,472,439,440,439,440,440,440,472, \
+ 472,472,469,471,471,472,471,471,472,471,470,470,472,472,471,472, \
+ 472,504,504,463,471,455,438,501,462,497,501,503,459,471,451,467, \
+ 448,501,503,485,504,453,469,470,503,472,496,496,480,467,504,460, \
+ 504,488,488,532,535,497,480,470,504,497,504,492,497,498,536,468, \
+ 504,510,519,528,500,500,495,504,504,504,504,534,504,504,498,504, \
+ 504,511,504,504,504,503,504,563,504,511,504,504,504,504,504,504, \
+ 504,504,533,504,536,536,536,533,536,536,536,536,536,536,536,536, \
+ 536,536,536,536,536,536,536,536,536,536,536,536,536,536,566,536, \
+ 536,536,536,568,568,568,568,568,568,568,568,568,568,568,568,568, \
+ 568,568,568,568,568,568,568,568,568,568,568,568,568,568,592,592, \
+ 592,592,592,592,592,592,592,592,640,592,640,592,640,639,640,640, \
+ 640,640,640,639,640,639,640,640,640,639,640,640,640,640,640,640, \
+ 640,640,640,640,640,640,640,640,640,640,640,640,640,640,640,640, \
+ 639,640,639,639,688,688,688,639,640,639,640,640,640,687,688,688, \
+ 688,687,687,688,688,688,688,688,688,688,688,687,688,736,688,688, \
+ 688,687,636,688,688,688,688,688,688,688,688,688,688,688,688,688, \
+ 688,688,688,688,688,688,688,688,688,688,687,688,688,688,688,688, \
+ 688,688,688,688,688,688,688,688,688,688,688,688,736,736,736,736, \
+ 736,736,736,736,736,736,736,736,688,735,736,736,736,736,736,736, \
+ 736,736,736,736,736,736,736,736,736,736,736,735,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,735,736,736,736,736,736,736,736,736, \
+ 736,736,736,736,784,736,784,784,736,736,736,736,736,736,736,736, \
+ 736,736,736,736,736,736,736,736,736,736,736,736,736,736,736,736, \
+ 784,736,784,784,784,784,784,784,736,784,736,784,784,784,784,736, \
+ 784,783,784,784,784,784,784,784,784,784,784,784,784,784,784,784, \
+ 784,784,784,784,784,784,784,784,784,784,784,832,784,784,784,784, \
+ 832,784,832,831,832,831,832,832,832,832,832,784,784,784,784,784, \
+ 832,784,832,784,832,832,832,832,832,832,832,832,832,832,832,832 \
+
+#define MPFR_SQRHIGH_TAB \
+ -1,0,0,-1,-1,-1,-1,5,6,6,7,7,8,8,9,9, \
+ 10,11,12,11,12,13,14,13,14,15,16,15,16,16,17,17, \
+ 18,19,19,19,20,20,21,22,23,22,23,24,25,24,25,26, \
+ 27,26,27,27,28,28,29,29,30,31,32,31,32,32,33,34, \
+ 35,34,35,36,36,38,38,38,39,40,40,40,41,41,41,41, \
+ 42,43,44,44,48,48,48,48,48,50,52,50,52,52,54,54, \
+ 56,56,58,54,54,54,56,56,56,56,58,58,60,60,62,64, \
+ 64,64,62,62,64,64,64,64,64,66,66,68,68,70,68,72, \
+ 70,72,74,72,74,72,72,72,74,74,76,72,72,72,74,74, \
+ 76,76,76,76,78,78,78,80,80,80,80,80,80,80,87,90, \
+ 87,90,90,93,93,90,90,90,90,93,93,93,90,96,96,93, \
+ 96,96,96,96,96,93,99,96,102,99,99,99,96,102,102,102, \
+ 108,102,105,105,105,108,111,111,108,111,111,111,111,111,111,117, \
+ 114,117,114,117,117,120,120,120,120,120,120,120,123,126,126,126, \
+ 126,129,129,129,129,129,132,132,132,135,135,135,141,141,141,141, \
+ 141,141,148,148,148,152,148,152,152,148,152,156,156,156,156,156, \
+ 160,135,141,152,141,141,141,141,141,141,141,141,141,141,141,141, \
+ 141,141,152,141,156,152,156,156,160,160,160,152,160,156,156,156, \
+ 160,160,156,168,160,168,164,164,168,160,168,176,172,168,168,172, \
+ 172,172,176,176,188,176,176,172,188,188,188,188,188,187,188,188, \
+ 188,188,188,188,196,188,196,196,196,196,196,204,204,204,204,204, \
+ 204,204,204,212,212,212,212,212,212,212,212,220,220,220,220,220, \
+ 220,220,220,219,220,220,220,228,220,228,220,220,228,228,220,220, \
+ 220,236,236,228,228,236,228,236,228,244,244,228,244,244,236,236, \
+ 258,236,258,258,258,258,258,258,258,264,258,264,264,264,264,264, \
+ 264,264,264,264,264,258,264,258,264,282,258,264,282,282,282,282, \
+ 282,264,264,282,282,276,264,264,282,294,282,282,282,282,282,282, \
+ 282,282,282,282,282,282,282,282,282,282,282,282,294,282,282,282, \
+ 282,282,282,306,282,282,306,306,282,306,306,306,306,318,306,318, \
+ 318,318,318,318,318,318,318,318,318,318,318,330,330,318,318,318, \
+ 330,318,318,330,330,318,318,318,318,318,318,330,342,330,330,330, \
+ 330,330,330,330,330,330,330,330,330,318,330,318,318,342,342,318, \
+ 342,318,318,342,318,330,330,330,330,330,318,330,330,318,330,318, \
+ 342,330,342,342,342,342,342,342,342,330,342,342,330,342,342,342, \
+ 342,354,342,342,342,342,342,342,342,354,342,342,354,354,354,342, \
+ 354,354,354,354,354,354,354,378,366,366,366,366,378,366,366,366, \
+ 378,408,366,378,378,378,378,378,378,378,378,378,378,424,424,424, \
+ 424,424,424,424,424,408,408,408,408,408,408,408,408,408,408,408, \
+ 408,408,424,424,408,424,408,424,424,408,408,424,424,424,424,424, \
+ 424,424,424,424,424,424,408,424,424,424,424,424,440,424,440,424, \
+ 424,440,424,424,424,424,440,440,440,440,424,424,440,440,424,424, \
+ 424,424,440,424,440,456,456,424,440,440,440,440,456,424,424,424, \
+ 440,440,456,440,472,456,440,440,472,440,456,440,440,440,456,440, \
+ 440,440,456,456,456,472,471,472,456,472,440,472,488,488,455,455, \
+ 456,456,488,456,472,488,504,472,456,504,488,488,456,472,472,471, \
+ 472,502,472,472,496,488,487,503,456,504,504,503,504,456,456,487, \
+ 488,488,504,488,487,504,503,503,504,504,503,503,503,504,502,503, \
+ 502,504,519,501,504,551,502,520,520,488,504,479,517,503,488,463, \
+ 472,456,504,503,487,519,552,534,485,480,486,502,499,552,504,534, \
+ 486,440,504,511,512,533,516,472,536,567,534,494,519,440,542,534, \
+ 528,592,468,536,516,485,472,583,550,509,537,471,493,533,526,446, \
+ 558,498,499,495,487,571,500,544,471,583,545,530,470,566,520,536, \
+ 558,463,504,544,534,494,520,542,522,520,552,520,514,483,434,607, \
+ 566,538,536,552,486,607,623,606,520,453,588,476,614,497,472,504, \
+ 504,566,552,504,504,504,504,504,504,504,504,504,504,552,520,504, \
+ 520,520,520,504,520,520,504,520,536,520,520,536,536,536,536,536, \
+ 536,536,536,586,536,536,520,555,504,565,520,552,536,552,552,552, \
+ 552,552,552,552,552,552,552,552,552,552,552,552,552,552,568,552, \
+ 568,552,568,568,568,568,559,560,568,552,552,568,568,552,568,584, \
+ 552,552,552,552,552,552,568,568,552,568,568,552,568,568,552,552, \
+ 584,568,568,568,568,568,568,568,568,568,552,568,584,584,568,552, \
+ 584,584,584,584,584,584,584,568,568,568,568,616,568,568,616,568, \
+ 600,584,600,600,600,632,616,600,584,616,616,632,632,584,632,616, \
+ 616,616,616,616,616,632,632,616,616,632,632,616,616,632,616,616 \
+
+#define MPFR_DIVHIGH_TAB \
+ 0,1,2,3,4,5,6,7,8,7,10,9,10,11,12,13, \
+ 14,15,16,17,18,16,14,16,16,19,19,18,20,19,20,18, \
+ 24,19,20,23,24,21,21,23,27,24,28,29,28,28,28,28, \
+ 31,31,30,28,34,29,32,32,33,34,35,31,34,38,38,34, \
+ 35,36,38,38,38,40,41,43,39,42,43,42,42,43,44,43, \
+ 45,48,49,48,51,50,50,48,50,48,51,50,51,52,53,50, \
+ 55,51,53,54,56,59,56,59,58,55,57,59,59,63,64,63, \
+ 63,64,64,59,64,64,67,64,63,67,67,71,67,67,71,66, \
+ 75,75,75,75,73,75,73,75,75,75,73,75,84,73,74,73, \
+ 76,76,75,81,76,79,81,84,81,83,84,84,84,84,88,86, \
+ 83,88,96,94,96,96,96,96,96,96,96,95,96,96,96,104, \
+ 96,100,100,104,104,104,96,96,96,104,100,96,102,96,104,104, \
+ 102,104,100,104,112,104,104,112,112,112,104,112,120,112,112,112, \
+ 112,120,110,118,118,118,119,112,120,118,120,112,118,127,128,128, \
+ 128,128,128,128,128,128,128,128,128,128,128,128,128,136,128,136, \
+ 128,128,128,128,128,128,128,128,127,128,128,128,128,128,130,133, \
+ 134,136,136,135,136,136,150,136,136,138,148,140,136,143,148,150, \
+ 150,150,150,148,150,148,148,150,156,149,168,150,160,161,168,168, \
+ 168,168,168,162,168,162,167,168,168,168,168,168,162,174,168,168, \
+ 174,174,184,168,168,176,162,168,192,174,168,168,173,174,186,174, \
+ 174,168,192,174,168,174,168,168,186,192,192,180,174,176,192,192, \
+ 185,192,192,180,192,192,186,192,192,192,192,192,184,192,208,208, \
+ 208,208,190,192,190,192,192,191,186,192,192,208,192,192,192,192, \
+ 192,192,196,204,204,192,204,192,208,192,191,192,208,208,198,208, \
+ 205,220,197,218,222,208,216,199,207,220,206,224,214,204,208,219, \
+ 221,209,227,207,221,216,208,236,222,244,225,208,208,212,224,222, \
+ 229,230,225,221,222,256,227,240,221,224,240,216,240,231,224,263, \
+ 246,232,240,240,240,240,239,240,240,234,234,240,234,238,240,240, \
+ 240,240,256,256,240,256,240,240,240,234,256,240,240,256,234,256, \
+ 256,239,272,244,256,255,256,240,256,240,256,255,240,255,256,256, \
+ 256,254,254,256,244,256,256,256,256,256,256,256,256,253,272,255, \
+ 256,256,252,256,256,256,256,256,256,272,256,256,256,256,257,272, \
+ 272,272,272,272,264,270,272,288,272,280,282,282,280,280,270,282, \
+ 282,282,288,282,288,282,282,300,286,288,300,282,282,288,300,312, \
+ 300,298,306,300,304,304,304,300,300,300,316,306,300,288,306,311, \
+ 324,312,320,300,306,336,320,300,324,320,336,336,336,328,336,324, \
+ 336,336,328,336,322,328,336,336,336,336,312,336,336,336,336,336, \
+ 336,336,336,335,336,344,348,336,353,349,336,336,348,348,346,336, \
+ 352,320,336,336,336,336,352,336,336,336,336,336,336,336,336,336, \
+ 336,336,336,330,336,336,336,336,334,335,336,336,344,344,348,336, \
+ 348,336,352,336,336,348,336,348,336,348,352,351,348,336,336,336, \
+ 352,352,352,348,352,336,336,384,336,336,352,348,336,348,376,352, \
+ 352,372,384,352,384,352,352,352,348,384,348,349,384,351,384,353, \
+ 368,352,350,353,378,372,372,372,384,352,384,352,408,384,378,368, \
+ 383,384,408,356,371,368,372,371,384,376,384,408,384,407,372,384, \
+ 408,369,406,383,377,384,394,382,370,416,408,378,369,372,381,400, \
+ 378,408,376,402,417,408,376,384,382,384,384,408,384,384,384,408, \
+ 384,416,408,408,416,384,384,384,408,384,384,384,396,408,408,408, \
+ 408,408,408,406,408,408,416,416,408,408,408,408,408,416,408,416, \
+ 408,405,416,408,408,440,408,416,416,416,440,408,408,408,440,444, \
+ 408,440,440,408,415,419,440,440,444,443,436,436,440,447,448,440, \
+ 440,416,440,439,440,444,440,444,468,448,440,416,440,416,465,465, \
+ 468,436,468,440,472,439,440,468,472,448,465,468,464,439,440,480, \
+ 480,472,439,468,440,440,468,440,468,468,444,440,448,480,438,440, \
+ 504,439,440,467,480,468,448,465,466,440,468,464,440,472,448,468, \
+ 468,469,456,465,448,460,472,472,468,469,465,480,480,468,472,512, \
+ 468,464,465,469,480,468,504,466,468,480,480,480,468,512,504,469, \
+ 466,466,472,468,480,480,512,469,472,480,480,480,504,477,500,466, \
+ 504,468,480,512,504,512,504,480,480,511,512,510,492,511,503,513, \
+ 503,502,504,512,504,512,504,512,504,512,504,512,513,503,512,504, \
+ 513,504,512,512,510,501,513,503,512,513,498,504,512,510,502,512, \
+ 501,500,552,497,516,511,503,513,497,511,502,509,564,509,504,512, \
+ 503,504,512,504,504,500,512,512,512,511,512,504,557,504,564,564, \
+ 512,564,514,512,516,512,560,564,560,564,564,512,564,564,564,560 \
+
+#define MPFR_MUL_THRESHOLD 15 /* limbs */
+#define MPFR_SQR_THRESHOLD 14 /* limbs */
+#define MPFR_DIV_THRESHOLD 27 /* limbs */
+#define MPFR_EXP_2_THRESHOLD 562 /* bits */
+#define MPFR_EXP_THRESHOLD 9671 /* bits */
+#define MPFR_SINCOS_THRESHOLD 30620 /* bits */
+#define MPFR_AI_THRESHOLD1 -28021 /* threshold for negative input of mpfr_ai */
+#define MPFR_AI_THRESHOLD2 2991
+#define MPFR_AI_THRESHOLD3 37474
+/* Tuneup completed successfully, took 6469 seconds */