tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

lookup_data.h (10036B)


      1 /********************************************************************
      2 *                                                                  *
      3 * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE.   *
      4 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS     *
      5 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
      6 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
      7 *                                                                  *
      8 * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007             *
      9 * by the Xiph.Org Foundation https://xiph.org/                     *
     10 *                                                                  *
     11 ********************************************************************
     12 
     13  function: lookup data; generated by lookups.pl; edit there
     14 
     15 ********************************************************************/
     16 
     17 #ifndef _V_LOOKUP_DATA_H_
     18 
     19 #ifdef FLOAT_LOOKUP
     20 #define COS_LOOKUP_SZ 128
     21 static const float COS_LOOKUP[COS_LOOKUP_SZ+1]={
     22        +1.0000000000000f,+0.9996988186962f,+0.9987954562052f,+0.9972904566787f,
     23        +0.9951847266722f,+0.9924795345987f,+0.9891765099648f,+0.9852776423889f,
     24        +0.9807852804032f,+0.9757021300385f,+0.9700312531945f,+0.9637760657954f,
     25        +0.9569403357322f,+0.9495281805930f,+0.9415440651830f,+0.9329927988347f,
     26        +0.9238795325113f,+0.9142097557035f,+0.9039892931234f,+0.8932243011955f,
     27        +0.8819212643484f,+0.8700869911087f,+0.8577286100003f,+0.8448535652497f,
     28        +0.8314696123025f,+0.8175848131516f,+0.8032075314806f,+0.7883464276266f,
     29        +0.7730104533627f,+0.7572088465065f,+0.7409511253550f,+0.7242470829515f,
     30        +0.7071067811865f,+0.6895405447371f,+0.6715589548470f,+0.6531728429538f,
     31        +0.6343932841636f,+0.6152315905806f,+0.5956993044924f,+0.5758081914178f,
     32        +0.5555702330196f,+0.5349976198871f,+0.5141027441932f,+0.4928981922298f,
     33        +0.4713967368260f,+0.4496113296546f,+0.4275550934303f,+0.4052413140050f,
     34        +0.3826834323651f,+0.3598950365350f,+0.3368898533922f,+0.3136817403989f,
     35        +0.2902846772545f,+0.2667127574749f,+0.2429801799033f,+0.2191012401569f,
     36        +0.1950903220161f,+0.1709618887603f,+0.1467304744554f,+0.1224106751992f,
     37        +0.0980171403296f,+0.0735645635997f,+0.0490676743274f,+0.0245412285229f,
     38        +0.0000000000000f,-0.0245412285229f,-0.0490676743274f,-0.0735645635997f,
     39        -0.0980171403296f,-0.1224106751992f,-0.1467304744554f,-0.1709618887603f,
     40        -0.1950903220161f,-0.2191012401569f,-0.2429801799033f,-0.2667127574749f,
     41        -0.2902846772545f,-0.3136817403989f,-0.3368898533922f,-0.3598950365350f,
     42        -0.3826834323651f,-0.4052413140050f,-0.4275550934303f,-0.4496113296546f,
     43        -0.4713967368260f,-0.4928981922298f,-0.5141027441932f,-0.5349976198871f,
     44        -0.5555702330196f,-0.5758081914178f,-0.5956993044924f,-0.6152315905806f,
     45        -0.6343932841636f,-0.6531728429538f,-0.6715589548470f,-0.6895405447371f,
     46        -0.7071067811865f,-0.7242470829515f,-0.7409511253550f,-0.7572088465065f,
     47        -0.7730104533627f,-0.7883464276266f,-0.8032075314806f,-0.8175848131516f,
     48        -0.8314696123025f,-0.8448535652497f,-0.8577286100003f,-0.8700869911087f,
     49        -0.8819212643484f,-0.8932243011955f,-0.9039892931234f,-0.9142097557035f,
     50        -0.9238795325113f,-0.9329927988347f,-0.9415440651830f,-0.9495281805930f,
     51        -0.9569403357322f,-0.9637760657954f,-0.9700312531945f,-0.9757021300385f,
     52        -0.9807852804032f,-0.9852776423889f,-0.9891765099648f,-0.9924795345987f,
     53        -0.9951847266722f,-0.9972904566787f,-0.9987954562052f,-0.9996988186962f,
     54        -1.0000000000000f,
     55 };
     56 
     57 #define INVSQ_LOOKUP_SZ 32
     58 static const float INVSQ_LOOKUP[INVSQ_LOOKUP_SZ+1]={
     59        1.414213562373f,1.392621247646f,1.371988681140f,1.352246807566f,
     60        1.333333333333f,1.315191898443f,1.297771369046f,1.281025230441f,
     61        1.264911064067f,1.249390095109f,1.234426799697f,1.219988562661f,
     62        1.206045378311f,1.192569588000f,1.179535649239f,1.166919931983f,
     63        1.154700538379f,1.142857142857f,1.131370849898f,1.120224067222f,
     64        1.109400392450f,1.098884511590f,1.088662107904f,1.078719779941f,
     65        1.069044967650f,1.059625885652f,1.050451462878f,1.041511287847f,
     66        1.032795558989f,1.024295039463f,1.016001016002f,1.007905261358f,
     67        1.000000000000f,
     68 };
     69 
     70 #define INVSQ2EXP_LOOKUP_MIN (-32)
     71 #define INVSQ2EXP_LOOKUP_MAX 32
     72 static const float INVSQ2EXP_LOOKUP[INVSQ2EXP_LOOKUP_MAX-\
     73                              INVSQ2EXP_LOOKUP_MIN+1]={
     74                 65536.f,    46340.95001f,         32768.f,    23170.47501f,
     75                 16384.f,     11585.2375f,          8192.f,    5792.618751f,
     76                  4096.f,    2896.309376f,          2048.f,    1448.154688f,
     77                  1024.f,    724.0773439f,           512.f,     362.038672f,
     78                   256.f,     181.019336f,           128.f,    90.50966799f,
     79                    64.f,      45.254834f,            32.f,      22.627417f,
     80                    16.f,     11.3137085f,             8.f,    5.656854249f,
     81                     4.f,    2.828427125f,             2.f,    1.414213562f,
     82                     1.f,   0.7071067812f,            0.5f,   0.3535533906f,
     83                   0.25f,   0.1767766953f,          0.125f,  0.08838834765f,
     84                 0.0625f,  0.04419417382f,        0.03125f,  0.02209708691f,
     85               0.015625f,  0.01104854346f,      0.0078125f, 0.005524271728f,
     86             0.00390625f, 0.002762135864f,    0.001953125f, 0.001381067932f,
     87           0.0009765625f, 0.000690533966f,  0.00048828125f, 0.000345266983f,
     88         0.000244140625f,0.0001726334915f,0.0001220703125f,8.631674575e-05f,
     89        6.103515625e-05f,4.315837288e-05f,3.051757812e-05f,2.157918644e-05f,
     90        1.525878906e-05f,
     91 };
     92 
     93 #endif
     94 
     95 #define FROMdB_LOOKUP_SZ 35
     96 #define FROMdB2_LOOKUP_SZ 32
     97 #define FROMdB_SHIFT 5
     98 #define FROMdB2_SHIFT 3
     99 #define FROMdB2_MASK 31
    100 
    101 #ifdef FLOAT_LOOKUP
    102 static const float FROMdB_LOOKUP[FROMdB_LOOKUP_SZ]={
    103                     1.f,   0.6309573445f,   0.3981071706f,   0.2511886432f,
    104           0.1584893192f,            0.1f,  0.06309573445f,  0.03981071706f,
    105          0.02511886432f,  0.01584893192f,           0.01f, 0.006309573445f,
    106         0.003981071706f, 0.002511886432f, 0.001584893192f,          0.001f,
    107        0.0006309573445f,0.0003981071706f,0.0002511886432f,0.0001584893192f,
    108                 0.0001f,6.309573445e-05f,3.981071706e-05f,2.511886432e-05f,
    109        1.584893192e-05f,          1e-05f,6.309573445e-06f,3.981071706e-06f,
    110        2.511886432e-06f,1.584893192e-06f,          1e-06f,6.309573445e-07f,
    111        3.981071706e-07f,2.511886432e-07f,1.584893192e-07f,
    112 };
    113 
    114 static const float FROMdB2_LOOKUP[FROMdB2_LOOKUP_SZ]={
    115           0.9928302478f,   0.9786445908f,   0.9646616199f,   0.9508784391f,
    116           0.9372921937f,     0.92390007f,   0.9106992942f,   0.8976871324f,
    117           0.8848608897f,   0.8722179097f,   0.8597555737f,   0.8474713009f,
    118            0.835362547f,   0.8234268041f,   0.8116616003f,   0.8000644989f,
    119           0.7886330981f,   0.7773650302f,   0.7662579617f,    0.755309592f,
    120           0.7445176537f,   0.7338799116f,   0.7233941627f,   0.7130582353f,
    121           0.7028699885f,   0.6928273125f,   0.6829281272f,   0.6731703824f,
    122           0.6635520573f,   0.6540711597f,   0.6447257262f,   0.6355138211f,
    123 };
    124 #endif
    125 
    126 #ifdef INT_LOOKUP
    127 
    128 #define INVSQ_LOOKUP_I_SHIFT 10
    129 #define INVSQ_LOOKUP_I_MASK 1023
    130 static const long INVSQ_LOOKUP_I[64+1]={
    131           92682l,   91966l,   91267l,   90583l,
    132           89915l,   89261l,   88621l,   87995l,
    133           87381l,   86781l,   86192l,   85616l,
    134           85051l,   84497l,   83953l,   83420l,
    135           82897l,   82384l,   81880l,   81385l,
    136           80899l,   80422l,   79953l,   79492l,
    137           79039l,   78594l,   78156l,   77726l,
    138           77302l,   76885l,   76475l,   76072l,
    139           75674l,   75283l,   74898l,   74519l,
    140           74146l,   73778l,   73415l,   73058l,
    141           72706l,   72359l,   72016l,   71679l,
    142           71347l,   71019l,   70695l,   70376l,
    143           70061l,   69750l,   69444l,   69141l,
    144           68842l,   68548l,   68256l,   67969l,
    145           67685l,   67405l,   67128l,   66855l,
    146           66585l,   66318l,   66054l,   65794l,
    147           65536l,
    148 };
    149 
    150 #define COS_LOOKUP_I_SHIFT 9
    151 #define COS_LOOKUP_I_MASK 511
    152 #define COS_LOOKUP_I_SZ 128
    153 static const long COS_LOOKUP_I[COS_LOOKUP_I_SZ+1]={
    154           16384l,   16379l,   16364l,   16340l,
    155           16305l,   16261l,   16207l,   16143l,
    156           16069l,   15986l,   15893l,   15791l,
    157           15679l,   15557l,   15426l,   15286l,
    158           15137l,   14978l,   14811l,   14635l,
    159           14449l,   14256l,   14053l,   13842l,
    160           13623l,   13395l,   13160l,   12916l,
    161           12665l,   12406l,   12140l,   11866l,
    162           11585l,   11297l,   11003l,   10702l,
    163           10394l,   10080l,    9760l,    9434l,
    164            9102l,    8765l,    8423l,    8076l,
    165            7723l,    7366l,    7005l,    6639l,
    166            6270l,    5897l,    5520l,    5139l,
    167            4756l,    4370l,    3981l,    3590l,
    168            3196l,    2801l,    2404l,    2006l,
    169            1606l,    1205l,     804l,     402l,
    170               0l,    -401l,    -803l,   -1204l,
    171           -1605l,   -2005l,   -2403l,   -2800l,
    172           -3195l,   -3589l,   -3980l,   -4369l,
    173           -4755l,   -5138l,   -5519l,   -5896l,
    174           -6269l,   -6638l,   -7004l,   -7365l,
    175           -7722l,   -8075l,   -8422l,   -8764l,
    176           -9101l,   -9433l,   -9759l,  -10079l,
    177          -10393l,  -10701l,  -11002l,  -11296l,
    178          -11584l,  -11865l,  -12139l,  -12405l,
    179          -12664l,  -12915l,  -13159l,  -13394l,
    180          -13622l,  -13841l,  -14052l,  -14255l,
    181          -14448l,  -14634l,  -14810l,  -14977l,
    182          -15136l,  -15285l,  -15425l,  -15556l,
    183          -15678l,  -15790l,  -15892l,  -15985l,
    184          -16068l,  -16142l,  -16206l,  -16260l,
    185          -16304l,  -16339l,  -16363l,  -16378l,
    186          -16383l,
    187 };
    188 
    189 #endif
    190 
    191 #endif