/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2011 Nexenta Systems, Inc. All rights reserved.
*/
/*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
! i = [0,63]
!
TBL[
2*i ] =
1 / (*(
double*)&(
0x3fe0000000000000ULL + (i <<
46))) *
2**-
24;
!
TBL[
2*i+
1] =
1 /
sqrtl(*(
double*)&(
0x3fe0000000000000ULL + (i <<
46)));
! i = [64,127]
!
TBL[
2*i ] =
1 / (*(
double*)&(
0x3fe0000000000000ULL + (i <<
46))) *
2**-
23;
!
TBL[
2*i+
1] =
1 /
sqrtl(*(
double*)&(
0x3fe0000000000000ULL + (i <<
46)));
.
word 0x3e800000,
0x00000000,
0x3ff6a09e,
0x667f3bcd,
.
word 0x3e7f81f8,
0x1f81f820,
0x3ff673e3,
0x2ef63a03,
.
word 0x3e7f07c1,
0xf07c1f08,
0x3ff6482d,
0x37a5a3d2,
.
word 0x3e7e9131,
0xabf0b767,
0x3ff61d72,
0xb7978671,
.
word 0x3e7e1e1e,
0x1e1e1e1e,
0x3ff5f3aa,
0x673fa911,
.
word 0x3e7dae60,
0x76b981db,
0x3ff5cacb,
0x7802f342,
.
word 0x3e7d41d4,
0x1d41d41d,
0x3ff5a2cd,
0x8c69d61a,
.
word 0x3e7cd856,
0x89039b0b,
0x3ff57ba8,
0xb0ee01b9,
.
word 0x3e7c71c7,
0x1c71c71c,
0x3ff55555,
0x55555555,
.
word 0x3e7c0e07,
0x0381c0e0,
0x3ff52fcc,
0x468d6b54,
.
word 0x3e7bacf9,
0x14c1bad0,
0x3ff50b06,
0xa8fc6b70,
.
word 0x3e7b4e81,
0xb4e81b4f,
0x3ff4e6fd,
0xf33cf032,
.
word 0x3e7af286,
0xbca1af28,
0x3ff4c3ab,
0xe93bcf74,
.
word 0x3e7a98ef,
0x606a63be,
0x3ff4a10a,
0x97af7b92,
.
word 0x3e7a41a4,
0x1a41a41a,
0x3ff47f14,
0x4fe17f9f,
.
word 0x3e79ec8e,
0x951033d9,
0x3ff45dc3,
0xa3c34fa3,
.
word 0x3e799999,
0x9999999a,
0x3ff43d13,
0x6248490f,
.
word 0x3e7948b0,
0xfcd6e9e0,
0x3ff41cfe,
0x93ff5199,
.
word 0x3e78f9c1,
0x8f9c18fa,
0x3ff3fd80,
0x77e70577,
.
word 0x3e78acb9,
0x0f6bf3aa,
0x3ff3de94,
0x8077db58,
.
word 0x3e786186,
0x18618618,
0x3ff3c036,
0x50e00e03,
.
word 0x3e781818,
0x18181818,
0x3ff3a261,
0xba6d7a37,
.
word 0x3e77d05f,
0x417d05f4,
0x3ff38512,
0xba21f51e,
.
word 0x3e778a4c,
0x8178a4c8,
0x3ff36845,
0x766eec92,
.
word 0x3e7745d1,
0x745d1746,
0x3ff34bf6,
0x3d156826,
.
word 0x3e7702e0,
0x5c0b8170,
0x3ff33021,
0x8127c0e0,
.
word 0x3e76c16c,
0x16c16c17,
0x3ff314c3,
0xd92a9e91,
.
word 0x3e768168,
0x16816817,
0x3ff2f9d9,
0xfd52fd50,
.
word 0x3e7642c8,
0x590b2164,
0x3ff2df60,
0xc5df2c9e,
.
word 0x3e760581,
0x60581606,
0x3ff2c555,
0x2988e428,
.
word 0x3e75c988,
0x2b931057,
0x3ff2abb4,
0x3c0eb0f4,
.
word 0x3e758ed2,
0x308158ed,
0x3ff2927b,
0x2cd320f5,
.
word 0x3e755555,
0x55555555,
0x3ff279a7,
0x4590331c,
.
word 0x3e751d07,
0xeae2f815,
0x3ff26135,
0xe91daf55,
.
word 0x3e74e5e0,
0xa72f0539,
0x3ff24924,
0x92492492,
.
word 0x3e74afd6,
0xa052bf5b,
0x3ff23170,
0xd2be638a,
.
word 0x3e747ae1,
0x47ae147b,
0x3ff21a18,
0x51ff630a,
.
word 0x3e7446f8,
0x6562d9fb,
0x3ff20318,
0xcc6a8f5d,
.
word 0x3e741414,
0x14141414,
0x3ff1ec70,
0x124e98f9,
.
word 0x3e73e22c,
0xbce4a902,
0x3ff1d61c,
0x070ae7d3,
.
word 0x3e73b13b,
0x13b13b14,
0x3ff1c01a,
0xa03be896,
.
word 0x3e738138,
0x13813814,
0x3ff1aa69,
0xe4f2777f,
.
word 0x3e73521c,
0xfb2b78c1,
0x3ff19507,
0xecf5b9e9,
.
word 0x3e7323e3,
0x4a2b10bf,
0x3ff17ff2,
0xe00ec3ee,
.
word 0x3e72f684,
0xbda12f68,
0x3ff16b28,
0xf55d72d4,
.
word 0x3e72c9fb,
0x4d812ca0,
0x3ff156a8,
0x72b5ef62,
.
word 0x3e729e41,
0x29e4129e,
0x3ff1426f,
0xac0654db,
.
word 0x3e727350,
0xb8812735,
0x3ff12e7d,
0x02c40253,
.
word 0x3e724924,
0x92492492,
0x3ff11ace,
0xe560242a,
.
word 0x3e721fb7,
0x8121fb78,
0x3ff10763,
0xcec30b26,
.
word 0x3e71f704,
0x7dc11f70,
0x3ff0f43a,
0x45cdedad,
.
word 0x3e71cf06,
0xada2811d,
0x3ff0e150,
0xdce2b60c,
.
word 0x3e71a7b9,
0x611a7b96,
0x3ff0cea6,
0x317186dc,
.
word 0x3e718118,
0x11811812,
0x3ff0bc38,
0xeb8ba412,
.
word 0x3e715b1e,
0x5f75270d,
0x3ff0aa07,
0xbd7b7488,
.
word 0x3e7135c8,
0x1135c811,
0x3ff09811,
0x63615499,
.
word 0x3e711111,
0x11111111,
0x3ff08654,
0xa2d4f6db,
.
word 0x3e70ecf5,
0x6be69c90,
0x3ff074d0,
0x4a8b1438,
.
word 0x3e70c971,
0x4fbcda3b,
0x3ff06383,
0x31ff307a,
.
word 0x3e70a681,
0x0a6810a7,
0x3ff0526c,
0x39213bfa,
.
word 0x3e708421,
0x08421084,
0x3ff0418a,
0x4806de7d,
.
word 0x3e70624d,
0xd2f1a9fc,
0x3ff030dc,
0x4ea03a72,
.
word 0x3e704104,
0x10410410,
0x3ff02061,
0x446ffa9a,
.
word 0x3e702040,
0x81020408,
0x3ff01018,
0x28467ee9,
.
word 0x3e800000,
0x00000000,
0x3ff00000,
0x00000000,
.
word 0x3e7f81f8,
0x1f81f820,
0x3fefc0bd,
0x88a0f1d9,
.
word 0x3e7f07c1,
0xf07c1f08,
0x3fef82ec,
0x882c0f9b,
.
word 0x3e7e9131,
0xabf0b767,
0x3fef467f,
0x2814b0cc,
.
word 0x3e7e1e1e,
0x1e1e1e1e,
0x3fef0b68,
0x48d2af1c,
.
word 0x3e7dae60,
0x76b981db,
0x3feed19b,
0x75e78957,
.
word 0x3e7d41d4,
0x1d41d41d,
0x3fee990c,
0xdad55ed2,
.
word 0x3e7cd856,
0x89039b0b,
0x3fee61b1,
0x38f18adc,
.
word 0x3e7c71c7,
0x1c71c71c,
0x3fee2b7d,
0xddfefa66,
.
word 0x3e7c0e07,
0x0381c0e0,
0x3fedf668,
0x9b7e6350,
.
word 0x3e7bacf9,
0x14c1bad0,
0x3fedc267,
0xbea45549,
.
word 0x3e7b4e81,
0xb4e81b4f,
0x3fed8f72,
0x08e6b82d,
.
word 0x3e7af286,
0xbca1af28,
0x3fed5d7e,
0xa914b937,
.
word 0x3e7a98ef,
0x606a63be,
0x3fed2c85,
0x34ed6d86,
.
word 0x3e7a41a4,
0x1a41a41a,
0x3fecfc7d,
0xa32a9213,
.
word 0x3e79ec8e,
0x951033d9,
0x3feccd60,
0x45f5d358,
.
word 0x3e799999,
0x9999999a,
0x3fec9f25,
0xc5bfedd9,
.
word 0x3e7948b0,
0xfcd6e9e0,
0x3fec71c7,
0x1c71c71c,
.
word 0x3e78f9c1,
0x8f9c18fa,
0x3fec453d,
0x90f057a2,
.
word 0x3e78acb9,
0x0f6bf3aa,
0x3fec1982,
0xb2ece47b,
.
word 0x3e786186,
0x18618618,
0x3febee90,
0x56fb9c39,
.
word 0x3e781818,
0x18181818,
0x3febc460,
0x92eb3118,
.
word 0x3e77d05f,
0x417d05f4,
0x3feb9aed,
0xba588347,
.
word 0x3e778a4c,
0x8178a4c8,
0x3feb7232,
0x5b79db11,
.
word 0x3e7745d1,
0x745d1746,
0x3feb4a29,
0x3c1d9550,
.
word 0x3e7702e0,
0x5c0b8170,
0x3feb22cd,
0x56d87d7e,
.
word 0x3e76c16c,
0x16c16c17,
0x3feafc19,
0xd8606169,
.
word 0x3e768168,
0x16816817,
0x3fead60a,
0x1d0fb394,
.
word 0x3e7642c8,
0x590b2164,
0x3feab099,
0xae8f539a,
.
word 0x3e760581,
0x60581606,
0x3fea8bc4,
0x41a3d02c,
.
word 0x3e75c988,
0x2b931057,
0x3fea6785,
0xb41bacf7,
.
word 0x3e758ed2,
0x308158ed,
0x3fea43da,
0x0adc6899,
.
word 0x3e755555,
0x55555555,
0x3fea20bd,
0x700c2c3e,
.
word 0x3e751d07,
0xeae2f815,
0x3fe9fe2c,
0x315637ee,
.
word 0x3e74e5e0,
0xa72f0539,
0x3fe9dc22,
0xbe484458,
.
word 0x3e74afd6,
0xa052bf5b,
0x3fe9ba9d,
0xa6c73588,
.
word 0x3e747ae1,
0x47ae147b,
0x3fe99999,
0x9999999a,
.
word 0x3e7446f8,
0x6562d9fb,
0x3fe97913,
0x63068b54,
.
word 0x3e741414,
0x14141414,
0x3fe95907,
0xeb87ab44,
.
word 0x3e73e22c,
0xbce4a902,
0x3fe93974,
0x368cfa31,
.
word 0x3e73b13b,
0x13b13b14,
0x3fe91a55,
0x6151761c,
.
word 0x3e738138,
0x13813814,
0x3fe8fba8,
0xa1bf6f96,
.
word 0x3e73521c,
0xfb2b78c1,
0x3fe8dd6b,
0x4563a009,
.
word 0x3e7323e3,
0x4a2b10bf,
0x3fe8bf9a,
0xb06e1af3,
.
word 0x3e72f684,
0xbda12f68,
0x3fe8a234,
0x5cc04426,
.
word 0x3e72c9fb,
0x4d812ca0,
0x3fe88535,
0xd90703c6,
.
word 0x3e729e41,
0x29e4129e,
0x3fe8689c,
0xc7e07e7d,
.
word 0x3e727350,
0xb8812735,
0x3fe84c66,
0xdf0ca4c2,
.
word 0x3e724924,
0x92492492,
0x3fe83091,
0xe6a7f7e7,
.
word 0x3e721fb7,
0x8121fb78,
0x3fe8151b,
0xb86fee1d,
.
word 0x3e71f704,
0x7dc11f70,
0x3fe7fa02,
0x3f1068d1,
.
word 0x3e71cf06,
0xada2811d,
0x3fe7df43,
0x7579b9b5,
.
word 0x3e71a7b9,
0x611a7b96,
0x3fe7c4dd,
0x663ebb88,
.
word 0x3e718118,
0x11811812,
0x3fe7aace,
0x2afa8b72,
.
word 0x3e715b1e,
0x5f75270d,
0x3fe79113,
0xebbd7729,
.
word 0x3e7135c8,
0x1135c811,
0x3fe777ac,
0xde80baea,
.
word 0x3e711111,
0x11111111,
0x3fe75e97,
0x46a0b098,
.
word 0x3e70ecf5,
0x6be69c90,
0x3fe745d1,
0x745d1746,
.
word 0x3e70c971,
0x4fbcda3b,
0x3fe72d59,
0xc45f1fc5,
.
word 0x3e70a681,
0x0a6810a7,
0x3fe7152e,
0x9f44f01f,
.
word 0x3e708421,
0x08421084,
0x3fe6fd4e,
0x79325467,
.
word 0x3e70624d,
0xd2f1a9fc,
0x3fe6e5b7,
0xd16657e1,
.
word 0x3e704104,
0x10410410,
0x3fe6ce69,
0x31d5858d,
.
word 0x3e702040,
0x81020408,
0x3fe6b761,
0x2ec892f6,
.
word 0x3fefffff,
0xfee7f18f !
K0 =
9.99999997962321453275e-01 .
word 0xbfdfffff,
0xfe07e52f !
K1 = -
4.99999998166077580600e-01 .
word 0x3fd80118,
0x0ca296d9 !
K2 =
3.75066768969515586277e-01 .
word 0xbfd400fc,
0x0bbb8e78 !
K3 = -
3.12560092408808548438e-01
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!
!
!
if (
ax0 >=
0x7f800000 )
! {
! }
!
if (
ax0 <
0x00800000 )
! {
!
!
if ( (
ax0 &
0x7fffffff) == 0 )
/* |X| = zero */! {
! }
!
else if (
ax0 >= 0 )
/* X = denormal */! {
!
!
!
!
! }
! else /* X = negative */
! {
! }
! }
!
if (
ax1 >=
0x7f800000 )
! {
! }
!
if (
ax1 <
0x00800000 )
! {
!
if ( (
ax0 &
0x7fffffff) == 0 )
/* |X| = zero */! {
! }
!
else if (
ax0 >= 0 )
/* X = denormal */! {
!
!
!
!
! }
! else /* X = negative */
! {
! }
! }
!
!
!
!
!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1:
1:
1:
1:
1:
1:
1:
1:
1:
1:
1:
1: