36{
37
38
39 static const double
40 piby2_lead = 1.57079632679489655800e+00,
41 piby2_part1 = 1.57079631090164184570e+00,
42 piby2_part2 = 1.58932547122958567343e-08,
43 piby2_part3 = 6.12323399573676480327e-17;
45 unsigned long long res[500];
46 unsigned long long ux,
u, carry,
mask, mant, highbitsrr;
47 int first,
last,
i, rexp, xexp, resexp, ltb, determ;
49 static unsigned long long pibits[] =
50 {
51 0, 0, 0, 0, 0, 0,
52 162, 998, 54, 915, 580, 84, 671, 777, 855, 839,
53 851, 311, 448, 877, 553, 358, 316, 270, 260, 127,
54 593, 398, 701, 942, 965, 390, 882, 283, 570, 265,
55 221, 184, 6, 292, 750, 642, 465, 584, 463, 903,
56 491, 114, 786, 617, 830, 930, 35, 381, 302, 749,
57 72, 314, 412, 448, 619, 279, 894, 260, 921, 117,
58 569, 525, 307, 637, 156, 529, 504, 751, 505, 160,
59 945, 1022, 151, 1023, 480, 358, 15, 956, 753, 98,
60 858, 41, 721, 987, 310, 507, 242, 498, 777, 733,
61 244, 399, 870, 633, 510, 651, 373, 158, 940, 506,
62 997, 965, 947, 833, 825, 990, 165, 164, 746, 431,
63 949, 1004, 287, 565, 464, 533, 515, 193, 111, 798
64 };
65
67
68
71
72
73 carry = 0;
76
77
78
81
82
83
84
86
87
88
89#if 0
91 {
92 u = pibits[
i] * ux + carry;
95 }
97#else
98
99
101 u = pibits[
last] * ux;
104 u = pibits[
last-1] * ux + carry;
107 u = pibits[
last-2] * ux + carry;
110 u = pibits[
last-3] * ux + carry;
113 u = pibits[
last-4] * ux + carry;
116 u = pibits[
last-5] * ux + carry;
119 u = pibits[
last-6] * ux + carry;
122 u = pibits[
last-7] * ux + carry;
125 u = pibits[
last-8] * ux + carry;
128 u = pibits[
last-9] * ux + carry;
131 u = pibits[
last-10] * ux + carry;
134 u = pibits[
last-11] * ux + carry;
137 u = pibits[
last-12] * ux + carry;
140 u = pibits[
last-13] * ux + carry;
143 u = pibits[
last-14] * ux + carry;
146 u = pibits[
last-15] * ux + carry;
149 u = pibits[
last-16] * ux + carry;
152 u = pibits[
last-17] * ux + carry;
155 u = pibits[
last-18] * ux + carry;
157#endif
158
159
160
162 >> (
bitsper - 1 - resexp)) & 7);
163
164
165 determ = ltb & 1;
166
167
169 if (determ)
170 {
171
172
173 *region = ((ltb >> 1) + 1) & 3;
174 mant = 1;
175 mant = ~(
res[1]) & ((mant << (
bitsper - resexp)) - 1);
176 while (mant < 0x0020000000000000)
177 {
180 }
182 }
183 else
184 {
185 *region = (ltb >> 1);
186 mant = 1;
187 mant =
res[1] & ((mant << (
bitsper - resexp)) - 1);
188 while (mant < 0x0020000000000000)
189 {
192 }
194 }
195
197
198 while (mant >= 0x0020000000000000)
199 {
200 rexp++;
201 highbitsrr = (highbitsrr >> 1) | ((mant & 1) << 63);
202 mant >>= 1;
203 }
204
205
206
209 if (determ)
210
213
214
215 highbitsrr >>= 12;
220
221
223
224
225 if (determ)
227 else
229
230
231
232
233
234 {
235 double hx, tx,
c,
cc;
236
238 ux &= 0xfffffffff8000000;
241
243 cc = ((((piby2_part1 * hx -
c) + piby2_part1 * tx) +
244 piby2_part2 * hx) + piby2_part2 * tx) +
245 (piby2_lead *
xx + piby2_part3 *
x);
248 }
249
250 return;
251}
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
GLint GLint GLint GLint GLint x
GLdouble GLdouble GLdouble r
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 * u
#define EXPSHIFTBITS_DP64
#define GET_BITS_DP64(x, ux)
#define PUT_BITS_DP64(ux, x)