s_expl.c (238923) | s_expl.c (240861) |
---|---|
1/*- 2 * Copyright (c) 2009-2012 Steven G. Kargl 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 13 unchanged lines hidden (view full) --- 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * 26 * Optimized by Bruce D. Evans. 27 */ 28 29#include <sys/cdefs.h> | 1/*- 2 * Copyright (c) 2009-2012 Steven G. Kargl 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 13 unchanged lines hidden (view full) --- 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * 26 * Optimized by Bruce D. Evans. 27 */ 28 29#include <sys/cdefs.h> |
30__FBSDID("$FreeBSD: head/lib/msun/ld80/s_expl.c 238923 2012-07-30 21:55:49Z kargl $"); | 30__FBSDID("$FreeBSD: head/lib/msun/ld80/s_expl.c 240861 2012-09-23 17:36:01Z kargl $"); |
31 32/* 33 * Compute the exponential of x for Intel 80-bit format. This is based on: 34 * 35 * PTP Tang, "Table-driven implementation of the exponential function 36 * in IEEE floating-point arithmetic," ACM Trans. Math. Soft., 15, 37 * 144-157 (1989). 38 * --- 5 unchanged lines hidden (view full) --- 44#ifdef __i386__ 45#include <ieeefp.h> 46#endif 47 48#include "fpmath.h" 49#include "math.h" 50#include "math_private.h" 51 | 31 32/* 33 * Compute the exponential of x for Intel 80-bit format. This is based on: 34 * 35 * PTP Tang, "Table-driven implementation of the exponential function 36 * in IEEE floating-point arithmetic," ACM Trans. Math. Soft., 15, 37 * 144-157 (1989). 38 * --- 5 unchanged lines hidden (view full) --- 44#ifdef __i386__ 45#include <ieeefp.h> 46#endif 47 48#include "fpmath.h" 49#include "math.h" 50#include "math_private.h" 51 |
52#define INTERVALS 128 |
|
52#define BIAS (LDBL_MAX_EXP - 1) 53 54static const long double 55huge = 0x1p10000L, 56twom10000 = 0x1p-10000L; 57/* XXX Prevent gcc from erroneously constant folding this: */ 58static volatile const long double tiny = 0x1p-10000L; 59 --- 20 unchanged lines hidden (view full) --- 80P2 = 0.5, 81P3 = 1.6666666666666119e-1, /* 0x15555555555490.0p-55 */ 82P4 = 4.1666666666665887e-2, /* 0x155555555554e5.0p-57 */ 83P5 = 8.3333354987869413e-3, /* 0x1111115b789919.0p-59 */ 84P6 = 1.3888891738560272e-3; /* 0x16c16c651633ae.0p-62 */ 85 86/* 87 * 2^(i/INTERVALS) for i in [0,INTERVALS] is represented by two values where | 53#define BIAS (LDBL_MAX_EXP - 1) 54 55static const long double 56huge = 0x1p10000L, 57twom10000 = 0x1p-10000L; 58/* XXX Prevent gcc from erroneously constant folding this: */ 59static volatile const long double tiny = 0x1p-10000L; 60 --- 20 unchanged lines hidden (view full) --- 81P2 = 0.5, 82P3 = 1.6666666666666119e-1, /* 0x15555555555490.0p-55 */ 83P4 = 4.1666666666665887e-2, /* 0x155555555554e5.0p-57 */ 84P5 = 8.3333354987869413e-3, /* 0x1111115b789919.0p-59 */ 85P6 = 1.3888891738560272e-3; /* 0x16c16c651633ae.0p-62 */ 86 87/* 88 * 2^(i/INTERVALS) for i in [0,INTERVALS] is represented by two values where |
88 * the first 47 (?!) bits of the significand is stored in hi and the next 53 89 * bits are in lo. | 89 * the first 53 bits of the significand is stored in hi and the next 53 90 * bits are in lo. Tang's paper states that the trailing 6 bits of hi should 91 * be zero for his algorithm in both single and double precision, because 92 * the table is re-used in the implementation of expm1() where a floating 93 * point addition involving hi must be exact. The conversion of a 53-bit 94 * double into a 64-bit long double gives 11 trailing bit, which are zero. |
90 */ | 95 */ |
91#define INTERVALS 128 92 | |
93static const struct { 94 double hi; 95 double lo; 96} s[INTERVALS] __aligned(16) = { 97 0x1p+0, 0x0p+0, | 96static const struct { 97 double hi; 98 double lo; 99} s[INTERVALS] __aligned(16) = { 100 0x1p+0, 0x0p+0, |
98 0x1.0163da9fb330p+0, 0x1.ab6c25335719bp-47, 99 0x1.02c9a3e77804p+0, 0x1.07737be56527cp-47, 100 0x1.04315e86e7f8p+0, 0x1.2f5ce3e688369p-50, 101 0x1.059b0d315854p+0, 0x1.a1d73e2a475b4p-47, 102 0x1.0706b29ddf6cp+0, 0x1.dc6dc403a9d88p-48, 103 0x1.0874518759bcp+0, 0x1.01186be4bb285p-49, 104 0x1.09e3ecac6f38p+0, 0x1.a290f03062c27p-51, 105 0x1.0b5586cf9890p+0, 0x1.ec5317256e308p-49, 106 0x1.0cc922b7247cp+0, 0x1.ba03db82dc49fp-47, 107 0x1.0e3ec32d3d18p+0, 0x1.10103a1727c58p-47, 108 0x1.0fb66affed30p+0, 0x1.af232091dd8a1p-48, 109 0x1.11301d0125b4p+0, 0x1.0a4ebbf1aed93p-48, 110 0x1.12abdc06c31cp+0, 0x1.7f72575a649adp-49, 111 0x1.1429aaea92dcp+0, 0x1.fb34101943b26p-48, 112 0x1.15a98c8a58e4p+0, 0x1.12480d573dd56p-48, 113 0x1.172b83c7d514p+0, 0x1.d6e6fbe462876p-47, 114 0x1.18af9388c8dcp+0, 0x1.4dddfb85cd1e1p-47, 115 0x1.1a35beb6fcb4p+0, 0x1.a9e5b4c7b4969p-47, 116 0x1.1bbe084045ccp+0, 0x1.39ab1e72b4428p-48, 117 0x1.1d4873168b98p+0, 0x1.53c02dc0144c8p-47, 118 0x1.1ed5022fcd90p+0, 0x1.cb8819ff61122p-48, 119 0x1.2063b88628ccp+0, 0x1.63b8eeb029509p-48, 120 0x1.21f49917ddc8p+0, 0x1.62552fd29294cp-48, 121 0x1.2387a6e75620p+0, 0x1.c3360fd6d8e0bp-47, 122 0x1.251ce4fb2a60p+0, 0x1.f9ac155bef4f5p-47, 123 0x1.26b4565e27ccp+0, 0x1.d257a673281d4p-48, 124 0x1.284dfe1f5638p+0, 0x1.2d9e2b9e07941p-53, 125 0x1.29e9df51fdecp+0, 0x1.09612e8afad12p-47, 126 0x1.2b87fd0dad98p+0, 0x1.ffbbd48ca71f9p-49, 127 0x1.2d285a6e4030p+0, 0x1.680123aa6da0fp-49, 128 0x1.2ecafa93e2f4p+0, 0x1.611ca0f45d524p-48, 129 0x1.306fe0a31b70p+0, 0x1.52de8d5a46306p-48, 130 0x1.32170fc4cd80p+0, 0x1.89a9ce78e1804p-47, 131 0x1.33c08b26416cp+0, 0x1.fa64e43086cb3p-47, 132 0x1.356c55f929fcp+0, 0x1.864a311a3b1bap-47, 133 0x1.371a7373aa9cp+0, 0x1.54e28aa05e8a9p-49, 134 0x1.38cae6d05d84p+0, 0x1.2c2d4e586cdf7p-47, 135 0x1.3a7db34e59fcp+0, 0x1.b750de494cf05p-47, 136 0x1.3c32dc313a8cp+0, 0x1.242000f9145acp-47, 137 0x1.3dea64c12340p+0, 0x1.11ada0911f09fp-47, 138 0x1.3fa4504ac800p+0, 0x1.ba0bf701aa418p-48, 139 0x1.4160a21f72e0p+0, 0x1.4fc2192dc79eep-47, 140 0x1.431f5d950a88p+0, 0x1.6dc704439410dp-48, 141 0x1.44e086061890p+0, 0x1.68189b7a04ef8p-47, 142 0x1.46a41ed1d004p+0, 0x1.772512f45922ap-48, 143 0x1.486a2b5c13ccp+0, 0x1.013c1a3b69063p-48, 144 0x1.4a32af0d7d3cp+0, 0x1.e672d8bcf46f9p-48, 145 0x1.4bfdad5362a0p+0, 0x1.38ea1cbd7f621p-47, 146 0x1.4dcb299fddd0p+0, 0x1.ac766dde353c2p-49, 147 0x1.4f9b2769d2c8p+0, 0x1.35699ec5b4d50p-47, 148 0x1.516daa2cf664p+0, 0x1.c112f52c84d82p-52, 149 0x1.5342b569d4f8p+0, 0x1.df0a83c49d86ap-52, 150 0x1.551a4ca5d920p+0, 0x1.d8a5d8c40486ap-49, 151 0x1.56f4736b527cp+0, 0x1.a66ecb004764fp-48, 152 0x1.58d12d497c7cp+0, 0x1.e9295e15b9a1ep-47, 153 0x1.5ab07dd48540p+0, 0x1.4ac64980a8c8fp-47, 154 0x1.5c9268a59468p+0, 0x1.b80e258dc0b4cp-47, 155 0x1.5e76f15ad214p+0, 0x1.0dd37c9840733p-49, 156 0x1.605e1b976dc0p+0, 0x1.160edeb25490ep-49, 157 0x1.6247eb03a558p+0, 0x1.2c7c3e81bf4b7p-50, 158 0x1.6434634ccc30p+0, 0x1.fc76f8714c4eep-48, 159 0x1.662388255220p+0, 0x1.24893ecf14dc8p-47, 160 0x1.68155d44ca94p+0, 0x1.9840e2b913dd0p-47, 161 0x1.6a09e667f3bcp+0, 0x1.921165f626cddp-49, 162 0x1.6c012750bda8p+0, 0x1.f76bb54cc007ap-47, 163 0x1.6dfb23c651a0p+0, 0x1.779107165f0dep-47, 164 0x1.6ff7df951948p+0, 0x1.e7c3f0da79f11p-51, 165 0x1.71f75e8ec5f4p+0, 0x1.9ee91b8797785p-47, 166 0x1.73f9a48a5814p+0, 0x1.9deae4d273456p-47, 167 0x1.75feb564267cp+0, 0x1.17edd35467491p-49, 168 0x1.780694fde5d0p+0, 0x1.fb0cd7014042cp-47, 169 0x1.7a11473eb018p+0, 0x1.b5f54408fdb37p-50, 170 0x1.7c1ed0130c10p+0, 0x1.93e2499a22c9cp-47, 171 0x1.7e2f336cf4e4p+0, 0x1.1082e815d0abdp-47, 172 0x1.80427543e1a0p+0, 0x1.1b60de67649a3p-48, 173 0x1.82589994cce0p+0, 0x1.28acf88afab35p-48, 174 0x1.8471a4623c78p+0, 0x1.667297b5cbe32p-47, 175 0x1.868d99b4492cp+0, 0x1.640720ec85613p-47, 176 0x1.88ac7d98a668p+0, 0x1.966530bcdf2d5p-48, 177 0x1.8ace5422aa0cp+0, 0x1.b5ba7c55a192dp-48, 178 0x1.8cf3216b5448p+0, 0x1.7de55439a2c39p-49, 179 0x1.8f1ae9915770p+0, 0x1.b15cc13a2e397p-47, 180 0x1.9145b0b91ffcp+0, 0x1.622986d1a7daep-50, 181 0x1.93737b0cdc5cp+0, 0x1.27a280e1f92a0p-47, 182 0x1.95a44cbc8520p+0, 0x1.dd36906d2b420p-49, 183 0x1.97d829fde4e4p+0, 0x1.f173d241f23d1p-49, 184 0x1.9a0f170ca078p+0, 0x1.cdd1884dc6234p-47, 185 0x1.9c49182a3f08p+0, 0x1.01c7c46b071f3p-48, 186 0x1.9e86319e3230p+0, 0x1.18c12653c7326p-47, 187 0x1.a0c667b5de54p+0, 0x1.2594d6d45c656p-47, 188 0x1.a309bec4a2d0p+0, 0x1.9ac60b8fbb86dp-47, 189 0x1.a5503b23e254p+0, 0x1.c8b424491caf8p-48, 190 0x1.a799e1330b34p+0, 0x1.86f2dfb2b158fp-48, 191 0x1.a9e6b5579fd8p+0, 0x1.fa1f5921deffap-47, 192 0x1.ac36bbfd3f34p+0, 0x1.ce06dcb351893p-47, 193 0x1.ae89f995ad38p+0, 0x1.6af439a68bb99p-47, 194 0x1.b0e07298db64p+0, 0x1.2c8421566fe38p-47, 195 0x1.b33a2b84f15cp+0, 0x1.d7b5fe873decap-47, 196 0x1.b59728de5590p+0, 0x1.cc71c40888b24p-47, 197 0x1.b7f76f2fb5e4p+0, 0x1.baa9ec206ad4fp-50, 198 0x1.ba5b030a1064p+0, 0x1.30819678d5eb7p-49, 199 0x1.bcc1e904bc1cp+0, 0x1.2247ba0f45b3dp-48, 200 0x1.bf2c25bd71e0p+0, 0x1.10811ae04a31cp-49, 201 0x1.c199bdd85528p+0, 0x1.c2220cb12a092p-48, 202 0x1.c40ab5fffd04p+0, 0x1.d368a6fc1078cp-47, 203 0x1.c67f12e57d14p+0, 0x1.694426ffa41e5p-49, 204 0x1.c8f6d9406e78p+0, 0x1.a88d65e24402ep-47, 205 0x1.cb720dcef904p+0, 0x1.48a81e5e8f4a5p-47, 206 0x1.cdf0b555dc3cp+0, 0x1.ce227c4ac7d63p-47, 207 0x1.d072d4a07894p+0, 0x1.dc68791790d0bp-47, 208 0x1.d2f87080d89cp+0, 0x1.8c56f091cc4f5p-47, 209 0x1.d5818dcfba48p+0, 0x1.c976816bad9b8p-50, 210 0x1.d80e316c9838p+0, 0x1.7bb84f9d04880p-48, 211 0x1.da9e603db328p+0, 0x1.5c2300696db53p-50, 212 0x1.dd321f301b44p+0, 0x1.025b4aef1e032p-47, 213 0x1.dfc97337b9b4p+0, 0x1.eb968cac39ed3p-48, 214 0x1.e264614f5a10p+0, 0x1.45093b0fd0bd7p-47, 215 0x1.e502ee78b3fcp+0, 0x1.b139e8980a9cdp-47, 216 0x1.e7a51fbc74c8p+0, 0x1.a5aa4594191bcp-51, 217 0x1.ea4afa2a490cp+0, 0x1.9858f73a18f5ep-48, 218 0x1.ecf482d8e67cp+0, 0x1.846d81897dca5p-47, 219 0x1.efa1bee615a0p+0, 0x1.3bb8fe90d496dp-47, 220 0x1.f252b376bba8p+0, 0x1.74e8696fc3639p-48, 221 0x1.f50765b6e454p+0, 0x1.9d3e12dd8a18bp-54, 222 0x1.f7bfdad9cbe0p+0, 0x1.38913b4bfe72cp-48, 223 0x1.fa7c1819e90cp+0, 0x1.82e90a7e74b26p-48, 224 0x1.fd3c22b8f71cp+0, 0x1.884badd25995ep-47 | 101 0x1.0163da9fb3335p+0, 0x1.b61299ab8cdb7p-54, 102 0x1.02c9a3e778060p+0, 0x1.dcdef95949ef4p-53, 103 0x1.04315e86e7f84p+0, 0x1.7ae71f3441b49p-53, 104 0x1.059b0d3158574p+0, 0x1.d73e2a475b465p-55, 105 0x1.0706b29ddf6ddp+0, 0x1.8db880753b0f6p-53, 106 0x1.0874518759bc8p+0, 0x1.186be4bb284ffp-57, 107 0x1.09e3ecac6f383p+0, 0x1.1487818316136p-54, 108 0x1.0b5586cf9890fp+0, 0x1.8a62e4adc610bp-54, 109 0x1.0cc922b7247f7p+0, 0x1.01edc16e24f71p-54, 110 0x1.0e3ec32d3d1a2p+0, 0x1.03a1727c57b53p-59, 111 0x1.0fb66affed31ap+0, 0x1.e464123bb1428p-53, 112 0x1.11301d0125b50p+0, 0x1.49d77e35db263p-53, 113 0x1.12abdc06c31cbp+0, 0x1.f72575a649ad2p-53, 114 0x1.1429aaea92ddfp+0, 0x1.66820328764b1p-53, 115 0x1.15a98c8a58e51p+0, 0x1.2406ab9eeab0ap-55, 116 0x1.172b83c7d517ap+0, 0x1.b9bef918a1d63p-53, 117 0x1.18af9388c8de9p+0, 0x1.777ee1734784ap-53, 118 0x1.1a35beb6fcb75p+0, 0x1.e5b4c7b4968e4p-55, 119 0x1.1bbe084045cd3p+0, 0x1.3563ce56884fcp-53, 120 0x1.1d4873168b9aap+0, 0x1.e016e00a2643cp-54, 121 0x1.1ed5022fcd91cp+0, 0x1.71033fec2243ap-53, 122 0x1.2063b88628cd6p+0, 0x1.dc775814a8495p-55, 123 0x1.21f49917ddc96p+0, 0x1.2a97e9494a5eep-55, 124 0x1.2387a6e756238p+0, 0x1.9b07eb6c70573p-54, 125 0x1.251ce4fb2a63fp+0, 0x1.ac155bef4f4a4p-55, 126 0x1.26b4565e27cddp+0, 0x1.2bd339940e9d9p-55, 127 0x1.284dfe1f56380p+0, 0x1.2d9e2b9e07941p-53, 128 0x1.29e9df51fdee1p+0, 0x1.612e8afad1255p-55, 129 0x1.2b87fd0dad98fp+0, 0x1.fbbd48ca71f95p-53, 130 0x1.2d285a6e4030bp+0, 0x1.0024754db41d5p-54, 131 0x1.2ecafa93e2f56p+0, 0x1.1ca0f45d52383p-56, 132 0x1.306fe0a31b715p+0, 0x1.6f46ad23182e4p-55, 133 0x1.32170fc4cd831p+0, 0x1.a9ce78e18047cp-55, 134 0x1.33c08b26416ffp+0, 0x1.32721843659a6p-54, 135 0x1.356c55f929ff0p+0, 0x1.928c468ec6e76p-53, 136 0x1.371a7373aa9cap+0, 0x1.4e28aa05e8a8fp-53, 137 0x1.38cae6d05d865p+0, 0x1.0b53961b37da2p-53, 138 0x1.3a7db34e59ff6p+0, 0x1.d43792533c144p-53, 139 0x1.3c32dc313a8e4p+0, 0x1.08003e4516b1ep-53, 140 0x1.3dea64c123422p+0, 0x1.ada0911f09ebcp-55, 141 0x1.3fa4504ac801bp+0, 0x1.417ee03548306p-53, 142 0x1.4160a21f72e29p+0, 0x1.f0864b71e7b6cp-53, 143 0x1.431f5d950a896p+0, 0x1.b8e088728219ap-53, 144 0x1.44e086061892dp+0, 0x1.89b7a04ef80d0p-59, 145 0x1.46a41ed1d0057p+0, 0x1.c944bd1648a76p-54, 146 0x1.486a2b5c13cd0p+0, 0x1.3c1a3b69062f0p-56, 147 0x1.4a32af0d7d3dep+0, 0x1.9cb62f3d1be56p-54, 148 0x1.4bfdad5362a27p+0, 0x1.d4397afec42e2p-56, 149 0x1.4dcb299fddd0dp+0, 0x1.8ecdbbc6a7833p-54, 150 0x1.4f9b2769d2ca6p+0, 0x1.5a67b16d3540ep-53, 151 0x1.516daa2cf6641p+0, 0x1.8225ea5909b04p-53, 152 0x1.5342b569d4f81p+0, 0x1.be1507893b0d5p-53, 153 0x1.551a4ca5d920ep+0, 0x1.8a5d8c4048699p-53, 154 0x1.56f4736b527dap+0, 0x1.9bb2c011d93adp-54, 155 0x1.58d12d497c7fdp+0, 0x1.295e15b9a1de8p-55, 156 0x1.5ab07dd485429p+0, 0x1.6324c054647adp-54, 157 0x1.5c9268a5946b7p+0, 0x1.c4b1b816986a2p-60, 158 0x1.5e76f15ad2148p+0, 0x1.ba6f93080e65ep-54, 159 0x1.605e1b976dc08p+0, 0x1.60edeb25490dcp-53, 160 0x1.6247eb03a5584p+0, 0x1.63e1f40dfa5b5p-53, 161 0x1.6434634ccc31fp+0, 0x1.8edf0e2989db3p-53, 162 0x1.6623882552224p+0, 0x1.224fb3c5371e6p-53, 163 0x1.68155d44ca973p+0, 0x1.038ae44f73e65p-57, 164 0x1.6a09e667f3bccp+0, 0x1.21165f626cdd5p-53, 165 0x1.6c012750bdabep+0, 0x1.daed533001e9ep-53, 166 0x1.6dfb23c651a2ep+0, 0x1.e441c597c3775p-53, 167 0x1.6ff7df9519483p+0, 0x1.9f0fc369e7c42p-53, 168 0x1.71f75e8ec5f73p+0, 0x1.ba46e1e5de15ap-53, 169 0x1.73f9a48a58173p+0, 0x1.7ab9349cd1562p-53, 170 0x1.75feb564267c8p+0, 0x1.7edd354674916p-53, 171 0x1.780694fde5d3fp+0, 0x1.866b80a02162dp-54, 172 0x1.7a11473eb0186p+0, 0x1.afaa2047ed9b4p-53, 173 0x1.7c1ed0130c132p+0, 0x1.f124cd1164dd6p-54, 174 0x1.7e2f336cf4e62p+0, 0x1.05d02ba15797ep-56, 175 0x1.80427543e1a11p+0, 0x1.6c1bccec9346bp-53, 176 0x1.82589994cce12p+0, 0x1.159f115f56694p-53, 177 0x1.8471a4623c7acp+0, 0x1.9ca5ed72f8c81p-53, 178 0x1.868d99b4492ecp+0, 0x1.01c83b21584a3p-53, 179 0x1.88ac7d98a6699p+0, 0x1.994c2f37cb53ap-54, 180 0x1.8ace5422aa0dbp+0, 0x1.6e9f156864b27p-54, 181 0x1.8cf3216b5448bp+0, 0x1.de55439a2c38bp-53, 182 0x1.8f1ae99157736p+0, 0x1.5cc13a2e3976cp-55, 183 0x1.9145b0b91ffc5p+0, 0x1.114c368d3ed6ep-53, 184 0x1.93737b0cdc5e4p+0, 0x1.e8a0387e4a814p-53, 185 0x1.95a44cbc8520ep+0, 0x1.d36906d2b41f9p-53, 186 0x1.97d829fde4e4fp+0, 0x1.173d241f23d18p-53, 187 0x1.9a0f170ca07b9p+0, 0x1.7462137188ce7p-53, 188 0x1.9c49182a3f090p+0, 0x1.c7c46b071f2bep-56, 189 0x1.9e86319e32323p+0, 0x1.824ca78e64c6ep-56, 190 0x1.a0c667b5de564p+0, 0x1.6535b51719567p-53, 191 0x1.a309bec4a2d33p+0, 0x1.6305c7ddc36abp-54, 192 0x1.a5503b23e255cp+0, 0x1.1684892395f0fp-53, 193 0x1.a799e1330b358p+0, 0x1.bcb7ecac563c7p-54, 194 0x1.a9e6b5579fdbfp+0, 0x1.0fac90ef7fd31p-54, 195 0x1.ac36bbfd3f379p+0, 0x1.81b72cd4624ccp-53, 196 0x1.ae89f995ad3adp+0, 0x1.7a1cd345dcc81p-54, 197 0x1.b0e07298db665p+0, 0x1.2108559bf8deep-53, 198 0x1.b33a2b84f15fap+0, 0x1.ed7fa1cf7b290p-53, 199 0x1.b59728de55939p+0, 0x1.1c7102222c90ep-53, 200 0x1.b7f76f2fb5e46p+0, 0x1.d54f610356a79p-53, 201 0x1.ba5b030a10649p+0, 0x1.0819678d5eb69p-53, 202 0x1.bcc1e904bc1d2p+0, 0x1.23dd07a2d9e84p-55, 203 0x1.bf2c25bd71e08p+0, 0x1.0811ae04a31c7p-53, 204 0x1.c199bdd85529cp+0, 0x1.11065895048ddp-55, 205 0x1.c40ab5fffd07ap+0, 0x1.b4537e083c60ap-54, 206 0x1.c67f12e57d14bp+0, 0x1.2884dff483cadp-54, 207 0x1.c8f6d9406e7b5p+0, 0x1.1acbc48805c44p-56, 208 0x1.cb720dcef9069p+0, 0x1.503cbd1e949dbp-56, 209 0x1.cdf0b555dc3f9p+0, 0x1.889f12b1f58a3p-53, 210 0x1.d072d4a07897bp+0, 0x1.1a1e45e4342b2p-53, 211 0x1.d2f87080d89f1p+0, 0x1.15bc247313d44p-53, 212 0x1.d5818dcfba487p+0, 0x1.2ed02d75b3707p-55, 213 0x1.d80e316c98397p+0, 0x1.7709f3a09100cp-53, 214 0x1.da9e603db3285p+0, 0x1.c2300696db532p-54, 215 0x1.dd321f301b460p+0, 0x1.2da5778f018c3p-54, 216 0x1.dfc97337b9b5ep+0, 0x1.72d195873da52p-53, 217 0x1.e264614f5a128p+0, 0x1.424ec3f42f5b5p-53, 218 0x1.e502ee78b3ff6p+0, 0x1.39e8980a9cc8fp-55, 219 0x1.e7a51fbc74c83p+0, 0x1.2d522ca0c8de2p-54, 220 0x1.ea4afa2a490d9p+0, 0x1.0b1ee7431ebb6p-53, 221 0x1.ecf482d8e67f0p+0, 0x1.1b60625f7293ap-53, 222 0x1.efa1bee615a27p+0, 0x1.dc7f486a4b6b0p-54, 223 0x1.f252b376bba97p+0, 0x1.3a1a5bf0d8e43p-54, 224 0x1.f50765b6e4540p+0, 0x1.9d3e12dd8a18bp-54, 225 0x1.f7bfdad9cbe13p+0, 0x1.1227697fce57bp-53, 226 0x1.fa7c1819e90d8p+0, 0x1.74853f3a5931ep-55, 227 0x1.fd3c22b8f71f1p+0, 0x1.2eb74966579e7p-57 |
225}; 226 227long double 228expl(long double x) 229{ 230 union IEEEl2bits u, v; 231 long double fn, r, r1, r2, q, t, t23, t45, twopk, twopkp10000, z; 232 int k, n, n2; --- 68 unchanged lines hidden --- | 228}; 229 230long double 231expl(long double x) 232{ 233 union IEEEl2bits u, v; 234 long double fn, r, r1, r2, q, t, t23, t45, twopk, twopkp10000, z; 235 int k, n, n2; --- 68 unchanged lines hidden --- |