2009-07-17 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>

* mingwex/math/cephes_mconf.h mingwex/math/erfl.c mingwex/math/lgamma.c
        mingwex/math/lgammal.c mingwex/math/powl.c mingwex/math/sinhl.c
        mingwex/math/tanhl.c mingwex/math/tgamma.c mingwex/math/tgammal.c: Based on
        the fixes from the mingw-w64 code tree, fixed strict-aliasing issues.
This commit is contained in:
Chris Sutcliffe 2009-07-18 01:39:52 +00:00
parent c627d4ddd0
commit b5fb6b0dc3
10 changed files with 307 additions and 300 deletions

View File

@ -1,3 +1,10 @@
2009-07-17 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>
* mingwex/math/cephes_mconf.h mingwex/math/erfl.c mingwex/math/lgamma.c
mingwex/math/lgammal.c mingwex/math/powl.c mingwex/math/sinhl.c
mingwex/math/tanhl.c mingwex/math/tgamma.c mingwex/math/tgammal.c: Based on
the fixes from the mingw-w64 code tree, fixed strict-aliasing issues.
2009-07-12 Chris Sutcliffe <ir0nh34d@users.sourceforge.net> 2009-07-12 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>
* mingwex/stdio/pformat.c: Fix compiler warnings with GCC 4.4.0. * mingwex/stdio/pformat.c: Fix compiler warnings with GCC 4.4.0.

View File

@ -10,7 +10,10 @@
#define DENORMAL 1 #define DENORMAL 1
#define VOLATILE #define VOLATILE
#define mtherr(fname, code) #define mtherr(fname, code)
#define XPD 0, #define XPD 0
typedef union uLD { const unsigned short sh[6]; long double ld; } uLD;
typedef union uD { const unsigned short sh[4]; double d; } uD;
#define _CEPHES_USE_ERRNO #define _CEPHES_USE_ERRNO
@ -163,16 +166,17 @@ Direct inquiries to 30 Frost Street, Cambridge, MA 02140
*/ */
static __inline__ double polevl( x, p, n ) static __inline__ double polevl( x, p, n )
double x; double x;
const void *p; const uD *p;
int n; int n;
{ {
register double y; register double y;
register double *P = (double *)p;
y = *P++; y = p->d;
p++;
do do
{ {
y = y * x + *P++; y = y * x + p->d;
p++;
} }
while( --n ); while( --n );
return(y); return(y);
@ -185,17 +189,18 @@ return(y);
*/ */
static __inline__ double p1evl( x, p, n ) static __inline__ double p1evl( x, p, n )
double x; double x;
const void *p; const uD *p;
int n; int n;
{ {
register double y; register double y;
register double *P = (double *)p;
n -= 1; n -= 1;
y = x + *P++; y = x + p->d;
p++;
do do
{ {
y = y * x + *P++; y = y * x + p->d;
p++;
} }
while( --n ); while( --n );
return( y ); return( y );
@ -259,16 +264,17 @@ Direct inquiries to 30 Frost Street, Cambridge, MA 02140
*/ */
static __inline__ long double polevll( x, p, n ) static __inline__ long double polevll( x, p, n )
long double x; long double x;
const void *p; const uLD *p;
int n; int n;
{ {
register long double y; register long double y;
register long double *P = (long double *)p;
y = *P++; y = p->ld;
p++;
do do
{ {
y = y * x + *P++; y = y * x + p->ld;
p++;
} }
while( --n ); while( --n );
return(y); return(y);
@ -281,17 +287,18 @@ return(y);
*/ */
static __inline__ long double p1evll( x, p, n ) static __inline__ long double p1evll( x, p, n )
long double x; long double x;
const void *p; const uLD *p;
int n; int n;
{ {
register long double y; register long double y;
register long double *P = (long double *)p;
n -= 1; n -= 1;
y = x + *P++; y = x + p->ld;
p++;
do do
{ {
y = y * x + *P++; y = y * x + p->ld;
p++;
} }
while( --n ); while( --n );
return( y ); return( y );

View File

@ -105,74 +105,71 @@ Copyright 1984, 1995 by Stephen L. Moshier
1/8 <= 1/x <= 1 1/8 <= 1/x <= 1
Peak relative error 5.8e-21 */ Peak relative error 5.8e-21 */
static const unsigned short P[] = { static const uLD P[] = {
0x4bf0,0x9ad8,0x7a03,0x86c7,0x401d, XPD { { 0x4bf0,0x9ad8,0x7a03,0x86c7,0x401d, XPD } },
0xdf23,0xd843,0x4032,0x8881,0x401e, XPD { { 0xdf23,0xd843,0x4032,0x8881,0x401e, XPD } },
0xd025,0xcfd5,0x8494,0x88d3,0x401e, XPD { { 0xd025,0xcfd5,0x8494,0x88d3,0x401e, XPD } },
0xb6d0,0xc92b,0x5417,0xacb1,0x401d, XPD { { 0xb6d0,0xc92b,0x5417,0xacb1,0x401d, XPD } },
0xada8,0x356a,0x4982,0x94a6,0x401c, XPD { { 0xada8,0x356a,0x4982,0x94a6,0x401c, XPD } },
0x4e13,0xcaee,0x9e31,0xb258,0x401a, XPD { { 0x4e13,0xcaee,0x9e31,0xb258,0x401a, XPD } },
0x5840,0x554d,0x37a3,0x9239,0x4018, XPD { { 0x5840,0x554d,0x37a3,0x9239,0x4018, XPD } },
0x3b58,0x3da2,0xaf02,0x9780,0x4015, XPD { { 0x3b58,0x3da2,0xaf02,0x9780,0x4015, XPD } },
0x0144,0x489e,0xbe68,0x9c31,0x4011, XPD { { 0x0144,0x489e,0xbe68,0x9c31,0x4011, XPD } },
0x333b,0xd9e6,0xd404,0x986f,0xbfee, XPD { { 0x333b,0xd9e6,0xd404,0x986f,0xbfee, XPD } }
}; };
static const unsigned short Q[] = { static const uLD Q[] = {
/* 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD */ { { 0X0e43,0x302d,0x79ed,0x86c7,0x401d, XPD } },
0x0e43,0x302d,0x79ed,0x86c7,0x401d, XPD { { 0xf817,0x9128,0xc0f8,0xd48b,0x401e, XPD } },
0xf817,0x9128,0xc0f8,0xd48b,0x401e, XPD { { 0x8eae,0x8dad,0x6eb4,0x9aa2,0x401f, XPD } },
0x8eae,0x8dad,0x6eb4,0x9aa2,0x401f, XPD { { 0x00e7,0x7595,0xcd06,0x88bb,0x401f, XPD } },
0x00e7,0x7595,0xcd06,0x88bb,0x401f, XPD { { 0x4991,0xcfda,0x52f1,0xa2a9,0x401e, XPD } },
0x4991,0xcfda,0x52f1,0xa2a9,0x401e, XPD { { 0xc39d,0xe415,0xc43d,0x87c0,0x401d, XPD } },
0xc39d,0xe415,0xc43d,0x87c0,0x401d, XPD { { 0xa75d,0x436f,0x30dd,0xa027,0x401b, XPD } },
0xa75d,0x436f,0x30dd,0xa027,0x401b, XPD { { 0xc4cb,0x305a,0xbf78,0x8220,0x4019, XPD } },
0xc4cb,0x305a,0xbf78,0x8220,0x4019, XPD { { 0x3708,0x33b1,0x07fa,0x8644,0x4016, XPD } },
0x3708,0x33b1,0x07fa,0x8644,0x4016, XPD { { 0x24fa,0x96f6,0x7153,0x8a6c,0x4012, XPD } }
0x24fa,0x96f6,0x7153,0x8a6c,0x4012, XPD
}; };
/* erfc(x) = exp(-x^2) 1/x R(1/x^2) / S(1/x^2) /* erfc(x) = exp(-x^2) 1/x R(1/x^2) / S(1/x^2)
1/128 <= 1/x < 1/8 1/128 <= 1/x < 1/8
Peak relative error 1.9e-21 */ Peak relative error 1.9e-21 */
static const unsigned short R[] = { static const uLD R[] = {
0x260a,0xab95,0x2fc7,0xe7c4,0x4000, XPD { { 0x260a,0xab95,0x2fc7,0xe7c4,0x4000, XPD } },
0x4761,0x613e,0xdf6d,0xe58e,0x4001, XPD { { 0x4761,0x613e,0xdf6d,0xe58e,0x4001, XPD } },
0x0615,0x4b00,0x575f,0xdc7b,0x4000, XPD { { 0x0615,0x4b00,0x575f,0xdc7b,0x4000, XPD } },
0x521d,0x8527,0x3435,0x8dc2,0x3ffe, XPD { { 0x521d,0x8527,0x3435,0x8dc2,0x3ffe, XPD } },
0x22cf,0xc711,0x6c5b,0xdcfb,0x3ff9, XPD { { 0x22cf,0xc711,0x6c5b,0xdcfb,0x3ff9, XPD } }
}; };
static const unsigned short S[] = { static const uLD S[] = {
/* 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD */ { { 0x5de6,0x17d7,0x54d6,0xaba9,0x4002, XPD } },
0x5de6,0x17d7,0x54d6,0xaba9,0x4002, XPD { { 0x55d5,0xd300,0xe71e,0xf564,0x4002, XPD } },
0x55d5,0xd300,0xe71e,0xf564,0x4002, XPD { { 0xb611,0x8f76,0xf020,0xd255,0x4001, XPD } },
0xb611,0x8f76,0xf020,0xd255,0x4001, XPD { { 0x3684,0x3798,0xb793,0x80b0,0x3fff, XPD } },
0x3684,0x3798,0xb793,0x80b0,0x3fff, XPD { { 0xf5af,0x2fb2,0x1e57,0xc3d7,0x3ffa, XPD } }
0xf5af,0x2fb2,0x1e57,0xc3d7,0x3ffa, XPD
}; };
/* erf(x) = x T(x^2)/U(x^2) /* erf(x) = x T(x^2)/U(x^2)
0 <= x <= 1 0 <= x <= 1
Peak relative error 7.6e-23 */ Peak relative error 7.6e-23 */
static const unsigned short T[] = { static const uLD T[] = {
0xfd7a,0x3a1a,0x705b,0xe0c4,0x3ffb, XPD { { 0xfd7a,0x3a1a,0x705b,0xe0c4,0x3ffb, XPD } },
0x3128,0xc337,0x3716,0xace5,0x4001, XPD { { 0x3128,0xc337,0x3716,0xace5,0x4001, XPD } },
0x9517,0x4e93,0x540e,0x8f97,0x4007, XPD { { 0x9517,0x4e93,0x540e,0x8f97,0x4007, XPD } },
0x6118,0x6059,0x9093,0xa757,0x400a, XPD { { 0x6118,0x6059,0x9093,0xa757,0x400a, XPD } },
0xb954,0xa987,0xc60c,0xbc83,0x400e, XPD { { 0xb954,0xa987,0xc60c,0xbc83,0x400e, XPD } },
0x7a56,0xe45a,0xa4bd,0x975b,0x4010, XPD { { 0x7a56,0xe45a,0xa4bd,0x975b,0x4010, XPD } },
0xc446,0x6bab,0x0b2a,0x86d0,0x4013, XPD { { 0xc446,0x6bab,0x0b2a,0x86d0,0x4013, XPD } }
}; };
static const unsigned short U[] = { static const uLD U[] = {
/* 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD */ { { 0x3453,0x1f8e,0xf688,0xb507,0x4004, XPD } },
0x3453,0x1f8e,0xf688,0xb507,0x4004, XPD { { 0x71ac,0xb12f,0x21ca,0xf2e2,0x4008, XPD } },
0x71ac,0xb12f,0x21ca,0xf2e2,0x4008, XPD { { 0xffe8,0x9cac,0x3b84,0xc2ac,0x400c, XPD } },
0xffe8,0x9cac,0x3b84,0xc2ac,0x400c, XPD { { 0x481d,0x445b,0xc807,0xc232,0x400f, XPD } },
0x481d,0x445b,0xc807,0xc232,0x400f, XPD { { 0x9ad5,0x1aef,0x45b1,0xe25e,0x4011, XPD } },
0x9ad5,0x1aef,0x45b1,0xe25e,0x4011, XPD { { 0x71a7,0x1cad,0x012e,0xeef3,0x4012, XPD } }
0x71a7,0x1cad,0x012e,0xeef3,0x4012, XPD
}; };
/* expx2l.c /* expx2l.c

View File

@ -164,29 +164,28 @@ static const unsigned short LPI[4] = {
#endif #endif
#ifdef IBMPC #ifdef IBMPC
static const unsigned short A[] = { static const uD A[] = {
0x6661,0x2733,0x9850,0x3f4a, { { 0x6661,0x2733,0x9850,0x3f4a } },
0xe943,0xb580,0x7fbd,0xbf43, { { 0xe943,0xb580,0x7fbd,0xbf43 } },
0x5ebb,0x20dc,0x019f,0x3f4a, { { 0x5ebb,0x20dc,0x019f,0x3f4a } },
0xa5a1,0x16b0,0xc16c,0xbf66, { { 0xa5a1,0x16b0,0xc16c,0xbf66 } },
0x554b,0x5555,0x5555,0x3fb5 { { 0x554b,0x5555,0x5555,0x3fb5 } }
}; };
static const unsigned short B[] = { static const uD B[] = {
0x6761,0x8ff3,0x8901,0xc095, { { 0x6761,0x8ff3,0x8901,0xc095 } },
0xb93e,0x355b,0xf234,0xc0e2, { { 0xb93e,0x355b,0xf234,0xc0e2 } },
0x89e5,0xf890,0x3d73,0xc114, { { 0x89e5,0xf890,0x3d73,0xc114 } },
0xdb51,0xf994,0xbc82,0xc131, { { 0xdb51,0xf994,0xbc82,0xc131 } },
0xf20b,0x0219,0x4589,0xc13a, { { 0xf20b,0x0219,0x4589,0xc13a } },
0x055e,0x5418,0x0c67,0xc12a { { 0x055e,0x5418,0x0c67,0xc12a } }
}; };
static const unsigned short C[] = { static const uD C[] = {
/*0x0000,0x0000,0x0000,0x3ff0,*/ { { 0x12b2,0x1cf3,0xfd0d,0xc075 } },
0x12b2,0x1cf3,0xfd0d,0xc075, { { 0xd757,0x7b89,0xaa0d,0xc0d0 } },
0xd757,0x7b89,0xaa0d,0xc0d0, { { 0x4c9b,0xb974,0xeb84,0xc10a } },
0x4c9b,0xb974,0xeb84,0xc10a, { { 0x0043,0x7195,0x6286,0xc131 } },
0x0043,0x7195,0x6286,0xc131, { { 0xf34c,0x892f,0x5255,0xc143 } },
0xf34c,0x892f,0x5255,0xc143, { { 0xe14a,0x6a11,0xce4b,0xc13e } }
0xe14a,0x6a11,0xce4b,0xc13e
}; };
/* log( sqrt( 2*pi ) ) */ /* log( sqrt( 2*pi ) ) */
static const union static const union

View File

@ -97,16 +97,16 @@ static long double S[9] = {
}; };
#endif #endif
#if IBMPC #if IBMPC
static const unsigned short S[] = { static const uLD S[] = {
0xbaeb,0xd6d3,0x25e5,0x9c7e,0xbff5, XPD { { 0xbaeb,0xd6d3,0x25e5,0x9c7e,0xbff5, XPD } },
0xfe9a,0xceb4,0xc74e,0xec9a,0x3ff7, XPD { { 0xfe9a,0xceb4,0xc74e,0xec9a,0x3ff7, XPD } },
0x9225,0xdfef,0xb0e9,0x9da5,0xbff8, XPD { { 0x9225,0xdfef,0xb0e9,0x9da5,0xbff8, XPD } },
0x10b0,0xec17,0x87dc,0xacd7,0xbffa, XPD { { 0x10b0,0xec17,0x87dc,0xacd7,0xbffa, XPD } },
0x6b8d,0x7515,0x1905,0xaa89,0x3ffc, XPD { { 0x6b8d,0x7515,0x1905,0xaa89,0x3ffc, XPD } },
0xf183,0x126b,0xf47d,0xac0a,0xbffa, XPD { { 0xf183,0x126b,0xf47d,0xac0a,0xbffa, XPD } },
0x7bf6,0x57d1,0xa013,0xa7e7,0xbffe, XPD { { 0x7bf6,0x57d1,0xa013,0xa7e7,0xbffe, XPD } },
0xc7a9,0x7db0,0x67e3,0x93c4,0x3ffe, XPD { { 0xc7a9,0x7db0,0x67e3,0x93c4,0x3ffe, XPD } },
0x0000,0x0000,0x0000,0x8000,0x3fff, XPD { { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } }
}; };
#endif #endif
#if MIEEE #if MIEEE
@ -137,16 +137,16 @@ static long double SN[9] = {
}; };
#endif #endif
#if IBMPC #if IBMPC
static const unsigned SN[] = { static const uLD SN[] = {
0x5dd1,0x02de,0xb9f7,0x948d,0x3ff5, XPD { { 0x5dd1,0x02de,0xb9f7,0x948d,0x3ff5, XPD } },
0x989b,0xdd68,0xc5f1,0xec9c,0x3ff7, XPD { { 0x989b,0xdd68,0xc5f1,0xec9c,0x3ff7, XPD } },
0x2ca1,0x18f0,0x386f,0x9da5,0x3ff8, XPD { { 0x2ca1,0x18f0,0x386f,0x9da5,0x3ff8, XPD } },
0x783f,0x41dd,0x87d1,0xacd7,0xbffa, XPD { { 0x783f,0x41dd,0x87d1,0xacd7,0xbffa, XPD } },
0x7a5b,0xd76d,0x1905,0xaa89,0xbffc, XPD { { 0x7a5b,0xd76d,0x1905,0xaa89,0xbffc, XPD } },
0x7f64,0x1234,0xf47d,0xac0a,0xbffa, XPD { { 0x7f64,0x1234,0xf47d,0xac0a,0xbffa, XPD } },
0x5e26,0x57d1,0xa013,0xa7e7,0x3ffe, XPD { { 0x5e26,0x57d1,0xa013,0xa7e7,0x3ffe, XPD } },
0xc7aa,0x7db0,0x67e3,0x93c4,0x3ffe, XPD { { 0xc7aa,0x7db0,0x67e3,0x93c4,0x3ffe, XPD } },
0x0000,0x0000,0x0000,0x8000,0xbfff, XPD { { 0x0000,0x0000,0x0000,0x8000,0xbfff, XPD } }
}; };
#endif #endif
#if MIEEE #if MIEEE
@ -186,14 +186,14 @@ static long double A[7] = {
}; };
#endif #endif
#if IBMPC #if IBMPC
static const unsigned short A[] = { static const uLD A[] = {
0xd984,0xcc08,0x91c2,0xa012,0x3ff7, XPD { { 0xd984,0xcc08,0x91c2,0xa012,0x3ff7, XPD } },
0x3d91,0x0304,0x3da1,0xf685,0xbff5, XPD { { 0x3d91,0x0304,0x3da1,0xf685,0xbff5, XPD } },
0x3bdc,0xaad1,0xd492,0xdc88,0x3ff4, XPD { { 0x3bdc,0xaad1,0xd492,0xdc88,0x3ff4, XPD } },
0x8b20,0x9fce,0x844e,0x9c09,0xbff4, XPD { { 0x8b20,0x9fce,0x844e,0x9c09,0xbff4, XPD } },
0xf8f2,0x30e5,0x0092,0xd00d,0x3ff4, XPD { { 0xf8f2,0x30e5,0x0092,0xd00d,0x3ff4, XPD } },
0x4d88,0x03a8,0x60b6,0xb60b,0xbff6, XPD { { 0x4d88,0x03a8,0x60b6,0xb60b,0xbff6, XPD } },
0x9fcc,0xaaaa,0xaaaa,0xaaaa,0x3ffb, XPD { { 0x9fcc,0xaaaa,0xaaaa,0xaaaa,0x3ffb, XPD } }
}; };
#endif #endif
#if MIEEE #if MIEEE
@ -235,24 +235,23 @@ static long double C[7] = {
}; };
#endif #endif
#if IBMPC #if IBMPC
static const unsigned short B[] = { static const uLD B[] = {
0x9557,0x4995,0x0da1,0x873b,0xc00a, XPD { { 0x9557,0x4995,0x0da1,0x873b,0xc00a, XPD } },
0xfe44,0x9af8,0x5b8c,0xaa63,0xc00f, XPD { { 0xfe44,0x9af8,0x5b8c,0xaa63,0xc00f, XPD } },
0x5aa8,0x7cf5,0x3684,0x86ce,0xc013, XPD { { 0x5aa8,0x7cf5,0x3684,0x86ce,0xc013, XPD } },
0x259a,0x258c,0xf206,0xba7f,0xc015, XPD { { 0x259a,0x258c,0xf206,0xba7f,0xc015, XPD } },
0xbe18,0x1ca3,0xc0a0,0xf80a,0xc016, XPD { { 0xbe18,0x1ca3,0xc0a0,0xf80a,0xc016, XPD } },
0x168f,0x2c42,0x6717,0x98e3,0xc017, XPD { { 0x168f,0x2c42,0x6717,0x98e3,0xc017, XPD } },
0x2051,0x9d55,0x92c8,0x876e,0xc016, XPD { { 0x2051,0x9d55,0x92c8,0x876e,0xc016, XPD } }
}; };
static const unsigned short C[] = { static const uLD C[] = {
/*0x0000,0x0000,0x0000,0x8000,0x3fff, XPD*/ { { 0xaa77,0xcf2f,0xae76,0x807c,0xc008, XPD } },
0xaa77,0xcf2f,0xae76,0x807c,0xc008, XPD { { 0xb280,0x0d74,0xb55a,0x84f3,0xc00e, XPD } },
0xb280,0x0d74,0xb55a,0x84f3,0xc00e, XPD { { 0xa505,0xcd30,0x81dc,0x9809,0xc012, XPD } },
0xa505,0xcd30,0x81dc,0x9809,0xc012, XPD { { 0x3369,0x4246,0xb8c2,0x92f0,0xc015, XPD } },
0x3369,0x4246,0xb8c2,0x92f0,0xc015, XPD { { 0x63cf,0x6aee,0xbe6f,0x8837,0xc017, XPD } },
0x63cf,0x6aee,0xbe6f,0x8837,0xc017, XPD { { 0x26bb,0xccc7,0xb009,0xef75,0xc017, XPD } },
0x26bb,0xccc7,0xb009,0xef75,0xc017, XPD { { 0x462b,0xbae8,0xab96,0xa02a,0xc017, XPD } }
0x462b,0xbae8,0xab96,0xa02a,0xc017, XPD
}; };
#endif #endif
#if MIEEE #if MIEEE

View File

@ -184,85 +184,84 @@ static long double R[] = {
#ifdef IBMPC #ifdef IBMPC
static const unsigned short P[] = { static const uLD P[] = {
0xb804,0xa8b7,0xc6f4,0xda6a,0x3ff4, XPD { { 0xb804,0xa8b7,0xc6f4,0xda6a,0x3ff4, XPD } },
0x7de9,0xcf02,0x58c0,0xfae1,0x3ffd, XPD { { 0x7de9,0xcf02,0x58c0,0xfae1,0x3ffd, XPD } },
0x405a,0x3722,0x67c9,0xe000,0x3fff, XPD { { 0x405a,0x3722,0x67c9,0xe000,0x3fff, XPD } },
0xcd99,0x6b43,0x87ca,0xb333,0x3fff, XPD { { 0xcd99,0x6b43,0x87ca,0xb333,0x3fff, XPD } }
}; };
static const unsigned short Q[] = { static const uLD Q[] = {
/* 0x0000,0x0000,0x0000,0x8000,0x3fff, */ { { 0x6307,0xa469,0x3b33,0xa800,0x4001, XPD } },
0x6307,0xa469,0x3b33,0xa800,0x4001, XPD { { 0xfec2,0x62d7,0xa51c,0x8666,0x4002, XPD } },
0xfec2,0x62d7,0xa51c,0x8666,0x4002, XPD { { 0xda32,0xd072,0xa5d7,0x8666,0x4001, XPD } }
0xda32,0xd072,0xa5d7,0x8666,0x4001, XPD
}; };
static const unsigned short A[] = { static const uLD A[] = {
0x0000,0x0000,0x0000,0x8000,0x3fff, XPD { { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } },
0x033a,0x722a,0xb2db,0xfa83,0x3ffe, XPD { { 0x033a,0x722a,0xb2db,0xfa83,0x3ffe, XPD } },
0xcc2c,0x2486,0x7d15,0xf525,0x3ffe, XPD { { 0xcc2c,0x2486,0x7d15,0xf525,0x3ffe, XPD } },
0xf5cb,0xdcda,0xb99b,0xefe4,0x3ffe, XPD { { 0xf5cb,0xdcda,0xb99b,0xefe4,0x3ffe, XPD } },
0x392f,0xdd24,0xc6e7,0xeac0,0x3ffe, XPD { { 0x392f,0xdd24,0xc6e7,0xeac0,0x3ffe, XPD } },
0x48a8,0x7c83,0x06e7,0xe5b9,0x3ffe, XPD { { 0x48a8,0x7c83,0x06e7,0xe5b9,0x3ffe, XPD } },
0xe111,0x2a94,0xdeec,0xe0cc,0x3ffe, XPD { { 0xe111,0x2a94,0xdeec,0xe0cc,0x3ffe, XPD } },
0x3755,0xdaf2,0xb797,0xdbfb,0x3ffe, XPD { { 0x3755,0xdaf2,0xb797,0xdbfb,0x3ffe, XPD } },
0x6af4,0xd69d,0xfcca,0xd744,0x3ffe, XPD { { 0x6af4,0xd69d,0xfcca,0xd744,0x3ffe, XPD } },
0xe45a,0xf12a,0x1d91,0xd2a8,0x3ffe, XPD { { 0xe45a,0xf12a,0x1d91,0xd2a8,0x3ffe, XPD } },
0x80e4,0x1f84,0x8c15,0xce24,0x3ffe, XPD { { 0x80e4,0x1f84,0x8c15,0xce24,0x3ffe, XPD } },
0x27a3,0x6e2f,0xbd86,0xc9b9,0x3ffe, XPD { { 0x27a3,0x6e2f,0xbd86,0xc9b9,0x3ffe, XPD } },
0xdadd,0x5506,0x2a11,0xc567,0x3ffe, XPD { { 0xdadd,0x5506,0x2a11,0xc567,0x3ffe, XPD } },
0x9456,0x6670,0x4cca,0xc12c,0x3ffe, XPD { { 0x9456,0x6670,0x4cca,0xc12c,0x3ffe, XPD } },
0x36bf,0x580c,0xa39f,0xbd08,0x3ffe, XPD { { 0x36bf,0x580c,0xa39f,0xbd08,0x3ffe, XPD } },
0x9ee9,0x62fb,0xaf47,0xb8fb,0x3ffe, XPD { { 0x9ee9,0x62fb,0xaf47,0xb8fb,0x3ffe, XPD } },
0x6484,0xf9de,0xf333,0xb504,0x3ffe, XPD { { 0x6484,0xf9de,0xf333,0xb504,0x3ffe, XPD } },
0x2590,0xd2ac,0xf581,0xb123,0x3ffe, XPD { { 0x2590,0xd2ac,0xf581,0xb123,0x3ffe, XPD } },
0x4ac6,0x42a1,0x3eea,0xad58,0x3ffe, XPD { { 0x4ac6,0x42a1,0x3eea,0xad58,0x3ffe, XPD } },
0x0ef8,0xea7c,0x5ab4,0xa9a1,0x3ffe, XPD { { 0x0ef8,0xea7c,0x5ab4,0xa9a1,0x3ffe, XPD } },
0x38ea,0xb151,0xd6a9,0xa5fe,0x3ffe, XPD { { 0x38ea,0xb151,0xd6a9,0xa5fe,0x3ffe, XPD } },
0x6819,0x0c49,0x4303,0xa270,0x3ffe, XPD { { 0x6819,0x0c49,0x4303,0xa270,0x3ffe, XPD } },
0x11ae,0x91a1,0x3260,0x9ef5,0x3ffe, XPD { { 0x11ae,0x91a1,0x3260,0x9ef5,0x3ffe, XPD } },
0x5539,0xd54e,0x39b9,0x9b8d,0x3ffe, XPD { { 0x5539,0xd54e,0x39b9,0x9b8d,0x3ffe, XPD } },
0xa96f,0x8db8,0xf051,0x9837,0x3ffe, XPD { { 0xa96f,0x8db8,0xf051,0x9837,0x3ffe, XPD } },
0x0961,0xfef7,0xefa8,0x94f4,0x3ffe, XPD { { 0x0961,0xfef7,0xefa8,0x94f4,0x3ffe, XPD } },
0xc336,0xab11,0xd373,0x91c3,0x3ffe, XPD { { 0xc336,0xab11,0xd373,0x91c3,0x3ffe, XPD } },
0x53c0,0x45cd,0x398b,0x8ea4,0x3ffe, XPD { { 0x53c0,0x45cd,0x398b,0x8ea4,0x3ffe, XPD } },
0xd6e7,0xea8b,0xc1e3,0x8b95,0x3ffe, XPD { { 0xd6e7,0xea8b,0xc1e3,0x8b95,0x3ffe, XPD } },
0x8527,0x92da,0x0e80,0x8898,0x3ffe, XPD { { 0x8527,0x92da,0x0e80,0x8898,0x3ffe, XPD } },
0x7b15,0xcc48,0xc367,0x85aa,0x3ffe, XPD { { 0x7b15,0xcc48,0xc367,0x85aa,0x3ffe, XPD } },
0xa1d7,0xac2b,0x8698,0x82cd,0x3ffe, XPD { { 0xa1d7,0xac2b,0x8698,0x82cd,0x3ffe, XPD } },
0x0000,0x0000,0x0000,0x8000,0x3ffe, XPD { { 0x0000,0x0000,0x0000,0x8000,0x3ffe, XPD } }
}; };
static const unsigned short B[] = { static const uLD B[] = {
0x0000,0x0000,0x0000,0x0000,0x0000, XPD { { 0x0000,0x0000,0x0000,0x0000,0x0000, XPD } },
0x1f87,0xdb30,0x18f5,0xf73a,0x3fbd, XPD { { 0x1f87,0xdb30,0x18f5,0xf73a,0x3fbd, XPD } },
0xac15,0x3e46,0x2932,0xbf4a,0xbfbc, XPD { { 0xac15,0x3e46,0x2932,0xbf4a,0xbfbc, XPD } },
0x7944,0xba66,0xa091,0xcb12,0x3fb9, XPD { { 0x7944,0xba66,0xa091,0xcb12,0x3fb9, XPD } },
0xff78,0x40b4,0x2ee6,0xe69a,0x3fbc, XPD { { 0xff78,0x40b4,0x2ee6,0xe69a,0x3fbc, XPD } },
0xc895,0x5069,0xe383,0xee53,0xbfbb, XPD { { 0xc895,0x5069,0xe383,0xee53,0xbfbb, XPD } },
0x7cde,0x9376,0x4325,0xf8ab,0x3fbc, XPD { { 0x7cde,0x9376,0x4325,0xf8ab,0x3fbc, XPD } },
0xa10c,0x25e0,0xc093,0xaefd,0xbfbd, XPD { { 0xa10c,0x25e0,0xc093,0xaefd,0xbfbd, XPD } },
0x7d3e,0xea95,0x1366,0xb2fb,0x3fbd, XPD { { 0x7d3e,0xea95,0x1366,0xb2fb,0x3fbd, XPD } },
0x5d89,0xeb34,0x5191,0x9301,0x3fbd, XPD { { 0x5d89,0xeb34,0x5191,0x9301,0x3fbd, XPD } },
0x80d9,0xb883,0xfb10,0xe5eb,0x3fbb, XPD { { 0x80d9,0xb883,0xfb10,0xe5eb,0x3fbb, XPD } },
0x045d,0x288c,0xc1ec,0xbedd,0xbfbd, XPD { { 0x045d,0x288c,0xc1ec,0xbedd,0xbfbd, XPD } },
0xeded,0x5c85,0x4630,0x8d5a,0x3fbd, XPD { { 0xeded,0x5c85,0x4630,0x8d5a,0x3fbd, XPD } },
0x9d82,0xe5ac,0x8e0a,0xfd6d,0x3fba, XPD { { 0x9d82,0xe5ac,0x8e0a,0xfd6d,0x3fba, XPD } },
0x6dfd,0xeb58,0xaf14,0x8373,0xbfb9, XPD { { 0x6dfd,0xeb58,0xaf14,0x8373,0xbfb9, XPD } },
0xf938,0x7aac,0x91cf,0xe8da,0xbfbc, XPD { { 0xf938,0x7aac,0x91cf,0xe8da,0xbfbc, XPD } },
0x0000,0x0000,0x0000,0x0000,0x0000, XPD { { 0x0000,0x0000,0x0000,0x0000,0x0000, XPD } }
}; };
static const unsigned short R[] = { static const uLD R[] = {
0xa69b,0x530e,0xee1d,0xfd2a,0x3fee, XPD { { 0xa69b,0x530e,0xee1d,0xfd2a,0x3fee, XPD } },
0xc746,0x8e7e,0x5960,0xa182,0x3ff2, XPD { { 0xc746,0x8e7e,0x5960,0xa182,0x3ff2, XPD } },
0x63b6,0xadda,0xfd6a,0xaec3,0x3ff5, XPD { { 0x63b6,0xadda,0xfd6a,0xaec3,0x3ff5, XPD } },
0xc104,0xfd99,0x5b7c,0x9d95,0x3ff8, XPD { { 0xc104,0xfd99,0x5b7c,0x9d95,0x3ff8, XPD } },
0xe05e,0x249d,0x46b8,0xe358,0x3ffa, XPD { { 0xe05e,0x249d,0x46b8,0xe358,0x3ffa, XPD } },
0x5d1d,0x162c,0xeffc,0xf5fd,0x3ffc, XPD { { 0x5d1d,0x162c,0xeffc,0xf5fd,0x3ffc, XPD } },
0x79aa,0xd1cf,0x17f7,0xb172,0x3ffe, XPD { { 0x79aa,0xd1cf,0x17f7,0xb172,0x3ffe, XPD } }
}; };
/* 10 byte sizes versus 12 byte */ /* 10 byte sizes versus 12 byte */
#define douba(k) (*(long double *)(&A[(sizeof( long double )/2)*(k)])) #define douba(k) (A[(k)].ld)
#define doubb(k) (*(long double *)(&B[(sizeof( long double )/2)*(k)])) #define doubb(k) (B[(k)].ld)
#define MEXP (NXT*16384.0L) #define MEXP (NXT*16384.0L)
#ifdef DENORMAL #ifdef DENORMAL
#define MNEXP (-NXT*(16384.0L+64.0L)) #define MNEXP (-NXT*(16384.0L+64.0L))

View File

@ -69,18 +69,18 @@ static long double Q[] = {
#endif #endif
#ifdef IBMPC #ifdef IBMPC
static const unsigned short P[] = { static const uLD P[] = {
0xec6a,0xd942,0xfbb3,0xeb8f,0x3feb, XPD { { 0xec6a,0xd942,0xfbb3,0xeb8f,0x3feb, XPD } },
0x365e,0xb30a,0xe437,0xda86,0x3ff3, XPD { { 0x365e,0xb30a,0xe437,0xda86,0x3ff3, XPD } },
0x8890,0x01f6,0x2612,0xfde6,0x3ff9, XPD { { 0x8890,0x01f6,0x2612,0xfde6,0x3ff9, XPD } },
0x0000,0x0000,0x0000,0x8000,0x3fff, XPD { { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } }
}; };
static const unsigned short Q[] = { static const uLD Q[] = {
0x4edd,0x4c21,0xad09,0x95ed,0x3fe5, XPD { { 0x4edd,0x4c21,0xad09,0x95ed,0x3fe5, XPD } },
0x4376,0x9b70,0xd605,0xc65c,0xbfed, XPD { { 0x4376,0x9b70,0xd605,0xc65c,0xbfed, XPD } },
0xc8ad,0x5d21,0x3069,0x8aed,0x3ff5, XPD { { 0xc8ad,0x5d21,0x3069,0x8aed,0x3ff5, XPD } },
0x9c32,0x6374,0x2d4b,0xe98d,0xbffb, XPD { { 0x9c32,0x6374,0x2d4b,0xe98d,0xbffb, XPD } },
0x0000,0x0000,0x0000,0xc000,0x4001, XPD { { 0x0000,0x0000,0x0000,0xc000,0x4001, XPD } }
}; };
#endif #endif

View File

@ -68,17 +68,16 @@ static long double Q[] = {
#endif #endif
#ifdef IBMPC #ifdef IBMPC
static unsigned short P[] = { static uLD P[] = {
0xd2a4,0x1b0c,0x8f15,0x8f99,0xbff1, XPD { { 0xd2a4,0x1b0c,0x8f15,0x8f99,0xbff1, XPD } },
0x5959,0x9111,0x9cc7,0xf4e2,0xbffe, XPD { { 0x5959,0x9111,0x9cc7,0xf4e2,0xbffe, XPD } },
0xb576,0xef5e,0x6d57,0xa81b,0xc005, XPD { { 0xb576,0xef5e,0x6d57,0xa81b,0xc005, XPD } },
0xe3be,0xbfbd,0x5cbc,0xa381,0xc009, XPD { { 0xe3be,0xbfbd,0x5cbc,0xa381,0xc009, XPD } }
}; };
static unsigned short Q[] = { static uLD Q[] = {
/*0x0000,0x0000,0x0000,0x8000,0x3fff,*/ { { 0x687f,0xce24,0xdd6c,0xc084,0x4005, XPD } },
0x687f,0xce24,0xdd6c,0xc084,0x4005, XPD { { 0x3793,0xc95f,0xfa2f,0xe3b9,0x4009, XPD } },
0x3793,0xc95f,0xfa2f,0xe3b9,0x4009, XPD { { 0xd5a2,0x1f9c,0x0b1b,0xf542,0x400a, XPD } }
0xd5a2,0x1f9c,0x0b1b,0xf542,0x400a, XPD
}; };
#endif #endif

View File

@ -108,24 +108,24 @@ static const unsigned short Q[] = {
#endif #endif
#ifdef IBMPC #ifdef IBMPC
static const unsigned short P[] = { static const uD P[] = {
0x2153,0x3998,0xfcb8,0x3f24, { { 0x2153,0x3998,0xfcb8,0x3f24 } },
0xbfab,0xe686,0x84e3,0x3f53, { { 0xbfab,0xe686,0x84e3,0x3f53 } },
0x14b0,0xe9db,0x57cd,0x3f85, { { 0x14b0,0xe9db,0x57cd,0x3f85 } },
0x23d3,0x18c4,0x63d9,0x3fa8, { { 0x23d3,0x18c4,0x63d9,0x3fa8 } },
0x7d31,0xdcae,0x8da9,0x3fca, { { 0x7d31,0xdcae,0x8da9,0x3fca } },
0xe312,0x3993,0xa137,0x3fdf, { { 0xe312,0x3993,0xa137,0x3fdf } },
0x0000,0x0000,0x0000,0x3ff0 { { 0x0000,0x0000,0x0000,0x3ff0 } }
}; };
static const unsigned short Q[] = { static const uD Q[] = {
0xd3af,0x8400,0x487a,0xbef8, { { 0xd3af,0x8400,0x487a,0xbef8 } },
0x2573,0x2915,0xae8a,0x3f41, { { 0x2573,0x2915,0xae8a,0x3f41 } },
0xb44a,0xe750,0x40e4,0xbf72, { { 0xb44a,0xe750,0x40e4,0xbf72 } },
0xb117,0x5b1b,0x31ed,0x3f88, { { 0xb117,0x5b1b,0x31ed,0x3f88 } },
0xde67,0xe33f,0x5779,0x3fa2, { { 0xde67,0xe33f,0x5779,0x3fa2 } },
0x87c2,0x9d42,0x071a,0xbfce, { { 0x87c2,0x9d42,0x071a,0xbfce } },
0x3c51,0xc9cd,0x4944,0x3fb2, { { 0x3c51,0xc9cd,0x4944,0x3fb2 } },
0x0000,0x0000,0x0000,0x3ff0 { { 0x0000,0x0000,0x0000,0x3ff0 } }
}; };
#define MAXGAM 171.624376956302725 #define MAXGAM 171.624376956302725
#endif #endif
@ -180,12 +180,12 @@ static const unsigned short SQT[4] = {
#define SQTPI *(double *)SQT #define SQTPI *(double *)SQT
#endif #endif
#if IBMPC #if IBMPC
static const unsigned short STIR[20] = { static const uD STIR[] = {
0x7293,0x592d,0xcc72,0x3f49, { { 0x7293,0x592d,0xcc72,0x3f49 } },
0x1d7c,0x27e6,0x166b,0xbf2e, { { 0x1d7c,0x27e6,0x166b,0xbf2e } },
0x4fd7,0x07d4,0xf726,0xbf65, { { 0x4fd7,0x07d4,0xf726,0xbf65 } },
0xc5fd,0x1b98,0x71c7,0x3f6c, { { 0xc5fd,0x1b98,0x71c7,0x3f6c } },
0x5986,0x5555,0x5555,0x3fb5, { { 0x5986,0x5555,0x5555,0x3fb5 } }
}; };
#define MAXSTIR 143.01608 #define MAXSTIR 143.01608

View File

@ -88,26 +88,26 @@ static const long double Q[9] = {
}; };
#endif #endif
#if IBMPC #if IBMPC
static const unsigned short P[] = { static const uLD P[] = {
0x434a,0x3f22,0x2bda,0xb0b2,0x3ff0, XPD { { 0x434a,0x3f22,0x2bda,0xb0b2,0x3ff0, XPD } },
0xf5aa,0xe82f,0x335b,0xee2e,0x3ff3, XPD { { 0xf5aa,0xe82f,0x335b,0xee2e,0x3ff3, XPD } },
0xbe6c,0x3757,0xc717,0x861b,0x3ff7, XPD { { 0xbe6c,0x3757,0xc717,0x861b,0x3ff7, XPD } },
0x7f43,0x5196,0xb166,0xc368,0x3ff9, XPD { { 0x7f43,0x5196,0xb166,0xc368,0x3ff9, XPD } },
0x9549,0x8eb5,0x8c3a,0xe3f4,0x3ffb, XPD { { 0x9549,0x8eb5,0x8c3a,0xe3f4,0x3ffb, XPD } },
0x8d75,0x23af,0xc8e4,0xb9d4,0x3ffd, XPD { { 0x8d75,0x23af,0xc8e4,0xb9d4,0x3ffd, XPD } },
0x29cf,0x19b3,0x16c8,0xd67a,0x3ffe, XPD { { 0x29cf,0x19b3,0x16c8,0xd67a,0x3ffe, XPD } },
0x0000,0x0000,0x0000,0x8000,0x3fff, XPD { { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } }
}; };
static const unsigned short Q[] = { static const uLD Q[] = {
0x5473,0x2de8,0x1268,0xea67,0xbfee, XPD { { 0x5473,0x2de8,0x1268,0xea67,0xbfee, XPD } },
0x334b,0xc2f0,0xa2dd,0xf60e,0x3ff2, XPD { { 0x334b,0xc2f0,0xa2dd,0xf60e,0x3ff2, XPD } },
0xbeed,0x1853,0xa691,0xa23d,0xbff5, XPD { { 0xbeed,0x1853,0xa691,0xa23d,0xbff5, XPD } },
0x296e,0x7cb1,0x5dfd,0xd08f,0xbff4, XPD { { 0x296e,0x7cb1,0x5dfd,0xd08f,0xbff4, XPD } },
0x0417,0x7989,0xd7bc,0xe338,0x3ff9, XPD { { 0x0417,0x7989,0xd7bc,0xe338,0x3ff9, XPD } },
0x3295,0x3698,0xd580,0xbdcd,0xbffa, XPD { { 0x3295,0x3698,0xd580,0xbdcd,0xbffa, XPD } },
0x75ef,0x3ab7,0x4ad3,0xe5bc,0xbffc, XPD { { 0x75ef,0x3ab7,0x4ad3,0xe5bc,0xbffc, XPD } },
0xe458,0x2ec7,0xfd57,0xd47c,0x3ffd, XPD { { 0xe458,0x2ec7,0xfd57,0xd47c,0x3ffd, XPD } },
0x0000,0x0000,0x0000,0x8000,0x3fff, XPD { { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } }
}; };
#endif #endif
#if MIEEE #if MIEEE
@ -182,16 +182,16 @@ static const long double STIR[9] = {
}; };
#endif #endif
#if IBMPC #if IBMPC
static const unsigned short STIR[] = { static const uLD STIR[] = {
0x6ede,0x69f7,0x54e3,0xbb5d,0x3ff4, XPD { { 0x6ede,0x69f7,0x54e3,0xbb5d,0x3ff4, XPD } },
0xc395,0x0295,0x4443,0xc64b,0xbfef, XPD { { 0xc395,0x0295,0x4443,0xc64b,0xbfef, XPD } },
0xba6f,0x7c59,0x5e47,0x9bfb,0xbff4, XPD { { 0xba6f,0x7c59,0x5e47,0x9bfb,0xbff4, XPD } },
0x5704,0x1a39,0xb11d,0x9293,0x3ff1, XPD { { 0x5704,0x1a39,0xb11d,0x9293,0x3ff1, XPD } },
0x30b7,0x1a21,0x98b2,0xcd87,0x3ff4, XPD { { 0x30b7,0x1a21,0x98b2,0xcd87,0x3ff4, XPD } },
0xbef3,0x7023,0x6a08,0xf09e,0xbff2, XPD { { 0xbef3,0x7023,0x6a08,0xf09e,0xbff2, XPD } },
0x3a1c,0x5ac8,0x3478,0xafb9,0xbff6, XPD { { 0x3a1c,0x5ac8,0x3478,0xafb9,0xbff6, XPD } },
0xc3c9,0x906e,0x38e3,0xe38e,0x3ff6, XPD { { 0xc3c9,0x906e,0x38e3,0xe38e,0x3ff6, XPD } },
0xa1d5,0xaaaa,0xaaaa,0xaaaa,0x3ffb, XPD { { 0xa1d5,0xaaaa,0xaaaa,0xaaaa,0x3ffb, XPD } }
}; };
#endif #endif
#if MIEEE #if MIEEE
@ -229,16 +229,16 @@ static const long double S[9] = {
}; };
#endif #endif
#if IBMPC #if IBMPC
static const unsigned short S[] = { static const uLD S[] = {
0xbaeb,0xd6d3,0x25e5,0x9c7e,0xbff5, XPD { { 0xbaeb,0xd6d3,0x25e5,0x9c7e,0xbff5, XPD } },
0xfe9a,0xceb4,0xc74e,0xec9a,0x3ff7, XPD { { 0xfe9a,0xceb4,0xc74e,0xec9a,0x3ff7, XPD } },
0x9225,0xdfef,0xb0e9,0x9da5,0xbff8, XPD { { 0x9225,0xdfef,0xb0e9,0x9da5,0xbff8, XPD } },
0x10b0,0xec17,0x87dc,0xacd7,0xbffa, XPD { { 0x10b0,0xec17,0x87dc,0xacd7,0xbffa, XPD } },
0x6b8d,0x7515,0x1905,0xaa89,0x3ffc, XPD { { 0x6b8d,0x7515,0x1905,0xaa89,0x3ffc, XPD } },
0xf183,0x126b,0xf47d,0xac0a,0xbffa, XPD { { 0xf183,0x126b,0xf47d,0xac0a,0xbffa, XPD } },
0x7bf6,0x57d1,0xa013,0xa7e7,0xbffe, XPD { { 0x7bf6,0x57d1,0xa013,0xa7e7,0xbffe, XPD } },
0xc7a9,0x7db0,0x67e3,0x93c4,0x3ffe, XPD { { 0xc7a9,0x7db0,0x67e3,0x93c4,0x3ffe, XPD } },
0x0000,0x0000,0x0000,0x8000,0x3fff, XPD { { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } }
}; };
#endif #endif
#if MIEEE #if MIEEE
@ -274,16 +274,16 @@ static const long double SN[9] = {
}; };
#endif #endif
#if IBMPC #if IBMPC
static const unsigned short SN[] = { static const uLD SN[] = {
0x5dd1,0x02de,0xb9f7,0x948d,0x3ff5, XPD { { 0x5dd1,0x02de,0xb9f7,0x948d,0x3ff5, XPD } },
0x989b,0xdd68,0xc5f1,0xec9c,0x3ff7, XPD { { 0x989b,0xdd68,0xc5f1,0xec9c,0x3ff7, XPD } },
0x2ca1,0x18f0,0x386f,0x9da5,0x3ff8, XPD { { 0x2ca1,0x18f0,0x386f,0x9da5,0x3ff8, XPD } },
0x783f,0x41dd,0x87d1,0xacd7,0xbffa, XPD { { 0x783f,0x41dd,0x87d1,0xacd7,0xbffa, XPD } },
0x7a5b,0xd76d,0x1905,0xaa89,0xbffc, XPD { { 0x7a5b,0xd76d,0x1905,0xaa89,0xbffc, XPD } },
0x7f64,0x1234,0xf47d,0xac0a,0xbffa, XPD { { 0x7f64,0x1234,0xf47d,0xac0a,0xbffa, XPD } },
0x5e26,0x57d1,0xa013,0xa7e7,0x3ffe, XPD { { 0x5e26,0x57d1,0xa013,0xa7e7,0x3ffe, XPD } },
0xc7aa,0x7db0,0x67e3,0x93c4,0x3ffe, XPD { { 0xc7aa,0x7db0,0x67e3,0x93c4,0x3ffe, XPD } },
0x0000,0x0000,0x0000,0x8000,0xbfff, XPD { { 0x0000,0x0000,0x0000,0x8000,0xbfff, XPD } }
}; };
#endif #endif
#if MIEEE #if MIEEE