/*
* 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+0] =
1.0 / (*(
double*)&(
0x3ff0000000000000LL + (i <<
46)));
!
TBL[
2*i+
1] = (
double)(
0.5/
sqrtl(
2) /
sqrtl(*(
double*)&(
0x3ff0000000000000LL + (i <<
46))));
!
TBL[
128+
2*i+0] =
1.0 / (*(
double*)&(
0x3ff0000000000000LL + (i <<
46)));
!
TBL[
128+
2*i+
1] = (
double)(
0.25 /
sqrtl(*(
double*)&(
0x3ff0000000000000LL + (i <<
46))));
.
word 0x3ff00000,
0x00000000,
0x3fd6a09e,
0x667f3bcd,
.
word 0x3fef81f8,
0x1f81f820,
0x3fd673e3,
0x2ef63a03,
.
word 0x3fef07c1,
0xf07c1f08,
0x3fd6482d,
0x37a5a3d2,
.
word 0x3fee9131,
0xabf0b767,
0x3fd61d72,
0xb7978671,
.
word 0x3fee1e1e,
0x1e1e1e1e,
0x3fd5f3aa,
0x673fa911,
.
word 0x3fedae60,
0x76b981db,
0x3fd5cacb,
0x7802f342,
.
word 0x3fed41d4,
0x1d41d41d,
0x3fd5a2cd,
0x8c69d61a,
.
word 0x3fecd856,
0x89039b0b,
0x3fd57ba8,
0xb0ee01b9,
.
word 0x3fec71c7,
0x1c71c71c,
0x3fd55555,
0x55555555,
.
word 0x3fec0e07,
0x0381c0e0,
0x3fd52fcc,
0x468d6b54,
.
word 0x3febacf9,
0x14c1bad0,
0x3fd50b06,
0xa8fc6b70,
.
word 0x3feb4e81,
0xb4e81b4f,
0x3fd4e6fd,
0xf33cf032,
.
word 0x3feaf286,
0xbca1af28,
0x3fd4c3ab,
0xe93bcf74,
.
word 0x3fea98ef,
0x606a63be,
0x3fd4a10a,
0x97af7b92,
.
word 0x3fea41a4,
0x1a41a41a,
0x3fd47f14,
0x4fe17f9f,
.
word 0x3fe9ec8e,
0x951033d9,
0x3fd45dc3,
0xa3c34fa3,
.
word 0x3fe99999,
0x9999999a,
0x3fd43d13,
0x6248490f,
.
word 0x3fe948b0,
0xfcd6e9e0,
0x3fd41cfe,
0x93ff5199,
.
word 0x3fe8f9c1,
0x8f9c18fa,
0x3fd3fd80,
0x77e70577,
.
word 0x3fe8acb9,
0x0f6bf3aa,
0x3fd3de94,
0x8077db58,
.
word 0x3fe86186,
0x18618618,
0x3fd3c036,
0x50e00e03,
.
word 0x3fe81818,
0x18181818,
0x3fd3a261,
0xba6d7a37,
.
word 0x3fe7d05f,
0x417d05f4,
0x3fd38512,
0xba21f51e,
.
word 0x3fe78a4c,
0x8178a4c8,
0x3fd36845,
0x766eec92,
.
word 0x3fe745d1,
0x745d1746,
0x3fd34bf6,
0x3d156826,
.
word 0x3fe702e0,
0x5c0b8170,
0x3fd33021,
0x8127c0e0,
.
word 0x3fe6c16c,
0x16c16c17,
0x3fd314c3,
0xd92a9e91,
.
word 0x3fe68168,
0x16816817,
0x3fd2f9d9,
0xfd52fd50,
.
word 0x3fe642c8,
0x590b2164,
0x3fd2df60,
0xc5df2c9e,
.
word 0x3fe60581,
0x60581606,
0x3fd2c555,
0x2988e428,
.
word 0x3fe5c988,
0x2b931057,
0x3fd2abb4,
0x3c0eb0f4,
.
word 0x3fe58ed2,
0x308158ed,
0x3fd2927b,
0x2cd320f5,
.
word 0x3fe55555,
0x55555555,
0x3fd279a7,
0x4590331c,
.
word 0x3fe51d07,
0xeae2f815,
0x3fd26135,
0xe91daf55,
.
word 0x3fe4e5e0,
0xa72f0539,
0x3fd24924,
0x92492492,
.
word 0x3fe4afd6,
0xa052bf5b,
0x3fd23170,
0xd2be638a,
.
word 0x3fe47ae1,
0x47ae147b,
0x3fd21a18,
0x51ff630a,
.
word 0x3fe446f8,
0x6562d9fb,
0x3fd20318,
0xcc6a8f5d,
.
word 0x3fe41414,
0x14141414,
0x3fd1ec70,
0x124e98f9,
.
word 0x3fe3e22c,
0xbce4a902,
0x3fd1d61c,
0x070ae7d3,
.
word 0x3fe3b13b,
0x13b13b14,
0x3fd1c01a,
0xa03be896,
.
word 0x3fe38138,
0x13813814,
0x3fd1aa69,
0xe4f2777f,
.
word 0x3fe3521c,
0xfb2b78c1,
0x3fd19507,
0xecf5b9e9,
.
word 0x3fe323e3,
0x4a2b10bf,
0x3fd17ff2,
0xe00ec3ee,
.
word 0x3fe2f684,
0xbda12f68,
0x3fd16b28,
0xf55d72d4,
.
word 0x3fe2c9fb,
0x4d812ca0,
0x3fd156a8,
0x72b5ef62,
.
word 0x3fe29e41,
0x29e4129e,
0x3fd1426f,
0xac0654db,
.
word 0x3fe27350,
0xb8812735,
0x3fd12e7d,
0x02c40253,
.
word 0x3fe24924,
0x92492492,
0x3fd11ace,
0xe560242a,
.
word 0x3fe21fb7,
0x8121fb78,
0x3fd10763,
0xcec30b26,
.
word 0x3fe1f704,
0x7dc11f70,
0x3fd0f43a,
0x45cdedad,
.
word 0x3fe1cf06,
0xada2811d,
0x3fd0e150,
0xdce2b60c,
.
word 0x3fe1a7b9,
0x611a7b96,
0x3fd0cea6,
0x317186dc,
.
word 0x3fe18118,
0x11811812,
0x3fd0bc38,
0xeb8ba412,
.
word 0x3fe15b1e,
0x5f75270d,
0x3fd0aa07,
0xbd7b7488,
.
word 0x3fe135c8,
0x1135c811,
0x3fd09811,
0x63615499,
.
word 0x3fe11111,
0x11111111,
0x3fd08654,
0xa2d4f6db,
.
word 0x3fe0ecf5,
0x6be69c90,
0x3fd074d0,
0x4a8b1438,
.
word 0x3fe0c971,
0x4fbcda3b,
0x3fd06383,
0x31ff307a,
.
word 0x3fe0a681,
0x0a6810a7,
0x3fd0526c,
0x39213bfa,
.
word 0x3fe08421,
0x08421084,
0x3fd0418a,
0x4806de7d,
.
word 0x3fe0624d,
0xd2f1a9fc,
0x3fd030dc,
0x4ea03a72,
.
word 0x3fe04104,
0x10410410,
0x3fd02061,
0x446ffa9a,
.
word 0x3fe02040,
0x81020408,
0x3fd01018,
0x28467ee9,
.
word 0x3ff00000,
0x00000000,
0x3fd00000,
0x00000000,
.
word 0x3fef81f8,
0x1f81f820,
0x3fcfc0bd,
0x88a0f1d9,
.
word 0x3fef07c1,
0xf07c1f08,
0x3fcf82ec,
0x882c0f9b,
.
word 0x3fee9131,
0xabf0b767,
0x3fcf467f,
0x2814b0cc,
.
word 0x3fee1e1e,
0x1e1e1e1e,
0x3fcf0b68,
0x48d2af1c,
.
word 0x3fedae60,
0x76b981db,
0x3fced19b,
0x75e78957,
.
word 0x3fed41d4,
0x1d41d41d,
0x3fce990c,
0xdad55ed2,
.
word 0x3fecd856,
0x89039b0b,
0x3fce61b1,
0x38f18adc,
.
word 0x3fec71c7,
0x1c71c71c,
0x3fce2b7d,
0xddfefa66,
.
word 0x3fec0e07,
0x0381c0e0,
0x3fcdf668,
0x9b7e6350,
.
word 0x3febacf9,
0x14c1bad0,
0x3fcdc267,
0xbea45549,
.
word 0x3feb4e81,
0xb4e81b4f,
0x3fcd8f72,
0x08e6b82d,
.
word 0x3feaf286,
0xbca1af28,
0x3fcd5d7e,
0xa914b937,
.
word 0x3fea98ef,
0x606a63be,
0x3fcd2c85,
0x34ed6d86,
.
word 0x3fea41a4,
0x1a41a41a,
0x3fccfc7d,
0xa32a9213,
.
word 0x3fe9ec8e,
0x951033d9,
0x3fcccd60,
0x45f5d358,
.
word 0x3fe99999,
0x9999999a,
0x3fcc9f25,
0xc5bfedd9,
.
word 0x3fe948b0,
0xfcd6e9e0,
0x3fcc71c7,
0x1c71c71c,
.
word 0x3fe8f9c1,
0x8f9c18fa,
0x3fcc453d,
0x90f057a2,
.
word 0x3fe8acb9,
0x0f6bf3aa,
0x3fcc1982,
0xb2ece47b,
.
word 0x3fe86186,
0x18618618,
0x3fcbee90,
0x56fb9c39,
.
word 0x3fe81818,
0x18181818,
0x3fcbc460,
0x92eb3118,
.
word 0x3fe7d05f,
0x417d05f4,
0x3fcb9aed,
0xba588347,
.
word 0x3fe78a4c,
0x8178a4c8,
0x3fcb7232,
0x5b79db11,
.
word 0x3fe745d1,
0x745d1746,
0x3fcb4a29,
0x3c1d9550,
.
word 0x3fe702e0,
0x5c0b8170,
0x3fcb22cd,
0x56d87d7e,
.
word 0x3fe6c16c,
0x16c16c17,
0x3fcafc19,
0xd8606169,
.
word 0x3fe68168,
0x16816817,
0x3fcad60a,
0x1d0fb394,
.
word 0x3fe642c8,
0x590b2164,
0x3fcab099,
0xae8f539a,
.
word 0x3fe60581,
0x60581606,
0x3fca8bc4,
0x41a3d02c,
.
word 0x3fe5c988,
0x2b931057,
0x3fca6785,
0xb41bacf7,
.
word 0x3fe58ed2,
0x308158ed,
0x3fca43da,
0x0adc6899,
.
word 0x3fe55555,
0x55555555,
0x3fca20bd,
0x700c2c3e,
.
word 0x3fe51d07,
0xeae2f815,
0x3fc9fe2c,
0x315637ee,
.
word 0x3fe4e5e0,
0xa72f0539,
0x3fc9dc22,
0xbe484458,
.
word 0x3fe4afd6,
0xa052bf5b,
0x3fc9ba9d,
0xa6c73588,
.
word 0x3fe47ae1,
0x47ae147b,
0x3fc99999,
0x9999999a,
.
word 0x3fe446f8,
0x6562d9fb,
0x3fc97913,
0x63068b54,
.
word 0x3fe41414,
0x14141414,
0x3fc95907,
0xeb87ab44,
.
word 0x3fe3e22c,
0xbce4a902,
0x3fc93974,
0x368cfa31,
.
word 0x3fe3b13b,
0x13b13b14,
0x3fc91a55,
0x6151761c,
.
word 0x3fe38138,
0x13813814,
0x3fc8fba8,
0xa1bf6f96,
.
word 0x3fe3521c,
0xfb2b78c1,
0x3fc8dd6b,
0x4563a009,
.
word 0x3fe323e3,
0x4a2b10bf,
0x3fc8bf9a,
0xb06e1af3,
.
word 0x3fe2f684,
0xbda12f68,
0x3fc8a234,
0x5cc04426,
.
word 0x3fe2c9fb,
0x4d812ca0,
0x3fc88535,
0xd90703c6,
.
word 0x3fe29e41,
0x29e4129e,
0x3fc8689c,
0xc7e07e7d,
.
word 0x3fe27350,
0xb8812735,
0x3fc84c66,
0xdf0ca4c2,
.
word 0x3fe24924,
0x92492492,
0x3fc83091,
0xe6a7f7e7,
.
word 0x3fe21fb7,
0x8121fb78,
0x3fc8151b,
0xb86fee1d,
.
word 0x3fe1f704,
0x7dc11f70,
0x3fc7fa02,
0x3f1068d1,
.
word 0x3fe1cf06,
0xada2811d,
0x3fc7df43,
0x7579b9b5,
.
word 0x3fe1a7b9,
0x611a7b96,
0x3fc7c4dd,
0x663ebb88,
.
word 0x3fe18118,
0x11811812,
0x3fc7aace,
0x2afa8b72,
.
word 0x3fe15b1e,
0x5f75270d,
0x3fc79113,
0xebbd7729,
.
word 0x3fe135c8,
0x1135c811,
0x3fc777ac,
0xde80baea,
.
word 0x3fe11111,
0x11111111,
0x3fc75e97,
0x46a0b098,
.
word 0x3fe0ecf5,
0x6be69c90,
0x3fc745d1,
0x745d1746,
.
word 0x3fe0c971,
0x4fbcda3b,
0x3fc72d59,
0xc45f1fc5,
.
word 0x3fe0a681,
0x0a6810a7,
0x3fc7152e,
0x9f44f01f,
.
word 0x3fe08421,
0x08421084,
0x3fc6fd4e,
0x79325467,
.
word 0x3fe0624d,
0xd2f1a9fc,
0x3fc6e5b7,
0xd16657e1,
.
word 0x3fe04104,
0x10410410,
0x3fc6ce69,
0x31d5858d,
.
word 0x3fe02040,
0x81020408,
0x3fc6b761,
0x2ec892f6,
.
word 0x3fefffff,
0xfee7f18f !
KA0 =
9.99999997962321453275e-01 .
word 0xbfdfffff,
0xfe07e52f !
KA1 = -
4.99999998166077580600e-01 .
word 0x3fd80118,
0x0ca296d9 !
KA2 =
3.75066768969515586277e-01 .
word 0xbfd400fc,
0x0bbb8e78 !
KA3 = -
3.12560092408808548438e-01
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
!
!
!
!
if (
ax >=
0x7f800000 ||
ay >=
0x7f800000 )
! {
!
if(
ax ==
0x7f800000 ) *
pz =
0.0f;
!
else if(
ay ==
0x7f800000 ) *
pz =
0.0f;
! continue;
! }
!
! {
! {
! continue;
! }
! }
!
!
!
!
!
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
#else
#endif
be,a
1f !
if(
ay ==
0x7f800000 )
be,a
1f !
if(
ax ==
0x7f800000 )
1: