/* Various Thresholds of MPFR, not exported. -*- mode: C -*-
Copyright 2005-2018 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 */
/* gcc11.fsffrance.org (Dual-Core AMD Opteron(tm) Processor 2212)
with gmp 5.0.2.
Keith Briggs sent similar parameters obtained on a AMD Athlon
(__tune_k8__, __x86_64, __amd64, __k8) */
#define MPFR_MULHIGH_TAB \
-1,0,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,9,11,11, \
12,12,11,15,14,14,15,16,18,18,19,20,18,19,19,20, \
22,22,23,24,26,30,28,28,32,30,30,32,32,30,32,32, \
32,30,30,32,32,38,32,32,36,40,40,40,36,38,40,38, \
40,44,40,44,44,44,44,48,48,46,48,48,56,56,56,56, \
56,56,56,60,64,60,60,64,64,64,64,64,64,64,64,64, \
72,72,72,72,72,72,72,72,72,72,72,72,80,80,80,80, \
80,80,80,80,80,80,80,80,80,80,80,80,93,80,93,93, \
93,76,80,93,80,93,93,90,93,93,93,93,93,93,93,93, \
93,93,111,105,93,117,105,105,117,117,111,117,117,105,117,117, \
117,105,117,117,117,117,117,117,117,117,117,117,117,117,117,117, \
117,117,117,117,116,117,116,117,117,117,117,117,117,117,117,117, \
117,117,140,117,140,140,140,140,140,148,148,147,140,156,156,156, \
148,148,156,148,156,156,156,156,156,155,156,155,156,155,156,156, \
156,156,156,156,156,156,156,156,172,172,172,156,172,172,172,172, \
172,172,172,172,180,180,180,180,180,180,180,188,188,188,188,188, \
180,188,188,188,188,187,188,188,188,188,188,188,188,188,188,188, \
188,188,188,188,188,188,188,188,188,188,188,188,188,220,220,204, \
220,220,220,219,220,220,220,220,220,219,220,219,220,219,220,220, \
220,236,236,220,236,219,233,236,233,252,236,252,236,252,252,236, \
235,236,236,252,252,236,236,252,252,236,252,252,236,251,250,251, \
252,252,251,252,252,252,252,252,252,252,252,252,252,252,252,252, \
252,252,284,252,284,284,284,284,284,252,284,284,284,284,284,284, \
283,284,284,284,284,284,284,284,284,284,284,283,284,284,284,284, \
284,284,283,284,284,284,284,284,284,284,284,284,284,300,284,300, \
300,316,300,300,300,316,300,300,316,316,316,316,316,316,316,316, \
316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316, \
316,315,316,316,315,316,316,316,315,316,316,316,316,316,316,316, \
316,316,316,368,316,316,367,368,368,368,368,368,368,368,368,368, \
368,368,368,368,368,368,368,368,368,368,368,368,368,368,368,368, \
368,368,368,368,368,368,367,368,368,368,368,367,368,367,367,368, \
368,367,367,368,367,368,368,367,368,368,368,367,368,368,368,368, \
367,368,416,415,416,416,416,416,416,416,415,416,416,416,416,416, \
416,416,416,416,416,416,415,416,415,416,415,416,416,416,416,416, \
416,415,416,416,415,416,416,415,416,416,440,416,416,416,440,416, \
415,416,415,416,464,464,464,464,464,464,463,464,464,464,463,464, \
464,464,464,464,464,463,464,464,474,474,464,464,473,474,474,504, \
474,474,504,504,504,504,504,504,504,504,504,504,504,504,504,504, \
504,504,504,504,504,504,504,504,504,503,504,504,504,504,504,504, \
503,504,504,504,504,504,503,504,504,504,504,504,503,504,504,503, \
504,504,504,504,504,504,504,504,503,504,504,504,504,504,503,504, \
504,504,504,504,568,568,568,504,568,568,568,568,568,568,568,568, \
568,567,568,568,568,567,568,568,568,568,568,568,568,568,568,568, \
568,568,568,568,568,568,568,568,567,567,568,566,568,568,568,567, \
568,568,568,568,568,568,568,568,568,568,567,568,568,567,568,568, \
568,568,568,568,567,568,568,566,567,568,568,568,568,568,568,568, \
568,567,568,568,567,568,567,568,567,568,567,568,567,568,632,568, \
600,632,632,600,631,632,632,632,632,631,600,600,632,632,600,631, \
632,632,632,632,632,632,631,632,632,632,631,632,631,632,632,632, \
632,632,631,632,632,631,632,632,632,631,632,632,632,632,631,632, \
632,632,632,632,630,632,632,632,632,632,631,632,631,632,631,632, \
632,632,632,632,632,632,632,632,631,632,632,632,632,632,632,631, \
632,632,632,631,632,632,632,736,632,631,632,736,632,632,632,632, \
736,736,736,736,736,736,736,736,736,736,736,736,736,736,736,736, \
736,734,736,736,735,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,735,736,736,736,736,736,736,736,735,736, \
736,736,735,736,735,736,736,736,735,736,736,736,736,736,736,736, \
736,736,736,735,736,736,736,735,736,736,736,736,736,735,736,736, \
736,736,736,736,736,736,736,736,736,735,736,735,736,832,736,832, \
832,832,832,832,831,832,832,831,832,832,832,832,832,832,831,832, \
831,832,831,832,832,831,832,832,832,832,832,832,831,832,832,832, \
831,832,832,832,832,832,831,832,832,832,832,832,831,832,831,832, \
832,832,831,832,831,832,831,832,832,832,832,832,832,832,831,832 \
#define MPFR_SQRHIGH_TAB \
-1,0,0,0,0,-1,-1,-1,-1,-1,7,7,8,9,9,11, \
11,11,11,11,13,13,15,15,17,17,18,17,17,17,18,20, \
20,21,23,23,20,21,23,23,24,25,23,23,24,25,26,25, \
28,27,28,29,28,31,34,31,34,34,34,34,34,34,34,34, \
40,34,40,36,40,42,40,42,40,40,42,42,48,48,46,46, \
42,46,48,48,46,50,46,52,54,54,48,56,54,50,54,52, \
50,54,54,52,54,54,58,58,62,64,58,58,58,64,62,64, \
58,64,66,72,68,68,68,68,68,62,66,72,72,72,68,68, \
72,72,68,72,72,72,72,72,80,84,80,80,80,84,80,80, \
80,84,84,84,84,84,92,80,80,84,92,84,92,92,92,96, \
100,92,100,92,96,92,92,96,100,100,96,96,96,100,100,96, \
96,96,92,92,96,96,108,100,96,100,100,112,112,112,112,112, \
112,112,108,112,100,104,112,116,104,116,116,108,112,112,112,116, \
112,112,112,112,112,141,135,141,116,135,135,135,141,141,141,141, \
141,141,141,141,141,141,135,135,141,141,147,141,141,141,140,141, \
141,141,147,147,141,147,147,147,147,147,147,147,147,147,147,159, \
153,147,147,159,159,159,159,159,159,159,159,159,165,171,171,171, \
165,170,171,171,165,171,171,171,165,171,171,171,183,171,171,171, \
183,183,171,183,171,183,183,183,183,183,183,183,189,189,183,195, \
171,171,188,171,171,195,171,171,171,195,195,182,195,177,182,183, \
183,181,182,183,183,189,183,194,195,195,194,195,195,195,195,195, \
195,195,213,195,195,195,195,195,189,195,195,195,195,195,195,195, \
212,195,213,195,195,195,213,195,195,195,195,195,195,213,213,201, \
195,195,195,213,213,213,213,213,212,213,213,213,213,213,213,213, \
237,212,213,213,213,213,213,225,213,213,213,249,213,249,237,237, \
237,237,237,249,237,237,237,237,249,237,249,237,237,237,249,249, \
249,236,237,249,249,249,249,249,249,249,249,249,249,249,249,249, \
249,273,273,273,273,273,273,272,273,273,273,273,273,273,273,273, \
273,273,273,273,273,273,273,285,273,284,285,285,285,285,297,284, \
285,297,285,297,297,297,297,297,297,297,297,296,297,296,297,296, \
297,297,297,297,297,297,297,273,297,273,309,273,273,273,273,320, \
321,321,321,285,285,285,285,285,284,285,297,285,297,297,297,297, \
297,297,333,297,297,297,296,297,309,297,297,297,297,285,309,348, \
297,297,348,348,285,321,297,321,321,297,320,321,321,297,297,321, \
297,321,333,366,333,333,309,333,333,333,332,333,297,321,321,321, \
321,348,321,345,348,348,348,366,348,347,348,365,366,365,333,366, \
402,366,333,366,366,366,366,402,366,365,366,366,366,366,366,366, \
366,348,420,420,348,420,419,420,419,420,420,420,366,366,420,366, \
366,365,366,402,366,366,366,366,402,402,402,401,402,402,402,401, \
420,401,402,402,420,420,420,420,402,420,420,420,420,419,420,419, \
420,419,420,420,402,401,420,402,402,420,402,420,402,401,420,420, \
420,420,420,420,420,402,420,420,402,420,420,420,420,420,420,420, \
420,420,420,420,420,420,420,420,420,419,420,420,438,420,420,438, \
420,420,420,420,420,420,438,420,437,438,438,420,438,438,420,420, \
438,420,420,438,438,420,420,420,438,420,420,420,420,419,420,420, \
420,420,420,420,474,419,420,420,420,438,419,456,438,474,438,437, \
438,438,438,438,438,420,438,420,438,438,438,420,420,419,420,420, \
438,420,438,419,420,420,420,420,420,419,420,474,420,420,438,420, \
438,473,474,474,474,473,438,474,474,438,438,437,438,438,438,438, \
438,438,474,437,437,474,560,456,473,474,535,536,474,560,536,536, \
560,560,560,560,560,560,560,560,560,560,560,560,560,560,560,560, \
560,560,559,560,560,560,560,560,560,560,560,560,560,560,560,560, \
559,560,560,560,560,560,560,560,560,560,560,560,560,560,560,560, \
560,560,560,560,560,560,560,560,560,560,560,560,560,560,560,560, \
559,560,560,560,560,560,560,560,559,560,559,560,560,560,560,559, \
559,560,559,560,560,560,560,560,560,559,560,560,559,560,559,560, \
560,560,559,560,560,560,560,559,560,560,560,560,560,560,560,560, \
560,560,560,560,560,560,560,560,560,560,559,584,560,560,560,560, \
559,560,560,559,560,560,560,560,560,560,559,559,560,560,560,560, \
560,560,559,560,560,560,560,560,560,583,560,560,584,560,584,584, \
584,560,583,583,584,584,582,584,584,584,583,584,584,584,584,584, \
727,584,728,632,728,560,727,728,728,560,584,560,560,727,728,728, \
727,728,728,728,608,728,728,724,728,728,760,727,728,727,728,728, \
728,759,728,696,728,728,728,728,728,727,759,760,727,760,760,727 \
#define MPFR_DIVHIGH_TAB \
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, \
14,15,18,19,18,14,22,18,18,18,18,20,18,18,20,22, \
22,22,23,24,26,26,26,28,24,30,28,28,28,30,30,32, \
32,34,32,34,32,34,34,31,32,37,32,37,32,33,34,35, \
39,37,37,39,39,37,39,39,39,39,39,39,43,44,46,46, \
47,45,46,48,52,48,50,50,48,46,50,50,52,56,54,50, \
60,60,60,56,56,64,61,60,56,64,60,64,64,64,64,60, \
64,64,64,63,64,64,64,64,64,64,70,64,64,68,78,66, \
74,69,70,74,70,69,74,78,78,74,74,74,74,78,78,79, \
78,78,78,78,78,78,78,78,78,78,88,88,88,88,88,88, \
92,92,88,91,92,88,95,96,96,96,96,92,92,88,92,112, \
112,112,112,108,112,112,112,112,120,112,112,112,120,112,120,112, \
112,120,120,120,104,112,112,128,112,112,112,120,112,112,120,120, \
128,120,120,120,112,120,128,128,128,120,128,128,128,128,128,128, \
128,128,120,128,128,128,128,128,120,128,128,128,128,128,128,128, \
128,128,128,128,128,128,126,128,128,128,127,128,128,128,144,148, \
136,136,144,144,140,141,140,148,148,151,144,148,148,160,156,148, \
160,160,160,160,156,156,156,148,148,156,148,160,160,160,148,156, \
148,148,148,156,156,156,156,160,156,156,158,156,156,157,160,156, \
156,160,160,158,156,156,158,158,159,160,159,160,160,160,184,183, \
184,184,180,184,184,176,184,184,184,184,186,184,184,184,184,184, \
184,184,186,186,192,184,184,186,184,184,186,183,184,185,186,184, \
184,184,186,185,216,184,192,186,208,192,192,184,208,216,224,209, \
208,216,224,222,224,216,208,224,224,224,208,224,210,224,216,234, \
208,216,216,208,224,216,216,224,224,222,224,224,224,216,224,224, \
224,221,224,216,232,224,224,224,224,224,224,224,208,224,222,224, \
224,224,216,224,232,224,224,216,224,256,224,256,224,248,224,224, \
224,224,224,224,224,222,224,232,222,224,224,224,224,224,230,232, \
256,234,232,240,240,233,240,233,248,240,240,240,240,238,240,256, \
248,240,248,256,256,256,256,256,256,248,256,256,256,256,256,256, \
256,256,256,256,256,256,248,256,248,256,248,248,256,256,256,256, \
256,256,256,256,280,296,280,280,256,288,296,280,256,280,280,296, \
296,296,280,280,280,296,296,296,280,280,280,296,280,296,295,312, \
312,312,312,296,312,311,312,312,312,296,296,312,296,296,312,312, \
312,296,312,312,296,311,312,312,312,312,312,312,312,312,312,296, \
296,312,311,296,312,312,312,312,312,312,312,312,296,312,312,312, \
312,312,312,312,312,312,312,312,296,312,312,312,312,312,312,312, \
312,312,312,312,311,311,312,312,312,312,312,312,312,312,312,312, \
312,312,312,312,312,312,312,312,312,312,312,312,312,312,320,316, \
320,319,319,320,320,320,319,320,319,320,360,320,320,320,352,360, \
368,352,368,368,369,372,344,370,372,366,369,352,370,370,370,360, \
360,360,360,368,360,372,372,360,370,368,372,367,368,360,370,368, \
372,371,370,372,372,372,371,368,368,368,370,370,368,368,368,372, \
370,372,367,368,368,370,368,368,360,368,360,368,370,368,368,367, \
360,368,368,368,372,368,372,368,368,368,372,371,368,416,368,367, \
372,368,372,372,372,370,440,372,368,416,368,368,368,433,448,369, \
440,416,415,416,440,448,440,440,448,448,440,448,440,440,448,416, \
416,416,415,440,417,416,416,418,432,418,417,448,416,432,416,432, \
416,420,440,448,408,416,432,448,416,448,448,448,440,440,440,440, \
448,440,440,440,440,448,416,448,440,416,448,416,448,448,440,448, \
416,440,416,419,417,448,416,420,416,432,433,420,417,432,416,424, \
440,440,440,440,448,437,440,440,448,440,440,448,448,448,448,432, \
480,440,440,440,448,448,448,448,448,448,440,448,445,432,448,448, \
448,439,448,448,468,448,448,440,440,440,448,448,468,496,480,448, \
440,448,440,468,440,496,440,466,448,448,448,468,448,440,448,448, \
448,496,496,496,496,448,448,496,448,468,468,448,448,468,480,467, \
468,512,496,512,512,496,496,480,512,480,496,512,512,512,496,512, \
512,496,496,496,512,512,512,512,512,496,512,512,496,496,496,496, \
512,512,496,512,496,496,496,496,512,512,512,496,480,496,496,496, \
496,496,512,512,512,512,496,496,512,496,496,496,512,480,496,544, \
512,496,496,496,576,512,496,560,496,496,512,561,496,560,496,560, \
560,496,512,512,512,496,512,512,512,576,512,512,512,512,512,512, \
512,512,512,512,560,512,560,512,576,512,576,592,512,560,591,512, \
592,512,576,512,576,592,592,624,592,576,560,512,592,576,592,592 \
#define MPFR_MUL_THRESHOLD 19 /* limbs */
#define MPFR_SQR_THRESHOLD 18 /* limbs */
#define MPFR_DIV_THRESHOLD 34 /* limbs */
#define MPFR_EXP_2_THRESHOLD 1031 /* bits */
#define MPFR_EXP_THRESHOLD 11014 /* bits */
#define MPFR_SINCOS_THRESHOLD 26907 /* bits */
#define MPFR_AI_THRESHOLD1 -12404 /* threshold for negative input of mpfr_ai */
#define MPFR_AI_THRESHOLD2 1024
#define MPFR_AI_THRESHOLD3 19611
/* Tuneup completed successfully, took 759 seconds */