(root)/
mpfr-4.2.1/
src/
powerpc64/
mparam.h
       1  /* Various Thresholds of MPFR, not exported.  -*- mode: C -*-
       2  
       3  Copyright 2005-2023 Free Software Foundation, Inc.
       4  
       5  This file is part of the GNU MPFR Library.
       6  
       7  The GNU MPFR Library is free software; you can redistribute it and/or modify
       8  it under the terms of the GNU Lesser General Public License as published by
       9  the Free Software Foundation; either version 3 of the License, or (at your
      10  option) any later version.
      11  
      12  The GNU MPFR Library is distributed in the hope that it will be useful, but
      13  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
      14  or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
      15  License for more details.
      16  
      17  You should have received a copy of the GNU Lesser General Public License
      18  along with the GNU MPFR Library; see the file COPYING.LESSER.  If not, see
      19  https://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
      20  51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */
      21  
      22  /* Generated by MPFR's tuneup.c, 2018-02-22, gcc 4.8.5 */
      23  /* generated on gcc110.fsffrance.org (POWER7) with GMP 6.1.2,
      24     where GMP uses -m64  -mtune=power7 -O3 */
      25  
      26  #define MPFR_MULHIGH_TAB  \
      27   -1,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0, \
      28   0,0,0,0,0,0,0,0,0,0,0,0,0,19,19,19, \
      29   21,21,22,24,24,24,24,24,24,24,24,24,30,30,32,42, \
      30   30,34,34,34,34,38,38,32,32,32,40,40,52,40,42,42, \
      31   42,52,52,52,52,48,48,48,48,52,52,52,52,52,52,52, \
      32   52,52,52,52,52,52,56,52,52,60,60,60,60,60,64,60, \
      33   64,68,68,68,68,68,68,68,68,75,68,74,68,78,75,74, \
      34   75,68,75,86,78,87,87,87,93,93,87,87,87,93,87,87, \
      35   87,99,86,87,87,87,99,90,92,93,84,99,99,74,93,99, \
      36   99,99,98,126,99,99,99,99,102,102,102,104,104,108,110,110, \
      37   108,111,111,114,114,117,117,117,117,117,122,123,123,123,123,123, \
      38   123,123,126,128,128,123,141,153,123,141,141,141,138,141,141,152, \
      39   153,153,120,153,152,153,153,153,152,162,153,117,153,153,153,153, \
      40   153,153,128,153,153,152,153,153,153,152,153,153,153,153,153,156, \
      41   156,152,153,153,153,153,153,153,153,153,153,153,153,153,153,177, \
      42   177,177,177,153,176,216,153,177,204,153,204,177,168,204,204,168, \
      43   204,204,204,204,204,177,204,204,204,204,204,204,202,204,204,204, \
      44   204,204,204,202,203,204,204,204,204,204,204,204,204,204,204,204, \
      45   204,204,203,204,204,204,204,204,204,204,204,204,204,204,204,204, \
      46   236,204,204,234,204,204,203,236,236,236,236,236,236,236,236,236, \
      47   236,236,235,236,235,236,236,236,236,236,236,236,236,236,236,236, \
      48   236,236,236,236,236,236,268,268,236,268,236,268,268,268,268,268, \
      49   268,268,268,266,267,268,267,268,268,268,268,268,267,268,268,268, \
      50   268,268,267,268,268,306,306,306,306,304,305,306,306,336,306,306, \
      51   236,305,306,306,306,306,306,306,306,306,306,306,306,306,306,306, \
      52   306,306,306,306,306,306,306,306,306,306,306,306,306,306,305,306, \
      53   306,306,306,306,306,306,306,306,330,306,306,305,306,306,306,305, \
      54   306,306,306,306,354,306,354,354,353,306,353,354,354,354,354,354, \
      55   354,354,353,354,354,354,353,354,354,354,354,354,354,354,354,354, \
      56   424,354,354,354,354,354,353,354,354,354,352,408,354,354,354,354, \
      57   354,408,408,354,408,408,408,407,408,408,408,408,408,408,407,408, \
      58   408,408,408,408,402,408,402,402,407,408,408,408,408,408,408,407, \
      59   408,408,408,408,408,408,408,408,408,408,408,408,408,408,408,408, \
      60   406,407,408,408,408,408,408,408,408,406,408,408,408,408,407,408, \
      61   408,408,407,408,408,407,408,408,408,408,408,407,407,408,408,408, \
      62   408,408,408,472,472,472,472,472,472,472,472,472,472,472,472,472, \
      63   472,472,472,472,472,472,472,472,471,472,472,472,472,472,472,472, \
      64   470,471,472,472,472,472,472,472,472,472,472,472,472,472,472,472, \
      65   472,472,471,472,472,470,472,472,472,472,470,471,472,472,472,472, \
      66   472,472,472,472,536,536,536,536,535,536,535,536,536,536,535,536, \
      67   536,536,536,535,536,536,536,534,535,536,536,536,536,536,536,536, \
      68   536,535,536,536,536,536,536,536,536,536,535,536,536,536,536,536, \
      69   536,536,535,535,536,535,536,536,536,536,536,535,536,536,536,536, \
      70   536,536,536,535,536,536,536,536,536,536,536,536,536,591,536,536, \
      71   536,536,592,590,536,591,592,592,592,591,591,592,592,591,592,592, \
      72   592,591,591,592,592,592,592,592,592,592,591,592,592,590,590,592, \
      73   592,592,590,591,592,592,592,592,592,592,592,592,592,592,592,592, \
      74   591,592,592,592,592,591,592,592,616,592,592,591,591,616,592,592, \
      75   592,592,616,616,616,592,616,616,592,616,592,616,640,616,616,591, \
      76   592,592,589,592,640,591,592,616,688,688,592,688,688,687,688,686, \
      77   688,688,688,688,687,688,688,688,686,687,688,688,688,687,688,688, \
      78   688,686,688,688,688,615,688,685,688,688,687,688,688,687,688,688, \
      79   688,688,686,687,688,688,688,688,688,688,688,688,688,687,687,688, \
      80   688,688,688,688,688,688,688,688,688,686,687,688,688,688,688,688, \
      81   688,688,712,736,736,688,686,736,688,736,688,736,687,735,736,736, \
      82   688,736,734,735,736,688,688,736,688,736,688,687,687,688,688,688, \
      83   688,736,736,688,688,736,736,736,736,736,784,736,688,736,736,782, \
      84   783,784,783,784,784,784,784,776,784,784,783,784,784,782,783,784, \
      85   784,784,784,783,784,784,783,784,784,784,784,784,784,784,784,784, \
      86   783,784,784,784,783,783,784,784,784,784,784,784,784,784,784,784, \
      87   784,784,784,783,784,784,783,783,784,784,784,782,783,784,784,783, \
      88   784,784,783,784,783,784,784,784,784,783,784,783,784,784,784,784, \
      89   784,784,783,784,784,783,784,784,784,783,784,784,784,784,784,783, \
      90   782,783,784,784,784,784,784,784,784,784,783,784,784,784,784,784 \
      91  
      92  #define MPFR_SQRHIGH_TAB  \
      93   -1,0,-1,0,0,0,-1,-1,-1,7,8,-1,10,11,11,11, \
      94   11,11,11,11,13,13,13,13,15,15,15,15,16,17,19,19, \
      95   19,19,19,19,21,22,23,23,23,23,24,25,27,27,25,29, \
      96   27,27,29,29,31,31,31,31,31,38,38,38,38,38,38,38, \
      97   38,36,36,38,38,38,38,38,42,42,44,42,46,44,46,44, \
      98   45,46,46,46,46,46,50,54,50,50,52,52,54,54,54,50, \
      99   52,52,54,54,52,52,54,54,54,54,56,58,60,60,60,62, \
     100   60,62,62,64,64,64,76,75,76,76,76,72,75,76,76,76, \
     101   76,76,76,76,84,84,76,76,84,88,88,88,88,92,92,92, \
     102   92,92,92,84,92,76,92,92,88,92,92,92,88,90,92,92, \
     103   92,88,92,92,91,91,92,92,91,92,92,92,92,92,92,92, \
     104   92,92,95,111,111,111,111,110,111,111,111,111,111,111,111,111, \
     105   111,111,111,111,111,114,111,114,117,116,111,110,121,116,129,129, \
     106   134,135,135,135,129,135,192,135,135,135,135,135,135,135,135,135, \
     107   135,135,141,135,129,129,129,135,135,135,135,135,135,134,135,141, \
     108   140,141,141,135,144,135,160,184,147,141,147,153,147,152,153,159, \
     109   153,159,159,159,159,159,159,165,159,159,159,159,159,165,164,159, \
     110   159,159,158,159,159,159,177,171,177,159,159,177,158,177,159,159, \
     111   159,158,159,159,159,171,171,159,159,171,171,159,177,177,171,171, \
     112   177,174,177,159,177,177,171,177,176,177,171,171,177,177,176,171, \
     113   177,177,177,175,176,177,177,176,177,177,204,204,196,196,204,212, \
     114   204,188,212,212,196,196,211,212,212,212,212,212,212,212,211,212, \
     115   204,204,212,212,212,212,212,211,212,212,212,212,212,220,220,236, \
     116   220,220,220,228,228,228,220,236,228,228,228,236,236,244,234,235, \
     117   236,236,236,236,244,244,236,243,244,244,244,244,244,244,244,236, \
     118   244,244,227,236,243,236,244,236,236,236,244,244,244,244,244,244, \
     119   244,244,244,244,244,244,220,219,220,244,228,220,236,236,228,233, \
     120   236,235,236,236,236,240,236,244,236,236,244,244,242,243,244,243, \
     121   244,244,244,244,244,244,243,244,244,236,244,244,244,318,318,244, \
     122   244,244,318,318,318,270,244,318,244,244,270,270,270,270,318,318, \
     123   318,318,318,318,282,318,318,318,318,318,318,318,318,318,318,318, \
     124   294,293,294,318,294,294,305,306,306,306,294,305,306,317,306,306, \
     125   306,306,318,318,318,318,318,317,318,317,318,318,318,318,318,318, \
     126   330,318,318,317,306,318,318,317,318,318,318,318,342,342,342,318, \
     127   318,318,318,408,318,318,318,330,354,342,318,318,354,353,354,354, \
     128   354,354,342,354,353,354,354,360,342,354,342,354,353,342,354,354, \
     129   342,341,342,353,354,354,354,353,354,354,354,354,354,354,354,354, \
     130   354,354,354,360,360,376,392,318,423,424,391,424,376,376,392,376, \
     131   392,391,408,392,376,392,408,423,424,424,392,424,423,424,424,424, \
     132   424,354,424,408,424,424,424,424,424,424,408,424,424,423,408,424, \
     133   424,408,424,424,424,424,424,424,424,423,424,424,424,424,424,424, \
     134   424,439,423,424,424,424,424,424,424,424,440,440,424,439,423,424, \
     135   600,439,423,424,456,424,424,472,424,424,456,456,456,423,424,424, \
     136   456,424,424,472,472,472,424,424,424,471,472,424,424,424,424,424, \
     137   424,424,472,472,488,424,423,424,424,424,488,488,488,439,488,487, \
     138   440,440,440,488,488,488,472,440,456,440,472,456,455,455,472,472, \
     139   456,456,456,472,456,472,472,472,472,488,488,471,471,486,472,472, \
     140   472,472,472,472,472,471,472,472,472,472,471,488,488,488,488,488, \
     141   488,504,488,504,600,391,488,752,488,488,488,408,568,488,488,488, \
     142   488,488,488,487,488,488,488,488,488,488,488,488,488,472,472,488, \
     143   488,488,488,599,488,600,600,488,488,488,599,600,600,599,600,488, \
     144   600,600,599,600,600,600,600,600,600,600,600,600,600,600,600,599, \
     145   598,599,600,600,600,599,600,600,600,600,616,600,424,568,568,568, \
     146   568,584,568,600,598,568,600,568,431,824,600,600,600,599,600,600, \
     147   600,600,600,600,-1,784,600,600,600,599,595,600,600,440,600,600, \
     148   600,600,600,600,600,599,600,600,600,600,597,600,600,600,600,600, \
     149   600,600,600,597,600,600,600,600,600,600,600,600,599,600,599,600, \
     150   600,600,600,599,600,600,599,600,600,600,600,598,662,600,600,600, \
     151   600,600,600,600,599,599,600,600,664,600,600,599,600,664,664,663, \
     152   664,664,664,600,664,664,664,664,664,664,600,664,664,664,664,664, \
     153   600,600,600,664,600,663,600,600,600,600,664,600,600,600,696,664, \
     154   696,598,600,600,600,664,600,600,664,664,600,600,600,600,600,600, \
     155   600,600,728,728,600,728,728,728,728,600,725,727,727,728,727,728, \
     156   727,728,728,727,728,728,728,728,728,728,728,728,727,728,728,728 \
     157  
     158  #define MPFR_DIVHIGH_TAB  \
     159   0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /*0-15*/ \
     160   0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /*16-31*/ \
     161   0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /*32-47*/ \
     162   0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /*48-63*/ \
     163   0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41, /*64-79*/ \
     164   42,42,0,0,48,48,0,46,48,48,50,49,49,48,49,50, /*80-95*/ \
     165   51,0,0,0,79,52,0,0,0,54,57,68,60,58,0,59, /*96-111*/ \
     166   58,59,62,0,60,66,68,66,68,68,68,66,66,68,68,68, /*112-127*/ \
     167   76,68,76,68,68,69,75,76,70,79,73,84,76,75,78,76, /*128-143*/ \
     168   81,84,80,80,84,81,80,84,84,80,80,81,80,84,84,85, /*144-159*/ \
     169   84,83,104,96,84,96,96,92,96,96,96,132,104,100,98,104, /*160-175*/ \
     170   104,104,104,104,104,104,104,104,104,104,104,104,104,104,100,100, /*176-191*/ \
     171   104,104,112,104,100,120,120,104,104,119,112,112,118,104,120,120, /*192-207*/ \
     172   112,120,118,118,119,120,113,114,119,112,128,136,112,120,116,122, /*208-223*/ \
     173   118,132,120,119,120,136,118,120,119,120,128,136,128,136,132,136, /*224-239*/ \
     174   132,128,136,135,136,132,128,136,130,136,136,132,135,135,136,132, /*240-255*/ \
     175   132,136,136,134,135,135,136,149,135,136,135,136,136,136,138,140, /*256-271*/ \
     176   156,150,156,148,150,149,161,150,148,162,160,148,156,160,150,152, /*272-287*/ \
     177   157,150,168,160,160,150,150,152,160,160,168,168,168,156,156,160, /*288-303*/ \
     178   156,161,160,168,160,160,160,162,168,160,160,167,168,166,174,173, /*304-319*/ \
     179   167,168,198,192,168,168,174,192,168,192,168,168,168,168,184,192, /*320-335*/ \
     180   192,194,208,193,192,192,192,192,208,192,192,208,197,206,204,208, /*336-351*/ \
     181   192,207,200,204,204,191,192,208,204,208,192,208,208,208,208,209, /*352-367*/ \
     182   208,208,208,208,208,216,192,208,192,209,192,198,208,206,204,208, /*368-383*/ \
     183   208,208,208,207,208,208,216,208,208,216,208,208,208,208,206,208, /*384-399*/ \
     184   208,206,207,222,206,208,208,208,208,209,208,207,240,208,209,223, /*400-415*/ \
     185   240,233,240,220,234,216,240,240,219,233,240,222,222,224,224,232, /*416-431*/ \
     186   240,240,239,240,236,240,240,240,240,241,240,238,240,240,240,240, /*432-447*/ \
     187   300,240,245,239,240,240,233,240,236,240,240,240,240,240,241,236, /*448-463*/ \
     188   240,426,240,240,240,256,240,240,240,240,239,240,270,272,241,241, /*464-479*/ \
     189   256,246,245,256,246,245,257,272,246,256,256,272,264,272,272,268, /*480-495*/ \
     190   256,256,272,255,272,264,256,270,270,272,272,272,269,256,304,272, /*496-511*/ \
     191   268,300,306,300,272,304,300,299,264,300,294,270,270,490,272,300, /*512-527*/ \
     192   272,272,272,300,306,300,301,298,304,300,300,312,298,304,304,306, /*528-543*/ \
     193   300,299,306,312,336,312,300,298,298,300,300,318,288,299,282,305, /*544-559*/ \
     194   304,298,304,305,299,303,300,300,300,304,304,312,312,306,306,299, /*560-575*/ \
     195   304,312,312,312,300,312,324,304,529,299,300,318,306,312,336,304, /*576-591*/ \
     196   300,300,300,306,312,312,312,332,305,336,336,384,336,312,324,312, /*592-607*/ \
     197   316,312,348,312,312,328,312,353,336,320,336,336,336,318,336,332, /*608-623*/ \
     198   335,348,336,336,328,324,335,336,336,322,335,336,336,336,324,328, /*624-639*/ \
     199   384,384,384,336,384,336,336,336,336,336,336,384,336,342,335,384, /*640-655*/ \
     200   336,336,384,335,384,336,336,383,335,408,335,408,336,384,408,384, /*656-671*/ \
     201   408,408,407,384,384,408,416,384,384,408,408,384,408,408,408,408, /*672-687*/ \
     202   408,408,384,408,408,408,408,408,416,408,416,408,408,408,408,416, /*688-703*/ \
     203   408,384,408,416,416,408,408,408,408,408,408,407,408,408,416,384, /*704-719*/ \
     204   408,407,408,408,384,383,406,407,407,416,384,415,416,408,416,408, /*720-735*/ \
     205   407,416,408,408,416,406,384,384,408,408,408,406,408,407,408,408, /*736-751*/ \
     206   384,408,408,408,408,416,408,408,408,416,415,408,384,408,415,408, /*752-767*/ \
     207   408,408,408,405,408,408,408,408,408,408,408,408,416,416,416,408, /*768-783*/ \
     208   416,416,406,416,408,414,407,408,407,407,414,408,408,408,416,408, /*784-799*/ \
     209   415,416,416,408,408,416,415,416,416,416,416,416,416,416,448,415, /*800-815*/ \
     210   416,472,416,416,415,416,415,480,416,416,416,480,440,416,480,448, /*816-831*/ \
     211   440,464,440,466,477,424,472,432,470,472,456,460,464,480,448,480, /*832-847*/ \
     212   440,480,480,480,472,464,480,464,480,472,467,480,480,479,480,480, /*848-863*/ \
     213   478,480,472,472,480,480,479,480,472,480,480,470,480,480,480,472, /*864-879*/ \
     214   480,468,464,470,472,472,476,480,480,472,478,478,480,480,877,472, /*880-895*/ \
     215   480,479,480,480,512,480,479,480,756,466,472,480,466,464,478,466, /*896-911*/ \
     216   480,480,472,480,462,480,472,480,478,478,480,480,479,480,480,480, /*912-927*/ \
     217   488,480,478,472,480,480,488,480,480,480,480,472,480,480,480,536, /*928-943*/ \
     218   477,512,480,480,480,536,480,477,479,480,480,792,511,512,512,512, /*944-959*/ \
     219   493,512,501,512,527,512,528,536,488,536,512,536,512,512,535,528, /*960-975*/ \
     220   508,534,512,512,512,512,544,512,532,512,528,534,536,536,544,536, /*976-991*/ \
     221   535,540,528,528,610,536,528,528,609,612,608,536,544,612,544,536, /*992-1007*/ \
     222   540,536,612,536,607,536,612,610,610,612,612,612,612,544,612,611 /*1008-1023*/ \
     223  
     224  #define MPFR_MUL_THRESHOLD 9 /* limbs */
     225  #define MPFR_SQR_THRESHOLD 14 /* limbs */
     226  #define MPFR_DIV_THRESHOLD 3 /* limbs */
     227  #define MPFR_EXP_2_THRESHOLD 580 /* bits */
     228  #define MPFR_EXP_THRESHOLD 10480 /* bits */
     229  #define MPFR_SINCOS_THRESHOLD 22904 /* bits */
     230  #define MPFR_AI_THRESHOLD1 -12474 /* threshold for negative input of mpfr_ai */
     231  #define MPFR_AI_THRESHOLD2 1158
     232  #define MPFR_AI_THRESHOLD3 20165
     233  /* Tuneup completed successfully, took 571 seconds */