diff options
author | Chris Sutcliffe <ir0nh34d@users.sourceforge.net> | 2009-07-18 05:39:52 +0400 |
---|---|---|
committer | Chris Sutcliffe <ir0nh34d@users.sourceforge.net> | 2009-07-18 05:39:52 +0400 |
commit | b5fb6b0dc3e12cdc746540a23eeb3e218aad9427 (patch) | |
tree | b9fb63814ffc8fccb5da45054ec967884d6e6fd0 /winsup/mingw/mingwex | |
parent | c627d4ddd08eacaee0388b6cae4964eda6ffbfd6 (diff) |
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.
Diffstat (limited to 'winsup/mingw/mingwex')
-rw-r--r-- | winsup/mingw/mingwex/math/cephes_mconf.h | 41 | ||||
-rwxr-xr-x | winsup/mingw/mingwex/math/erfl.c | 101 | ||||
-rw-r--r-- | winsup/mingw/mingwex/math/lgamma.c | 41 | ||||
-rw-r--r-- | winsup/mingw/mingwex/math/lgammal.c | 89 | ||||
-rw-r--r-- | winsup/mingw/mingwex/math/powl.c | 143 | ||||
-rw-r--r-- | winsup/mingw/mingwex/math/sinhl.c | 22 | ||||
-rw-r--r-- | winsup/mingw/mingwex/math/tanhl.c | 19 | ||||
-rw-r--r-- | winsup/mingw/mingwex/math/tgamma.c | 46 | ||||
-rw-r--r-- | winsup/mingw/mingwex/math/tgammal.c | 98 |
9 files changed, 300 insertions, 300 deletions
diff --git a/winsup/mingw/mingwex/math/cephes_mconf.h b/winsup/mingw/mingwex/math/cephes_mconf.h index 9818c4546..3733d983f 100644 --- a/winsup/mingw/mingwex/math/cephes_mconf.h +++ b/winsup/mingw/mingwex/math/cephes_mconf.h @@ -10,7 +10,10 @@ #define DENORMAL 1 #define VOLATILE #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 @@ -163,16 +166,17 @@ Direct inquiries to 30 Frost Street, Cambridge, MA 02140 */ static __inline__ double polevl( x, p, n ) double x; -const void *p; +const uD *p; int n; { register double y; -register double *P = (double *)p; -y = *P++; +y = p->d; +p++; do { - y = y * x + *P++; + y = y * x + p->d; + p++; } while( --n ); return(y); @@ -185,17 +189,18 @@ return(y); */ static __inline__ double p1evl( x, p, n ) double x; -const void *p; +const uD *p; int n; { register double y; -register double *P = (double *)p; n -= 1; -y = x + *P++; +y = x + p->d; +p++; do { - y = y * x + *P++; + y = y * x + p->d; + p++; } while( --n ); return( y ); @@ -259,16 +264,17 @@ Direct inquiries to 30 Frost Street, Cambridge, MA 02140 */ static __inline__ long double polevll( x, p, n ) long double x; -const void *p; +const uLD *p; int n; { register long double y; -register long double *P = (long double *)p; -y = *P++; +y = p->ld; +p++; do { - y = y * x + *P++; + y = y * x + p->ld; + p++; } while( --n ); return(y); @@ -281,17 +287,18 @@ return(y); */ static __inline__ long double p1evll( x, p, n ) long double x; -const void *p; +const uLD *p; int n; { register long double y; -register long double *P = (long double *)p; n -= 1; -y = x + *P++; +y = x + p->ld; +p++; do { - y = y * x + *P++; + y = y * x + p->ld; + p++; } while( --n ); return( y ); diff --git a/winsup/mingw/mingwex/math/erfl.c b/winsup/mingw/mingwex/math/erfl.c index ac50d98c2..3f9b2b9f3 100755 --- a/winsup/mingw/mingwex/math/erfl.c +++ b/winsup/mingw/mingwex/math/erfl.c @@ -105,74 +105,71 @@ Copyright 1984, 1995 by Stephen L. Moshier 1/8 <= 1/x <= 1 Peak relative error 5.8e-21 */ -static const unsigned short P[] = { -0x4bf0,0x9ad8,0x7a03,0x86c7,0x401d, XPD -0xdf23,0xd843,0x4032,0x8881,0x401e, XPD -0xd025,0xcfd5,0x8494,0x88d3,0x401e, XPD -0xb6d0,0xc92b,0x5417,0xacb1,0x401d, XPD -0xada8,0x356a,0x4982,0x94a6,0x401c, XPD -0x4e13,0xcaee,0x9e31,0xb258,0x401a, XPD -0x5840,0x554d,0x37a3,0x9239,0x4018, XPD -0x3b58,0x3da2,0xaf02,0x9780,0x4015, XPD -0x0144,0x489e,0xbe68,0x9c31,0x4011, XPD -0x333b,0xd9e6,0xd404,0x986f,0xbfee, XPD +static const uLD P[] = { +{ { 0x4bf0,0x9ad8,0x7a03,0x86c7,0x401d, XPD } }, +{ { 0xdf23,0xd843,0x4032,0x8881,0x401e, XPD } }, +{ { 0xd025,0xcfd5,0x8494,0x88d3,0x401e, XPD } }, +{ { 0xb6d0,0xc92b,0x5417,0xacb1,0x401d, XPD } }, +{ { 0xada8,0x356a,0x4982,0x94a6,0x401c, XPD } }, +{ { 0x4e13,0xcaee,0x9e31,0xb258,0x401a, XPD } }, +{ { 0x5840,0x554d,0x37a3,0x9239,0x4018, XPD } }, +{ { 0x3b58,0x3da2,0xaf02,0x9780,0x4015, XPD } }, +{ { 0x0144,0x489e,0xbe68,0x9c31,0x4011, XPD } }, +{ { 0x333b,0xd9e6,0xd404,0x986f,0xbfee, XPD } } }; -static const unsigned short Q[] = { -/* 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD */ -0x0e43,0x302d,0x79ed,0x86c7,0x401d, XPD -0xf817,0x9128,0xc0f8,0xd48b,0x401e, XPD -0x8eae,0x8dad,0x6eb4,0x9aa2,0x401f, XPD -0x00e7,0x7595,0xcd06,0x88bb,0x401f, XPD -0x4991,0xcfda,0x52f1,0xa2a9,0x401e, XPD -0xc39d,0xe415,0xc43d,0x87c0,0x401d, XPD -0xa75d,0x436f,0x30dd,0xa027,0x401b, XPD -0xc4cb,0x305a,0xbf78,0x8220,0x4019, XPD -0x3708,0x33b1,0x07fa,0x8644,0x4016, XPD -0x24fa,0x96f6,0x7153,0x8a6c,0x4012, XPD +static const uLD Q[] = { +{ { 0X0e43,0x302d,0x79ed,0x86c7,0x401d, XPD } }, +{ { 0xf817,0x9128,0xc0f8,0xd48b,0x401e, XPD } }, +{ { 0x8eae,0x8dad,0x6eb4,0x9aa2,0x401f, XPD } }, +{ { 0x00e7,0x7595,0xcd06,0x88bb,0x401f, XPD } }, +{ { 0x4991,0xcfda,0x52f1,0xa2a9,0x401e, XPD } }, +{ { 0xc39d,0xe415,0xc43d,0x87c0,0x401d, XPD } }, +{ { 0xa75d,0x436f,0x30dd,0xa027,0x401b, XPD } }, +{ { 0xc4cb,0x305a,0xbf78,0x8220,0x4019, XPD } }, +{ { 0x3708,0x33b1,0x07fa,0x8644,0x4016, XPD } }, +{ { 0x24fa,0x96f6,0x7153,0x8a6c,0x4012, XPD } } }; /* erfc(x) = exp(-x^2) 1/x R(1/x^2) / S(1/x^2) 1/128 <= 1/x < 1/8 Peak relative error 1.9e-21 */ -static const unsigned short R[] = { -0x260a,0xab95,0x2fc7,0xe7c4,0x4000, XPD -0x4761,0x613e,0xdf6d,0xe58e,0x4001, XPD -0x0615,0x4b00,0x575f,0xdc7b,0x4000, XPD -0x521d,0x8527,0x3435,0x8dc2,0x3ffe, XPD -0x22cf,0xc711,0x6c5b,0xdcfb,0x3ff9, XPD +static const uLD R[] = { +{ { 0x260a,0xab95,0x2fc7,0xe7c4,0x4000, XPD } }, +{ { 0x4761,0x613e,0xdf6d,0xe58e,0x4001, XPD } }, +{ { 0x0615,0x4b00,0x575f,0xdc7b,0x4000, XPD } }, +{ { 0x521d,0x8527,0x3435,0x8dc2,0x3ffe, XPD } }, +{ { 0x22cf,0xc711,0x6c5b,0xdcfb,0x3ff9, XPD } } }; -static const unsigned short S[] = { -/* 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD */ -0x5de6,0x17d7,0x54d6,0xaba9,0x4002, XPD -0x55d5,0xd300,0xe71e,0xf564,0x4002, XPD -0xb611,0x8f76,0xf020,0xd255,0x4001, XPD -0x3684,0x3798,0xb793,0x80b0,0x3fff, XPD -0xf5af,0x2fb2,0x1e57,0xc3d7,0x3ffa, XPD +static const uLD S[] = { +{ { 0x5de6,0x17d7,0x54d6,0xaba9,0x4002, XPD } }, +{ { 0x55d5,0xd300,0xe71e,0xf564,0x4002, XPD } }, +{ { 0xb611,0x8f76,0xf020,0xd255,0x4001, XPD } }, +{ { 0x3684,0x3798,0xb793,0x80b0,0x3fff, XPD } }, +{ { 0xf5af,0x2fb2,0x1e57,0xc3d7,0x3ffa, XPD } } }; /* erf(x) = x T(x^2)/U(x^2) 0 <= x <= 1 Peak relative error 7.6e-23 */ -static const unsigned short T[] = { -0xfd7a,0x3a1a,0x705b,0xe0c4,0x3ffb, XPD -0x3128,0xc337,0x3716,0xace5,0x4001, XPD -0x9517,0x4e93,0x540e,0x8f97,0x4007, XPD -0x6118,0x6059,0x9093,0xa757,0x400a, XPD -0xb954,0xa987,0xc60c,0xbc83,0x400e, XPD -0x7a56,0xe45a,0xa4bd,0x975b,0x4010, XPD -0xc446,0x6bab,0x0b2a,0x86d0,0x4013, XPD +static const uLD T[] = { +{ { 0xfd7a,0x3a1a,0x705b,0xe0c4,0x3ffb, XPD } }, +{ { 0x3128,0xc337,0x3716,0xace5,0x4001, XPD } }, +{ { 0x9517,0x4e93,0x540e,0x8f97,0x4007, XPD } }, +{ { 0x6118,0x6059,0x9093,0xa757,0x400a, XPD } }, +{ { 0xb954,0xa987,0xc60c,0xbc83,0x400e, XPD } }, +{ { 0x7a56,0xe45a,0xa4bd,0x975b,0x4010, XPD } }, +{ { 0xc446,0x6bab,0x0b2a,0x86d0,0x4013, XPD } } }; -static const unsigned short U[] = { -/* 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD */ -0x3453,0x1f8e,0xf688,0xb507,0x4004, XPD -0x71ac,0xb12f,0x21ca,0xf2e2,0x4008, XPD -0xffe8,0x9cac,0x3b84,0xc2ac,0x400c, XPD -0x481d,0x445b,0xc807,0xc232,0x400f, XPD -0x9ad5,0x1aef,0x45b1,0xe25e,0x4011, XPD -0x71a7,0x1cad,0x012e,0xeef3,0x4012, XPD +static const uLD U[] = { +{ { 0x3453,0x1f8e,0xf688,0xb507,0x4004, XPD } }, +{ { 0x71ac,0xb12f,0x21ca,0xf2e2,0x4008, XPD } }, +{ { 0xffe8,0x9cac,0x3b84,0xc2ac,0x400c, XPD } }, +{ { 0x481d,0x445b,0xc807,0xc232,0x400f, XPD } }, +{ { 0x9ad5,0x1aef,0x45b1,0xe25e,0x4011, XPD } }, +{ { 0x71a7,0x1cad,0x012e,0xeef3,0x4012, XPD } } }; /* expx2l.c diff --git a/winsup/mingw/mingwex/math/lgamma.c b/winsup/mingw/mingwex/math/lgamma.c index b569f9adc..e4a67bcde 100644 --- a/winsup/mingw/mingwex/math/lgamma.c +++ b/winsup/mingw/mingwex/math/lgamma.c @@ -164,29 +164,28 @@ static const unsigned short LPI[4] = { #endif #ifdef IBMPC -static const unsigned short A[] = { -0x6661,0x2733,0x9850,0x3f4a, -0xe943,0xb580,0x7fbd,0xbf43, -0x5ebb,0x20dc,0x019f,0x3f4a, -0xa5a1,0x16b0,0xc16c,0xbf66, -0x554b,0x5555,0x5555,0x3fb5 +static const uD A[] = { +{ { 0x6661,0x2733,0x9850,0x3f4a } }, +{ { 0xe943,0xb580,0x7fbd,0xbf43 } }, +{ { 0x5ebb,0x20dc,0x019f,0x3f4a } }, +{ { 0xa5a1,0x16b0,0xc16c,0xbf66 } }, +{ { 0x554b,0x5555,0x5555,0x3fb5 } } }; -static const unsigned short B[] = { -0x6761,0x8ff3,0x8901,0xc095, -0xb93e,0x355b,0xf234,0xc0e2, -0x89e5,0xf890,0x3d73,0xc114, -0xdb51,0xf994,0xbc82,0xc131, -0xf20b,0x0219,0x4589,0xc13a, -0x055e,0x5418,0x0c67,0xc12a +static const uD B[] = { +{ { 0x6761,0x8ff3,0x8901,0xc095 } }, +{ { 0xb93e,0x355b,0xf234,0xc0e2 } }, +{ { 0x89e5,0xf890,0x3d73,0xc114 } }, +{ { 0xdb51,0xf994,0xbc82,0xc131 } }, +{ { 0xf20b,0x0219,0x4589,0xc13a } }, +{ { 0x055e,0x5418,0x0c67,0xc12a } } }; -static const unsigned short C[] = { -/*0x0000,0x0000,0x0000,0x3ff0,*/ -0x12b2,0x1cf3,0xfd0d,0xc075, -0xd757,0x7b89,0xaa0d,0xc0d0, -0x4c9b,0xb974,0xeb84,0xc10a, -0x0043,0x7195,0x6286,0xc131, -0xf34c,0x892f,0x5255,0xc143, -0xe14a,0x6a11,0xce4b,0xc13e +static const uD C[] = { +{ { 0x12b2,0x1cf3,0xfd0d,0xc075 } }, +{ { 0xd757,0x7b89,0xaa0d,0xc0d0 } }, +{ { 0x4c9b,0xb974,0xeb84,0xc10a } }, +{ { 0x0043,0x7195,0x6286,0xc131 } }, +{ { 0xf34c,0x892f,0x5255,0xc143 } }, +{ { 0xe14a,0x6a11,0xce4b,0xc13e } } }; /* log( sqrt( 2*pi ) ) */ static const union diff --git a/winsup/mingw/mingwex/math/lgammal.c b/winsup/mingw/mingwex/math/lgammal.c index d2b306afd..54631fc5d 100644 --- a/winsup/mingw/mingwex/math/lgammal.c +++ b/winsup/mingw/mingwex/math/lgammal.c @@ -97,16 +97,16 @@ static long double S[9] = { }; #endif #if IBMPC -static const unsigned short S[] = { -0xbaeb,0xd6d3,0x25e5,0x9c7e,0xbff5, XPD -0xfe9a,0xceb4,0xc74e,0xec9a,0x3ff7, XPD -0x9225,0xdfef,0xb0e9,0x9da5,0xbff8, XPD -0x10b0,0xec17,0x87dc,0xacd7,0xbffa, XPD -0x6b8d,0x7515,0x1905,0xaa89,0x3ffc, XPD -0xf183,0x126b,0xf47d,0xac0a,0xbffa, XPD -0x7bf6,0x57d1,0xa013,0xa7e7,0xbffe, XPD -0xc7a9,0x7db0,0x67e3,0x93c4,0x3ffe, XPD -0x0000,0x0000,0x0000,0x8000,0x3fff, XPD +static const uLD S[] = { +{ { 0xbaeb,0xd6d3,0x25e5,0x9c7e,0xbff5, XPD } }, +{ { 0xfe9a,0xceb4,0xc74e,0xec9a,0x3ff7, XPD } }, +{ { 0x9225,0xdfef,0xb0e9,0x9da5,0xbff8, XPD } }, +{ { 0x10b0,0xec17,0x87dc,0xacd7,0xbffa, XPD } }, +{ { 0x6b8d,0x7515,0x1905,0xaa89,0x3ffc, XPD } }, +{ { 0xf183,0x126b,0xf47d,0xac0a,0xbffa, XPD } }, +{ { 0x7bf6,0x57d1,0xa013,0xa7e7,0xbffe, XPD } }, +{ { 0xc7a9,0x7db0,0x67e3,0x93c4,0x3ffe, XPD } }, +{ { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } } }; #endif #if MIEEE @@ -137,16 +137,16 @@ static long double SN[9] = { }; #endif #if IBMPC -static const unsigned SN[] = { -0x5dd1,0x02de,0xb9f7,0x948d,0x3ff5, XPD -0x989b,0xdd68,0xc5f1,0xec9c,0x3ff7, XPD -0x2ca1,0x18f0,0x386f,0x9da5,0x3ff8, XPD -0x783f,0x41dd,0x87d1,0xacd7,0xbffa, XPD -0x7a5b,0xd76d,0x1905,0xaa89,0xbffc, XPD -0x7f64,0x1234,0xf47d,0xac0a,0xbffa, XPD -0x5e26,0x57d1,0xa013,0xa7e7,0x3ffe, XPD -0xc7aa,0x7db0,0x67e3,0x93c4,0x3ffe, XPD -0x0000,0x0000,0x0000,0x8000,0xbfff, XPD +static const uLD SN[] = { +{ { 0x5dd1,0x02de,0xb9f7,0x948d,0x3ff5, XPD } }, +{ { 0x989b,0xdd68,0xc5f1,0xec9c,0x3ff7, XPD } }, +{ { 0x2ca1,0x18f0,0x386f,0x9da5,0x3ff8, XPD } }, +{ { 0x783f,0x41dd,0x87d1,0xacd7,0xbffa, XPD } }, +{ { 0x7a5b,0xd76d,0x1905,0xaa89,0xbffc, XPD } }, +{ { 0x7f64,0x1234,0xf47d,0xac0a,0xbffa, XPD } }, +{ { 0x5e26,0x57d1,0xa013,0xa7e7,0x3ffe, XPD } }, +{ { 0xc7aa,0x7db0,0x67e3,0x93c4,0x3ffe, XPD } }, +{ { 0x0000,0x0000,0x0000,0x8000,0xbfff, XPD } } }; #endif #if MIEEE @@ -186,14 +186,14 @@ static long double A[7] = { }; #endif #if IBMPC -static const unsigned short A[] = { -0xd984,0xcc08,0x91c2,0xa012,0x3ff7, XPD -0x3d91,0x0304,0x3da1,0xf685,0xbff5, XPD -0x3bdc,0xaad1,0xd492,0xdc88,0x3ff4, XPD -0x8b20,0x9fce,0x844e,0x9c09,0xbff4, XPD -0xf8f2,0x30e5,0x0092,0xd00d,0x3ff4, XPD -0x4d88,0x03a8,0x60b6,0xb60b,0xbff6, XPD -0x9fcc,0xaaaa,0xaaaa,0xaaaa,0x3ffb, XPD +static const uLD A[] = { +{ { 0xd984,0xcc08,0x91c2,0xa012,0x3ff7, XPD } }, +{ { 0x3d91,0x0304,0x3da1,0xf685,0xbff5, XPD } }, +{ { 0x3bdc,0xaad1,0xd492,0xdc88,0x3ff4, XPD } }, +{ { 0x8b20,0x9fce,0x844e,0x9c09,0xbff4, XPD } }, +{ { 0xf8f2,0x30e5,0x0092,0xd00d,0x3ff4, XPD } }, +{ { 0x4d88,0x03a8,0x60b6,0xb60b,0xbff6, XPD } }, +{ { 0x9fcc,0xaaaa,0xaaaa,0xaaaa,0x3ffb, XPD } } }; #endif #if MIEEE @@ -235,24 +235,23 @@ static long double C[7] = { }; #endif #if IBMPC -static const unsigned short B[] = { -0x9557,0x4995,0x0da1,0x873b,0xc00a, XPD -0xfe44,0x9af8,0x5b8c,0xaa63,0xc00f, XPD -0x5aa8,0x7cf5,0x3684,0x86ce,0xc013, XPD -0x259a,0x258c,0xf206,0xba7f,0xc015, XPD -0xbe18,0x1ca3,0xc0a0,0xf80a,0xc016, XPD -0x168f,0x2c42,0x6717,0x98e3,0xc017, XPD -0x2051,0x9d55,0x92c8,0x876e,0xc016, XPD +static const uLD B[] = { +{ { 0x9557,0x4995,0x0da1,0x873b,0xc00a, XPD } }, +{ { 0xfe44,0x9af8,0x5b8c,0xaa63,0xc00f, XPD } }, +{ { 0x5aa8,0x7cf5,0x3684,0x86ce,0xc013, XPD } }, +{ { 0x259a,0x258c,0xf206,0xba7f,0xc015, XPD } }, +{ { 0xbe18,0x1ca3,0xc0a0,0xf80a,0xc016, XPD } }, +{ { 0x168f,0x2c42,0x6717,0x98e3,0xc017, XPD } }, +{ { 0x2051,0x9d55,0x92c8,0x876e,0xc016, XPD } } }; -static const unsigned short C[] = { -/*0x0000,0x0000,0x0000,0x8000,0x3fff, XPD*/ -0xaa77,0xcf2f,0xae76,0x807c,0xc008, XPD -0xb280,0x0d74,0xb55a,0x84f3,0xc00e, XPD -0xa505,0xcd30,0x81dc,0x9809,0xc012, XPD -0x3369,0x4246,0xb8c2,0x92f0,0xc015, XPD -0x63cf,0x6aee,0xbe6f,0x8837,0xc017, XPD -0x26bb,0xccc7,0xb009,0xef75,0xc017, XPD -0x462b,0xbae8,0xab96,0xa02a,0xc017, XPD +static const uLD C[] = { +{ { 0xaa77,0xcf2f,0xae76,0x807c,0xc008, XPD } }, +{ { 0xb280,0x0d74,0xb55a,0x84f3,0xc00e, XPD } }, +{ { 0xa505,0xcd30,0x81dc,0x9809,0xc012, XPD } }, +{ { 0x3369,0x4246,0xb8c2,0x92f0,0xc015, XPD } }, +{ { 0x63cf,0x6aee,0xbe6f,0x8837,0xc017, XPD } }, +{ { 0x26bb,0xccc7,0xb009,0xef75,0xc017, XPD } }, +{ { 0x462b,0xbae8,0xab96,0xa02a,0xc017, XPD } } }; #endif #if MIEEE diff --git a/winsup/mingw/mingwex/math/powl.c b/winsup/mingw/mingwex/math/powl.c index f85e55653..75e6f7dbe 100644 --- a/winsup/mingw/mingwex/math/powl.c +++ b/winsup/mingw/mingwex/math/powl.c @@ -184,85 +184,84 @@ static long double R[] = { #ifdef IBMPC -static const unsigned short P[] = { -0xb804,0xa8b7,0xc6f4,0xda6a,0x3ff4, XPD -0x7de9,0xcf02,0x58c0,0xfae1,0x3ffd, XPD -0x405a,0x3722,0x67c9,0xe000,0x3fff, XPD -0xcd99,0x6b43,0x87ca,0xb333,0x3fff, XPD +static const uLD P[] = { +{ { 0xb804,0xa8b7,0xc6f4,0xda6a,0x3ff4, XPD } }, +{ { 0x7de9,0xcf02,0x58c0,0xfae1,0x3ffd, XPD } }, +{ { 0x405a,0x3722,0x67c9,0xe000,0x3fff, XPD } }, +{ { 0xcd99,0x6b43,0x87ca,0xb333,0x3fff, XPD } } }; -static const unsigned short Q[] = { -/* 0x0000,0x0000,0x0000,0x8000,0x3fff, */ -0x6307,0xa469,0x3b33,0xa800,0x4001, XPD -0xfec2,0x62d7,0xa51c,0x8666,0x4002, XPD -0xda32,0xd072,0xa5d7,0x8666,0x4001, XPD +static const uLD Q[] = { +{ { 0x6307,0xa469,0x3b33,0xa800,0x4001, XPD } }, +{ { 0xfec2,0x62d7,0xa51c,0x8666,0x4002, XPD } }, +{ { 0xda32,0xd072,0xa5d7,0x8666,0x4001, XPD } } }; -static const unsigned short A[] = { -0x0000,0x0000,0x0000,0x8000,0x3fff, XPD -0x033a,0x722a,0xb2db,0xfa83,0x3ffe, XPD -0xcc2c,0x2486,0x7d15,0xf525,0x3ffe, XPD -0xf5cb,0xdcda,0xb99b,0xefe4,0x3ffe, XPD -0x392f,0xdd24,0xc6e7,0xeac0,0x3ffe, XPD -0x48a8,0x7c83,0x06e7,0xe5b9,0x3ffe, XPD -0xe111,0x2a94,0xdeec,0xe0cc,0x3ffe, XPD -0x3755,0xdaf2,0xb797,0xdbfb,0x3ffe, XPD -0x6af4,0xd69d,0xfcca,0xd744,0x3ffe, XPD -0xe45a,0xf12a,0x1d91,0xd2a8,0x3ffe, XPD -0x80e4,0x1f84,0x8c15,0xce24,0x3ffe, XPD -0x27a3,0x6e2f,0xbd86,0xc9b9,0x3ffe, XPD -0xdadd,0x5506,0x2a11,0xc567,0x3ffe, XPD -0x9456,0x6670,0x4cca,0xc12c,0x3ffe, XPD -0x36bf,0x580c,0xa39f,0xbd08,0x3ffe, XPD -0x9ee9,0x62fb,0xaf47,0xb8fb,0x3ffe, XPD -0x6484,0xf9de,0xf333,0xb504,0x3ffe, XPD -0x2590,0xd2ac,0xf581,0xb123,0x3ffe, XPD -0x4ac6,0x42a1,0x3eea,0xad58,0x3ffe, XPD -0x0ef8,0xea7c,0x5ab4,0xa9a1,0x3ffe, XPD -0x38ea,0xb151,0xd6a9,0xa5fe,0x3ffe, XPD -0x6819,0x0c49,0x4303,0xa270,0x3ffe, XPD -0x11ae,0x91a1,0x3260,0x9ef5,0x3ffe, XPD -0x5539,0xd54e,0x39b9,0x9b8d,0x3ffe, XPD -0xa96f,0x8db8,0xf051,0x9837,0x3ffe, XPD -0x0961,0xfef7,0xefa8,0x94f4,0x3ffe, XPD -0xc336,0xab11,0xd373,0x91c3,0x3ffe, XPD -0x53c0,0x45cd,0x398b,0x8ea4,0x3ffe, XPD -0xd6e7,0xea8b,0xc1e3,0x8b95,0x3ffe, XPD -0x8527,0x92da,0x0e80,0x8898,0x3ffe, XPD -0x7b15,0xcc48,0xc367,0x85aa,0x3ffe, XPD -0xa1d7,0xac2b,0x8698,0x82cd,0x3ffe, XPD -0x0000,0x0000,0x0000,0x8000,0x3ffe, XPD +static const uLD A[] = { +{ { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } }, +{ { 0x033a,0x722a,0xb2db,0xfa83,0x3ffe, XPD } }, +{ { 0xcc2c,0x2486,0x7d15,0xf525,0x3ffe, XPD } }, +{ { 0xf5cb,0xdcda,0xb99b,0xefe4,0x3ffe, XPD } }, +{ { 0x392f,0xdd24,0xc6e7,0xeac0,0x3ffe, XPD } }, +{ { 0x48a8,0x7c83,0x06e7,0xe5b9,0x3ffe, XPD } }, +{ { 0xe111,0x2a94,0xdeec,0xe0cc,0x3ffe, XPD } }, +{ { 0x3755,0xdaf2,0xb797,0xdbfb,0x3ffe, XPD } }, +{ { 0x6af4,0xd69d,0xfcca,0xd744,0x3ffe, XPD } }, +{ { 0xe45a,0xf12a,0x1d91,0xd2a8,0x3ffe, XPD } }, +{ { 0x80e4,0x1f84,0x8c15,0xce24,0x3ffe, XPD } }, +{ { 0x27a3,0x6e2f,0xbd86,0xc9b9,0x3ffe, XPD } }, +{ { 0xdadd,0x5506,0x2a11,0xc567,0x3ffe, XPD } }, +{ { 0x9456,0x6670,0x4cca,0xc12c,0x3ffe, XPD } }, +{ { 0x36bf,0x580c,0xa39f,0xbd08,0x3ffe, XPD } }, +{ { 0x9ee9,0x62fb,0xaf47,0xb8fb,0x3ffe, XPD } }, +{ { 0x6484,0xf9de,0xf333,0xb504,0x3ffe, XPD } }, +{ { 0x2590,0xd2ac,0xf581,0xb123,0x3ffe, XPD } }, +{ { 0x4ac6,0x42a1,0x3eea,0xad58,0x3ffe, XPD } }, +{ { 0x0ef8,0xea7c,0x5ab4,0xa9a1,0x3ffe, XPD } }, +{ { 0x38ea,0xb151,0xd6a9,0xa5fe,0x3ffe, XPD } }, +{ { 0x6819,0x0c49,0x4303,0xa270,0x3ffe, XPD } }, +{ { 0x11ae,0x91a1,0x3260,0x9ef5,0x3ffe, XPD } }, +{ { 0x5539,0xd54e,0x39b9,0x9b8d,0x3ffe, XPD } }, +{ { 0xa96f,0x8db8,0xf051,0x9837,0x3ffe, XPD } }, +{ { 0x0961,0xfef7,0xefa8,0x94f4,0x3ffe, XPD } }, +{ { 0xc336,0xab11,0xd373,0x91c3,0x3ffe, XPD } }, +{ { 0x53c0,0x45cd,0x398b,0x8ea4,0x3ffe, XPD } }, +{ { 0xd6e7,0xea8b,0xc1e3,0x8b95,0x3ffe, XPD } }, +{ { 0x8527,0x92da,0x0e80,0x8898,0x3ffe, XPD } }, +{ { 0x7b15,0xcc48,0xc367,0x85aa,0x3ffe, XPD } }, +{ { 0xa1d7,0xac2b,0x8698,0x82cd,0x3ffe, XPD } }, +{ { 0x0000,0x0000,0x0000,0x8000,0x3ffe, XPD } } }; -static const unsigned short B[] = { -0x0000,0x0000,0x0000,0x0000,0x0000, XPD -0x1f87,0xdb30,0x18f5,0xf73a,0x3fbd, XPD -0xac15,0x3e46,0x2932,0xbf4a,0xbfbc, XPD -0x7944,0xba66,0xa091,0xcb12,0x3fb9, XPD -0xff78,0x40b4,0x2ee6,0xe69a,0x3fbc, XPD -0xc895,0x5069,0xe383,0xee53,0xbfbb, XPD -0x7cde,0x9376,0x4325,0xf8ab,0x3fbc, XPD -0xa10c,0x25e0,0xc093,0xaefd,0xbfbd, XPD -0x7d3e,0xea95,0x1366,0xb2fb,0x3fbd, XPD -0x5d89,0xeb34,0x5191,0x9301,0x3fbd, XPD -0x80d9,0xb883,0xfb10,0xe5eb,0x3fbb, XPD -0x045d,0x288c,0xc1ec,0xbedd,0xbfbd, XPD -0xeded,0x5c85,0x4630,0x8d5a,0x3fbd, XPD -0x9d82,0xe5ac,0x8e0a,0xfd6d,0x3fba, XPD -0x6dfd,0xeb58,0xaf14,0x8373,0xbfb9, XPD -0xf938,0x7aac,0x91cf,0xe8da,0xbfbc, XPD -0x0000,0x0000,0x0000,0x0000,0x0000, XPD +static const uLD B[] = { +{ { 0x0000,0x0000,0x0000,0x0000,0x0000, XPD } }, +{ { 0x1f87,0xdb30,0x18f5,0xf73a,0x3fbd, XPD } }, +{ { 0xac15,0x3e46,0x2932,0xbf4a,0xbfbc, XPD } }, +{ { 0x7944,0xba66,0xa091,0xcb12,0x3fb9, XPD } }, +{ { 0xff78,0x40b4,0x2ee6,0xe69a,0x3fbc, XPD } }, +{ { 0xc895,0x5069,0xe383,0xee53,0xbfbb, XPD } }, +{ { 0x7cde,0x9376,0x4325,0xf8ab,0x3fbc, XPD } }, +{ { 0xa10c,0x25e0,0xc093,0xaefd,0xbfbd, XPD } }, +{ { 0x7d3e,0xea95,0x1366,0xb2fb,0x3fbd, XPD } }, +{ { 0x5d89,0xeb34,0x5191,0x9301,0x3fbd, XPD } }, +{ { 0x80d9,0xb883,0xfb10,0xe5eb,0x3fbb, XPD } }, +{ { 0x045d,0x288c,0xc1ec,0xbedd,0xbfbd, XPD } }, +{ { 0xeded,0x5c85,0x4630,0x8d5a,0x3fbd, XPD } }, +{ { 0x9d82,0xe5ac,0x8e0a,0xfd6d,0x3fba, XPD } }, +{ { 0x6dfd,0xeb58,0xaf14,0x8373,0xbfb9, XPD } }, +{ { 0xf938,0x7aac,0x91cf,0xe8da,0xbfbc, XPD } }, +{ { 0x0000,0x0000,0x0000,0x0000,0x0000, XPD } } }; -static const unsigned short R[] = { -0xa69b,0x530e,0xee1d,0xfd2a,0x3fee, XPD -0xc746,0x8e7e,0x5960,0xa182,0x3ff2, XPD -0x63b6,0xadda,0xfd6a,0xaec3,0x3ff5, XPD -0xc104,0xfd99,0x5b7c,0x9d95,0x3ff8, XPD -0xe05e,0x249d,0x46b8,0xe358,0x3ffa, XPD -0x5d1d,0x162c,0xeffc,0xf5fd,0x3ffc, XPD -0x79aa,0xd1cf,0x17f7,0xb172,0x3ffe, XPD +static const uLD R[] = { +{ { 0xa69b,0x530e,0xee1d,0xfd2a,0x3fee, XPD } }, +{ { 0xc746,0x8e7e,0x5960,0xa182,0x3ff2, XPD } }, +{ { 0x63b6,0xadda,0xfd6a,0xaec3,0x3ff5, XPD } }, +{ { 0xc104,0xfd99,0x5b7c,0x9d95,0x3ff8, XPD } }, +{ { 0xe05e,0x249d,0x46b8,0xe358,0x3ffa, XPD } }, +{ { 0x5d1d,0x162c,0xeffc,0xf5fd,0x3ffc, XPD } }, +{ { 0x79aa,0xd1cf,0x17f7,0xb172,0x3ffe, XPD } } }; /* 10 byte sizes versus 12 byte */ -#define douba(k) (*(long double *)(&A[(sizeof( long double )/2)*(k)])) -#define doubb(k) (*(long double *)(&B[(sizeof( long double )/2)*(k)])) +#define douba(k) (A[(k)].ld) +#define doubb(k) (B[(k)].ld) #define MEXP (NXT*16384.0L) #ifdef DENORMAL #define MNEXP (-NXT*(16384.0L+64.0L)) diff --git a/winsup/mingw/mingwex/math/sinhl.c b/winsup/mingw/mingwex/math/sinhl.c index ca6a370b9..18ac5daea 100644 --- a/winsup/mingw/mingwex/math/sinhl.c +++ b/winsup/mingw/mingwex/math/sinhl.c @@ -69,18 +69,18 @@ static long double Q[] = { #endif #ifdef IBMPC -static const unsigned short P[] = { -0xec6a,0xd942,0xfbb3,0xeb8f,0x3feb, XPD -0x365e,0xb30a,0xe437,0xda86,0x3ff3, XPD -0x8890,0x01f6,0x2612,0xfde6,0x3ff9, XPD -0x0000,0x0000,0x0000,0x8000,0x3fff, XPD +static const uLD P[] = { +{ { 0xec6a,0xd942,0xfbb3,0xeb8f,0x3feb, XPD } }, +{ { 0x365e,0xb30a,0xe437,0xda86,0x3ff3, XPD } }, +{ { 0x8890,0x01f6,0x2612,0xfde6,0x3ff9, XPD } }, +{ { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } } }; -static const unsigned short Q[] = { -0x4edd,0x4c21,0xad09,0x95ed,0x3fe5, XPD -0x4376,0x9b70,0xd605,0xc65c,0xbfed, XPD -0xc8ad,0x5d21,0x3069,0x8aed,0x3ff5, XPD -0x9c32,0x6374,0x2d4b,0xe98d,0xbffb, XPD -0x0000,0x0000,0x0000,0xc000,0x4001, XPD +static const uLD Q[] = { +{ { 0x4edd,0x4c21,0xad09,0x95ed,0x3fe5, XPD } }, +{ { 0x4376,0x9b70,0xd605,0xc65c,0xbfed, XPD } }, +{ { 0xc8ad,0x5d21,0x3069,0x8aed,0x3ff5, XPD } }, +{ { 0x9c32,0x6374,0x2d4b,0xe98d,0xbffb, XPD } }, +{ { 0x0000,0x0000,0x0000,0xc000,0x4001, XPD } } }; #endif diff --git a/winsup/mingw/mingwex/math/tanhl.c b/winsup/mingw/mingwex/math/tanhl.c index d5d86d0ae..a589e512b 100644 --- a/winsup/mingw/mingwex/math/tanhl.c +++ b/winsup/mingw/mingwex/math/tanhl.c @@ -68,17 +68,16 @@ static long double Q[] = { #endif #ifdef IBMPC -static unsigned short P[] = { -0xd2a4,0x1b0c,0x8f15,0x8f99,0xbff1, XPD -0x5959,0x9111,0x9cc7,0xf4e2,0xbffe, XPD -0xb576,0xef5e,0x6d57,0xa81b,0xc005, XPD -0xe3be,0xbfbd,0x5cbc,0xa381,0xc009, XPD +static uLD P[] = { +{ { 0xd2a4,0x1b0c,0x8f15,0x8f99,0xbff1, XPD } }, +{ { 0x5959,0x9111,0x9cc7,0xf4e2,0xbffe, XPD } }, +{ { 0xb576,0xef5e,0x6d57,0xa81b,0xc005, XPD } }, +{ { 0xe3be,0xbfbd,0x5cbc,0xa381,0xc009, XPD } } }; -static unsigned short Q[] = { -/*0x0000,0x0000,0x0000,0x8000,0x3fff,*/ -0x687f,0xce24,0xdd6c,0xc084,0x4005, XPD -0x3793,0xc95f,0xfa2f,0xe3b9,0x4009, XPD -0xd5a2,0x1f9c,0x0b1b,0xf542,0x400a, XPD +static uLD Q[] = { +{ { 0x687f,0xce24,0xdd6c,0xc084,0x4005, XPD } }, +{ { 0x3793,0xc95f,0xfa2f,0xe3b9,0x4009, XPD } }, +{ { 0xd5a2,0x1f9c,0x0b1b,0xf542,0x400a, XPD } } }; #endif diff --git a/winsup/mingw/mingwex/math/tgamma.c b/winsup/mingw/mingwex/math/tgamma.c index b48ac5cb2..2e60c9ef6 100644 --- a/winsup/mingw/mingwex/math/tgamma.c +++ b/winsup/mingw/mingwex/math/tgamma.c @@ -108,24 +108,24 @@ static const unsigned short Q[] = { #endif #ifdef IBMPC -static const unsigned short P[] = { -0x2153,0x3998,0xfcb8,0x3f24, -0xbfab,0xe686,0x84e3,0x3f53, -0x14b0,0xe9db,0x57cd,0x3f85, -0x23d3,0x18c4,0x63d9,0x3fa8, -0x7d31,0xdcae,0x8da9,0x3fca, -0xe312,0x3993,0xa137,0x3fdf, -0x0000,0x0000,0x0000,0x3ff0 +static const uD P[] = { +{ { 0x2153,0x3998,0xfcb8,0x3f24 } }, +{ { 0xbfab,0xe686,0x84e3,0x3f53 } }, +{ { 0x14b0,0xe9db,0x57cd,0x3f85 } }, +{ { 0x23d3,0x18c4,0x63d9,0x3fa8 } }, +{ { 0x7d31,0xdcae,0x8da9,0x3fca } }, +{ { 0xe312,0x3993,0xa137,0x3fdf } }, +{ { 0x0000,0x0000,0x0000,0x3ff0 } } }; -static const unsigned short Q[] = { -0xd3af,0x8400,0x487a,0xbef8, -0x2573,0x2915,0xae8a,0x3f41, -0xb44a,0xe750,0x40e4,0xbf72, -0xb117,0x5b1b,0x31ed,0x3f88, -0xde67,0xe33f,0x5779,0x3fa2, -0x87c2,0x9d42,0x071a,0xbfce, -0x3c51,0xc9cd,0x4944,0x3fb2, -0x0000,0x0000,0x0000,0x3ff0 +static const uD Q[] = { +{ { 0xd3af,0x8400,0x487a,0xbef8 } }, +{ { 0x2573,0x2915,0xae8a,0x3f41 } }, +{ { 0xb44a,0xe750,0x40e4,0xbf72 } }, +{ { 0xb117,0x5b1b,0x31ed,0x3f88 } }, +{ { 0xde67,0xe33f,0x5779,0x3fa2 } }, +{ { 0x87c2,0x9d42,0x071a,0xbfce } }, +{ { 0x3c51,0xc9cd,0x4944,0x3fb2 } }, +{ { 0x0000,0x0000,0x0000,0x3ff0 } } }; #define MAXGAM 171.624376956302725 #endif @@ -180,12 +180,12 @@ static const unsigned short SQT[4] = { #define SQTPI *(double *)SQT #endif #if IBMPC -static const unsigned short STIR[20] = { -0x7293,0x592d,0xcc72,0x3f49, -0x1d7c,0x27e6,0x166b,0xbf2e, -0x4fd7,0x07d4,0xf726,0xbf65, -0xc5fd,0x1b98,0x71c7,0x3f6c, -0x5986,0x5555,0x5555,0x3fb5, +static const uD STIR[] = { +{ { 0x7293,0x592d,0xcc72,0x3f49 } }, +{ { 0x1d7c,0x27e6,0x166b,0xbf2e } }, +{ { 0x4fd7,0x07d4,0xf726,0xbf65 } }, +{ { 0xc5fd,0x1b98,0x71c7,0x3f6c } }, +{ { 0x5986,0x5555,0x5555,0x3fb5 } } }; #define MAXSTIR 143.01608 diff --git a/winsup/mingw/mingwex/math/tgammal.c b/winsup/mingw/mingwex/math/tgammal.c index 6db4e3af7..f9fe285d4 100644 --- a/winsup/mingw/mingwex/math/tgammal.c +++ b/winsup/mingw/mingwex/math/tgammal.c @@ -88,26 +88,26 @@ static const long double Q[9] = { }; #endif #if IBMPC -static const unsigned short P[] = { -0x434a,0x3f22,0x2bda,0xb0b2,0x3ff0, XPD -0xf5aa,0xe82f,0x335b,0xee2e,0x3ff3, XPD -0xbe6c,0x3757,0xc717,0x861b,0x3ff7, XPD -0x7f43,0x5196,0xb166,0xc368,0x3ff9, XPD -0x9549,0x8eb5,0x8c3a,0xe3f4,0x3ffb, XPD -0x8d75,0x23af,0xc8e4,0xb9d4,0x3ffd, XPD -0x29cf,0x19b3,0x16c8,0xd67a,0x3ffe, XPD -0x0000,0x0000,0x0000,0x8000,0x3fff, XPD +static const uLD P[] = { +{ { 0x434a,0x3f22,0x2bda,0xb0b2,0x3ff0, XPD } }, +{ { 0xf5aa,0xe82f,0x335b,0xee2e,0x3ff3, XPD } }, +{ { 0xbe6c,0x3757,0xc717,0x861b,0x3ff7, XPD } }, +{ { 0x7f43,0x5196,0xb166,0xc368,0x3ff9, XPD } }, +{ { 0x9549,0x8eb5,0x8c3a,0xe3f4,0x3ffb, XPD } }, +{ { 0x8d75,0x23af,0xc8e4,0xb9d4,0x3ffd, XPD } }, +{ { 0x29cf,0x19b3,0x16c8,0xd67a,0x3ffe, XPD } }, +{ { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } } }; -static const unsigned short Q[] = { -0x5473,0x2de8,0x1268,0xea67,0xbfee, XPD -0x334b,0xc2f0,0xa2dd,0xf60e,0x3ff2, XPD -0xbeed,0x1853,0xa691,0xa23d,0xbff5, XPD -0x296e,0x7cb1,0x5dfd,0xd08f,0xbff4, XPD -0x0417,0x7989,0xd7bc,0xe338,0x3ff9, XPD -0x3295,0x3698,0xd580,0xbdcd,0xbffa, XPD -0x75ef,0x3ab7,0x4ad3,0xe5bc,0xbffc, XPD -0xe458,0x2ec7,0xfd57,0xd47c,0x3ffd, XPD -0x0000,0x0000,0x0000,0x8000,0x3fff, XPD +static const uLD Q[] = { +{ { 0x5473,0x2de8,0x1268,0xea67,0xbfee, XPD } }, +{ { 0x334b,0xc2f0,0xa2dd,0xf60e,0x3ff2, XPD } }, +{ { 0xbeed,0x1853,0xa691,0xa23d,0xbff5, XPD } }, +{ { 0x296e,0x7cb1,0x5dfd,0xd08f,0xbff4, XPD } }, +{ { 0x0417,0x7989,0xd7bc,0xe338,0x3ff9, XPD } }, +{ { 0x3295,0x3698,0xd580,0xbdcd,0xbffa, XPD } }, +{ { 0x75ef,0x3ab7,0x4ad3,0xe5bc,0xbffc, XPD } }, +{ { 0xe458,0x2ec7,0xfd57,0xd47c,0x3ffd, XPD } }, +{ { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } } }; #endif #if MIEEE @@ -182,16 +182,16 @@ static const long double STIR[9] = { }; #endif #if IBMPC -static const unsigned short STIR[] = { -0x6ede,0x69f7,0x54e3,0xbb5d,0x3ff4, XPD -0xc395,0x0295,0x4443,0xc64b,0xbfef, XPD -0xba6f,0x7c59,0x5e47,0x9bfb,0xbff4, XPD -0x5704,0x1a39,0xb11d,0x9293,0x3ff1, XPD -0x30b7,0x1a21,0x98b2,0xcd87,0x3ff4, XPD -0xbef3,0x7023,0x6a08,0xf09e,0xbff2, XPD -0x3a1c,0x5ac8,0x3478,0xafb9,0xbff6, XPD -0xc3c9,0x906e,0x38e3,0xe38e,0x3ff6, XPD -0xa1d5,0xaaaa,0xaaaa,0xaaaa,0x3ffb, XPD +static const uLD STIR[] = { +{ { 0x6ede,0x69f7,0x54e3,0xbb5d,0x3ff4, XPD } }, +{ { 0xc395,0x0295,0x4443,0xc64b,0xbfef, XPD } }, +{ { 0xba6f,0x7c59,0x5e47,0x9bfb,0xbff4, XPD } }, +{ { 0x5704,0x1a39,0xb11d,0x9293,0x3ff1, XPD } }, +{ { 0x30b7,0x1a21,0x98b2,0xcd87,0x3ff4, XPD } }, +{ { 0xbef3,0x7023,0x6a08,0xf09e,0xbff2, XPD } }, +{ { 0x3a1c,0x5ac8,0x3478,0xafb9,0xbff6, XPD } }, +{ { 0xc3c9,0x906e,0x38e3,0xe38e,0x3ff6, XPD } }, +{ { 0xa1d5,0xaaaa,0xaaaa,0xaaaa,0x3ffb, XPD } } }; #endif #if MIEEE @@ -229,16 +229,16 @@ static const long double S[9] = { }; #endif #if IBMPC -static const unsigned short S[] = { -0xbaeb,0xd6d3,0x25e5,0x9c7e,0xbff5, XPD -0xfe9a,0xceb4,0xc74e,0xec9a,0x3ff7, XPD -0x9225,0xdfef,0xb0e9,0x9da5,0xbff8, XPD -0x10b0,0xec17,0x87dc,0xacd7,0xbffa, XPD -0x6b8d,0x7515,0x1905,0xaa89,0x3ffc, XPD -0xf183,0x126b,0xf47d,0xac0a,0xbffa, XPD -0x7bf6,0x57d1,0xa013,0xa7e7,0xbffe, XPD -0xc7a9,0x7db0,0x67e3,0x93c4,0x3ffe, XPD -0x0000,0x0000,0x0000,0x8000,0x3fff, XPD +static const uLD S[] = { +{ { 0xbaeb,0xd6d3,0x25e5,0x9c7e,0xbff5, XPD } }, +{ { 0xfe9a,0xceb4,0xc74e,0xec9a,0x3ff7, XPD } }, +{ { 0x9225,0xdfef,0xb0e9,0x9da5,0xbff8, XPD } }, +{ { 0x10b0,0xec17,0x87dc,0xacd7,0xbffa, XPD } }, +{ { 0x6b8d,0x7515,0x1905,0xaa89,0x3ffc, XPD } }, +{ { 0xf183,0x126b,0xf47d,0xac0a,0xbffa, XPD } }, +{ { 0x7bf6,0x57d1,0xa013,0xa7e7,0xbffe, XPD } }, +{ { 0xc7a9,0x7db0,0x67e3,0x93c4,0x3ffe, XPD } }, +{ { 0x0000,0x0000,0x0000,0x8000,0x3fff, XPD } } }; #endif #if MIEEE @@ -274,16 +274,16 @@ static const long double SN[9] = { }; #endif #if IBMPC -static const unsigned short SN[] = { -0x5dd1,0x02de,0xb9f7,0x948d,0x3ff5, XPD -0x989b,0xdd68,0xc5f1,0xec9c,0x3ff7, XPD -0x2ca1,0x18f0,0x386f,0x9da5,0x3ff8, XPD -0x783f,0x41dd,0x87d1,0xacd7,0xbffa, XPD -0x7a5b,0xd76d,0x1905,0xaa89,0xbffc, XPD -0x7f64,0x1234,0xf47d,0xac0a,0xbffa, XPD -0x5e26,0x57d1,0xa013,0xa7e7,0x3ffe, XPD -0xc7aa,0x7db0,0x67e3,0x93c4,0x3ffe, XPD -0x0000,0x0000,0x0000,0x8000,0xbfff, XPD +static const uLD SN[] = { +{ { 0x5dd1,0x02de,0xb9f7,0x948d,0x3ff5, XPD } }, +{ { 0x989b,0xdd68,0xc5f1,0xec9c,0x3ff7, XPD } }, +{ { 0x2ca1,0x18f0,0x386f,0x9da5,0x3ff8, XPD } }, +{ { 0x783f,0x41dd,0x87d1,0xacd7,0xbffa, XPD } }, +{ { 0x7a5b,0xd76d,0x1905,0xaa89,0xbffc, XPD } }, +{ { 0x7f64,0x1234,0xf47d,0xac0a,0xbffa, XPD } }, +{ { 0x5e26,0x57d1,0xa013,0xa7e7,0x3ffe, XPD } }, +{ { 0xc7aa,0x7db0,0x67e3,0x93c4,0x3ffe, XPD } }, +{ { 0x0000,0x0000,0x0000,0x8000,0xbfff, XPD } } }; #endif #if MIEEE |