19#elif defined(REAL_IS_FIXED) && defined(PRECALC_TABLES)
22 8398725,8480395,8647771,8909416,9279544,9780026,10443886,11321405,
23 12491246,14081950,16316987,19619946,24900150,34523836,57170182,170959967
27 8429197,8766072,9511743,10851869,13223040,17795219,28897867,85583072
31 8552951,10088893,15099095,42998586
49 0, -1, -1, -1, -1, -1, -1, -2, -2, -2,
50 -2, -3, -3, -4, -4, -5, -5, -6, -7, -7,
51 -8, -9, -10, -11, -13, -14, -16, -17, -19, -21,
52 -24, -26, -29, -31, -35, -38, -41, -45, -49, -53,
53 -58, -63, -68, -73, -79, -85, -91, -97, -104, -111,
54 -117, -125, -132, -139, -147, -154, -161, -169, -176, -183,
55 -190, -196, -202, -208, -213, -218, -222, -225, -227, -228,
56 -228, -227, -224, -221, -215, -208, -200, -189, -177, -163,
57 -146, -127, -106, -83, -57, -29, 2, 36, 72, 111,
58 153, 197, 244, 294, 347, 401, 459, 519, 581, 645,
59 711, 779, 848, 919, 991, 1064, 1137, 1210, 1283, 1356,
60 1428, 1498, 1567, 1634, 1698, 1759, 1817, 1870, 1919, 1962,
61 2001, 2032, 2057, 2075, 2085, 2087, 2080, 2063, 2037, 2000,
62 1952, 1893, 1822, 1739, 1644, 1535, 1414, 1280, 1131, 970,
63 794, 605, 402, 185, -45, -288, -545, -814, -1095, -1388,
64 -1692, -2006, -2330, -2663, -3004, -3351, -3705, -4063, -4425, -4788,
65 -5153, -5517, -5879, -6237, -6589, -6935, -7271, -7597, -7910, -8209,
66 -8491, -8755, -8998, -9219, -9416, -9585, -9727, -9838, -9916, -9959,
67 -9966, -9935, -9863, -9750, -9592, -9389, -9139, -8840, -8492, -8092,
68 -7640, -7134, -6574, -5959, -5288, -4561, -3776, -2935, -2037, -1082,
69 -70, 998, 2122, 3300, 4533, 5818, 7154, 8540, 9975, 11455,
70 12980, 14548, 16155, 17799, 19478, 21189, 22929, 24694, 26482, 28289,
71 30112, 31947, 33791, 35640, 37489, 39336, 41176, 43006, 44821, 46617,
72 48390, 50137, 51853, 53534, 55178, 56778, 58333, 59838, 61289, 62684,
73 64019, 65290, 66494, 67629, 68692, 69679, 70590, 71420, 72169, 72835,
74 73415, 73908, 74313, 74630, 74856, 74992, 75038 };
78#if !defined(REAL_IS_FIXED) || !defined(PRECALC_TABLES)
84 kr=0x10>>
i; divv=0x40>>
i;
93#if !defined(OPT_X86_64) && !defined(OPT_NEON) && !defined(OPT_NEON64) && !defined(OPT_AVX)
97 debug(
"MMX decode tables");
100 debug(
"MMX decode tables done");
105static int rounded(
double f)
115 short *
ptr = (
short *)fr->decwins;
118 debug1(
"MMX decode tables with scaleval %g", scaleval);
127 scaleval = - scaleval;
130 for( ;
i<512;
i++,
j--,
idx+=32)
138 scaleval = - scaleval;
141 for(
i=0;
i<512;
i++) {
142 if(
i&1)
val = rounded(fr->decwin_mmx[
i]*0.5);
143 else val = rounded(fr->decwin_mmx[
i]*-0.5);
144 if(
val > 32767)
val = 32767;
145 else if(
val < -32768)
val = -32768;
148 for(
i=512;
i<512+32;
i++) {
149 if(
i&1)
val = rounded(fr->decwin_mmx[
i]*0.5);
151 if(
val > 32767)
val = 32767;
152 else if(
val < -32768)
val = -32768;
155 for(
i=0;
i<512;
i++) {
156 val = rounded(fr->decwin_mmx[511-
i]*-0.5);
157 if(
val > 32767)
val = 32767;
158 else if(
val < -32768)
val = -32768;
161 debug(
"decode tables done");
175 if(prod > 2147483647L)
return 2147483647L;
176 if(prod < -2147483647L)
return -2147483647L;
191 debug1(
"decode tables with scaleval %g", scaleval);
194 debug1(
"decode table with fixed scaleval %li", (
long)scaleval_long);
195 if(scaleval_long > 28618 || scaleval_long < -28618)
202 if(
NOQUIET)
warning(
"Desired amplification may introduce distortion.");
210 REAL_SCALE_WINDOW(sat_mul32(
intwinbase[
j],scaleval_long));
219 scaleval_long = - scaleval_long;
221 scaleval = - scaleval;
225 for( ;
i<512;
i++,
j--,
idx+=32)
230 REAL_SCALE_WINDOW(sat_mul32(
intwinbase[
j],scaleval_long));
239 scaleval_long = - scaleval_long;
241 scaleval = - scaleval;
244#if defined(OPT_X86_64) || defined(OPT_ALTIVEC) || defined(OPT_SSE) || defined(OPT_SSE_VINTAGE) || defined(OPT_ARM) || defined(OPT_NEON) || defined(OPT_NEON64) || defined(OPT_AVX)
254 for(
i=512;
i<512+32;
i++)
262#if defined(OPT_NEON) || defined(OPT_NEON64)
265 for(
i=0;
i<512;
i+=2)
273 debug(
"decode tables done");
280 int mode = fr->
af.dec_enc;
285 const double mul = 8.0;
291 if(
NOQUIET)
error(
"Can't allocate 16 to 8 converter table!");
301 double m=127.0 /
log(256.0);
304 for(
i=-4096;
i<4096;
i++)
308 c1 = 127 - (
int) (
log( 1.0 - 255.0 * (
double)
i*
mul / 32768.0 ) *
m);
310 c1 = 255 - (
int) (
log( 1.0 + 255.0 * (
double)
i*
mul / 32768.0 ) *
m);
311 if(c1 < 0 || c1 > 255)
323 for(
i=-4096;
i<4096;
i++)
327 for(
i=-4096;
i<4096;
i++)
352 for(
i=64;
i<128; ++
i)
353 fr->
conv16to8[
i] = ((((
unsigned int)
i)>>2) & 0xf) | (2<<4);
354 for(
i=128;
i<256; ++
i)
355 fr->
conv16to8[
i] = ((((
unsigned int)
i)>>3) & 0xf) | (3<<4);
356 for(
i=256;
i<512; ++
i)
357 fr->
conv16to8[
i] = ((((
unsigned int)
i)>>4) & 0xf) | (4<<4);
358 for(
i=512;
i<1024; ++
i)
359 fr->
conv16to8[
i] = ((((
unsigned int)
i)>>5) & 0xf) | (5<<4);
360 for(
i=1024;
i<2048; ++
i)
361 fr->
conv16to8[
i] = ((((
unsigned int)
i)>>6) & 0xf) | (6<<4);
362 for(
i=2048;
i<4096; ++
i)
363 fr->
conv16to8[
i] = ((((
unsigned int)
i)>>7) & 0xf) | (7<<4);
365 for(
i=-4095;
i<0; ++
i)
370 for(
i=-4096;
i<4096;
i++)
_STLP_DECLSPEC complex< float > _STLP_CALL cos(const complex< float > &)
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
GLboolean GLboolean GLboolean b
GLboolean GLboolean GLboolean GLboolean a
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
_Check_return_ _CRTIMP double __cdecl floor(_In_ double x)
_Check_return_ _CRTIMP double __cdecl ceil(_In_ double x)
#define make_conv16to8_table
#define make_decode_tables
#define make_decode_tables_mmx_asm
#define make_decode_tables_mmx
#define DOUBLE_TO_REAL_15(x)
#define DOUBLE_TO_REAL(x)
struct mpg123_pars_struct p
unsigned char * conv16to8_buf
struct mpg123_handle_struct::@3458 cpu_opts
unsigned char * conv16to8
void prepare_decode_tables()