From e940a4375097025e2a2e8110496d5f471adda293 Mon Sep 17 00:00:00 2001 From: Szabolcs Nagy Date: Fri, 14 Dec 2012 18:38:05 +0100 Subject: [PATCH] math: new testcases (acos, asin, atan, expl, lgamma, tgamma) --- src/math/special/acos.h | 2 + src/math/special/acosf.h | 3 + src/math/special/acosh.h | 19 +++++ src/math/special/acoshf.h | 1 + src/math/special/acoshl.h | 1 + src/math/special/asin.h | 1 + src/math/special/asinf.h | 1 + src/math/special/asinh.h | 19 +++++ src/math/special/atan.h | 1 + src/math/special/expl.h | 7 ++ src/math/special/lgamma.h | 184 ++++++++++++++++++++++++++++++++++++++++++++++ src/math/special/tgamma.h | 59 ++++++++++++++- 12 files changed, 297 insertions(+), 1 deletion(-) diff --git a/src/math/special/acos.h b/src/math/special/acos.h index 5f23101..a20c549 100644 --- a/src/math/special/acos.h +++ b/src/math/special/acos.h @@ -6,3 +6,5 @@ T(RN, -0x1.0000000000001p+0, nan, 0x0p+0, INVALID T(RN, inf, nan, 0x0p+0, INVALID) T(RN, -inf, nan, 0x0p+0, INVALID) T(RN, nan, nan, 0x0p+0, 0) +T(RN, -0x1.0fd51a5672715p-1, 0x1.10b3beb3ca315p+1, 0x1.1ce0e8p-3, INEXACT) +T(RN, 0x1.f9cf8431025cep-2, 0x1.0ddda02455023p+0, 0x1.c3ae8p-3, INEXACT) diff --git a/src/math/special/acosf.h b/src/math/special/acosf.h index 26f031e..21d908d 100644 --- a/src/math/special/acosf.h +++ b/src/math/special/acosf.h @@ -6,3 +6,6 @@ T(RN, -0x1.000002p+0, nan, 0x0p+0, INVALID) T(RN, inf, nan, 0x0p+0, INVALID) T(RN, -inf, nan, 0x0p+0, INVALID) T(RN, nan, nan, 0x0p+0, 0) +T(RN, 0x1.ffa46cp-2, 0x1.0c2f92p+0, -0x1.b164dap-3, INEXACT) +T(RN, -0x1.02a1c8p-1, 0x1.0cd7fap+1, -0x1.ab103cp-3, INEXACT) +T(RN, -0x1.09b7aep-1, 0x1.0ee7eep+1, -0x1.2b0662p-3, INEXACT) diff --git a/src/math/special/acosh.h b/src/math/special/acosh.h index a94fdba..a6f23db 100644 --- a/src/math/special/acosh.h +++ b/src/math/special/acosh.h @@ -3,4 +3,23 @@ T(RN, inf, inf, 0x0p+0, 0) T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0) T(RN, 0x1.ffffp-1, nan, 0x0p+0, INVALID) T(RN, 0x0p+0, nan, 0x0p+0, INVALID) +T(RN, -0x0p+0, nan, 0x0p+0, INVALID) T(RN, -inf, nan, 0x0p+0, INVALID) +// hard cases close to 1 +T(RN, 0x1.001f1c62cf304p+0, 0x1.f8d125ff71ccp-6, -0x1.2d785ap-3, INEXACT) +T(RN, 0x1.00788c223616fp+0, 0x1.f0cb8ee812621p-5, -0x1.1b0c1ap-2, INEXACT) +T(RN, 0x1.007b7a37c7606p+0, 0x1.f6cb68859ae3p-5, 0x1.280488p-3, INEXACT) +T(RN, 0x1.01d173033243cp+0, 0x1.e7e1b18d99376p-4, -0x1.1f3d3ep-4, INEXACT) +T(RN, 0x1.01d8f20e90409p+0, 0x1.ebca3eea5cda5p-4, 0x1.648602p-2, INEXACT) +T(RN, 0x1.01ef6122e68bep+0, 0x1.f74df150afc94p-4, 0x1.e79556p-3, INEXACT) +T(RN, 0x1.06822faf07879p+0, 0x1.ccd73cbc4af78p-3, -0x1.4df79ep-2, INEXACT) +T(RN, 0x1.0691d1ad0b443p+0, 0x1.cefd0e06ac498p-3, -0x1.3cc436p-5, INEXACT) +T(RN, 0x1.069d65411ec51p+0, 0x1.d0928b08facbap-3, -0x1.b83338p-3, INEXACT) +T(RN, 0x1.071d6b2713d08p+0, 0x1.e1bc6a6c345fdp-3, -0x1.74a04ep-3, INEXACT) +T(RN, 0x1.0728405f5140cp+0, 0x1.e328ebe92b32cp-3, -0x1.ae89ap-3, INEXACT) +T(RN, 0x1.07bd2c5c01bcbp+0, 0x1.f6513c44c131p-3, -0x1.203932p-2, INEXACT) +T(RN, 0x1.1aae7c452c859p+0, 0x1.cf8d69288e386p-2, 0x1.1b325ap-2, INEXACT) +T(RN, 0x1.1b28436b06aaep+0, 0x1.d398bd2d43449p-2, -0x1.2cde2p-2, INEXACT) +T(RN, 0x1.1b50764626f1ep+0, 0x1.d4ec67c71794p-2, -0x1.0c09dap-2, INEXACT) +T(RN, 0x1.1be62d08e369bp+0, 0x1.d9d480059e267p-2, -0x1.9895f6p-2, INEXACT) +T(RN, 0x1.1deff88faa587p+0, 0x1.ea855ab4631fep-2, -0x1.4964fp-2, INEXACT) diff --git a/src/math/special/acoshf.h b/src/math/special/acoshf.h index f17b0db..1a1c499 100644 --- a/src/math/special/acoshf.h +++ b/src/math/special/acoshf.h @@ -3,4 +3,5 @@ T(RN, inf, inf, 0x0p+0, 0) T(RN, 0x1p+0, 0x0p+0, 0x0p+0, 0) T(RN, 0x1.ffffp-1, nan, 0x0p+0, INVALID) T(RN, 0x0p+0, nan, 0x0p+0, INVALID) +T(RN, -0x0p+0, nan, 0x0p+0, INVALID) T(RN, -inf, nan, 0x0p+0, INVALID) diff --git a/src/math/special/acoshl.h b/src/math/special/acoshl.h index d91b2f0..3f1dcc4 100644 --- a/src/math/special/acoshl.h +++ b/src/math/special/acoshl.h @@ -3,4 +3,5 @@ T(RN, inf, inf, 0 T(RN, 0x1p+0L, 0x0p+0L, 0x0p+0, 0) T(RN, 0x1.ffffp-1L, nan, 0x0p+0, INVALID) T(RN, 0x0p+0L, nan, 0x0p+0, INVALID) +T(RN, -0x0p+0L, nan, 0x0p+0, INVALID) T(RN, -inf, nan, 0x0p+0, INVALID) diff --git a/src/math/special/asin.h b/src/math/special/asin.h index 5a26b31..34065de 100644 --- a/src/math/special/asin.h +++ b/src/math/special/asin.h @@ -7,3 +7,4 @@ T(RN, -0x1.0000000000001p+0, nan, 0x0p+0, INVALID T(RN, inf, nan, 0x0p+0, INVALID) T(RN, -inf, nan, 0x0p+0, INVALID) T(RN, nan, nan, 0x0p+0, 0) +T(RN, 0x1.03bd66c158fd6p-1, 0x1.10695e668145dp-1, -0x1.4ae6ep-3, INEXACT) diff --git a/src/math/special/asinf.h b/src/math/special/asinf.h index e4f4bb1..621be0a 100644 --- a/src/math/special/asinf.h +++ b/src/math/special/asinf.h @@ -7,3 +7,4 @@ T(RN, -0x1.000002p+0, nan, 0x0p+0, INVALID) T(RN, inf, nan, 0x0p+0, INVALID) T(RN, -inf, nan, 0x0p+0, INVALID) T(RN, nan, nan, 0x0p+0, 0) +T(RN, 0x1.003e86p-1, 0x1.0c5d58p-1, -0x1.2d556p-2, INEXACT) diff --git a/src/math/special/asinh.h b/src/math/special/asinh.h index 6b7c802..0ade4f1 100644 --- a/src/math/special/asinh.h +++ b/src/math/special/asinh.h @@ -3,3 +3,22 @@ T(RN, inf, inf, 0x0p+0, 0) T(RN, -inf, -inf, 0x0p+0, 0) T(RN, 0x0p+0, 0x0p+0, 0x0p+0, 0) T(RN, -0x0p+0, -0x0p+0, 0x0p+0, 0) +// hard cases around 0.125 +T(RN, 0x1.fbdd0eedf8143p-3, 0x1.f6cc20d7a594ap-3, -0x1.f327a8p-2, INEXACT) +T(RN, 0x1.df2723491f88fp-3, 0x1.dae2c8444900cp-3, 0x1.cb8b86p-2, INEXACT) +T(RN, 0x1.ef675c6541305p-3, 0x1.eab20432c9598p-3, -0x1.ba9e34p-2, INEXACT) +T(RN, 0x1.f19df3a1722a9p-3, 0x1.ecd8a7f621554p-3, 0x1.dbc1a8p-2, INEXACT) +T(RN, 0x1.f1af09dcfa7d6p-3, 0x1.ece942815ceccp-3, 0x1.e5bb5p-2, INEXACT) +T(RN, 0x1.f339ebbeac5bap-3, 0x1.ee68f10a49c42p-3, -0x1.e28cbp-2, INEXACT) +T(RN, 0x1.f424275dc8787p-3, 0x1.ef4c7fcb51c56p-3, 0x1.6e4e9p-2, INEXACT) +T(RN, 0x1.f60d54a133665p-3, 0x1.f127a8dec0c2p-3, 0x1.f3c9eap-2, INEXACT) +T(RN, 0x1.fdccdaf285ffdp-3, 0x1.f8ad4bed7af4cp-3, 0x1.b1f1f8p-2, INEXACT) +T(RN, 0x1.ff5bec94924c7p-3, 0x1.fa30836c3949ap-3, 0x1.de989p-2, INEXACT) +T(RN, 0x1.028e8fd61c8a5p-2, 0x1.ffc55bd02e9dep-3, -0x1.523c08p-2, INEXACT) +T(RN, 0x1.dc71794e1f137p-2, 0x1.ccbd41a7d058ap-2, 0x1.a944b8p-2, INEXACT) +T(RN, 0x1.df308e177c3cbp-2, 0x1.cf3a638145d7ap-2, 0x1.fb3684p-2, INEXACT) +T(RN, 0x1.ea94e1e267746p-2, 0x1.d9862533f65f6p-2, 0x1.af51ecp-2, INEXACT) +T(RN, 0x1.ecd4f07608dc7p-2, 0x1.db8d6fdcc6d74p-2, -0x1.eeb48p-2, INEXACT) +T(RN, 0x1.f30656c78ee7ep-2, 0x1.e1204e364a186p-2, -0x1.b23ffp-2, INEXACT) +T(RN, 0x1.f5c0c6e41b969p-2, 0x1.e393d3dc3b70ap-2, -0x1.c06dbep-2, INEXACT) +T(RN, 0x1.09c58725300e7p-1, 0x1.fe2c7f25fb172p-2, -0x1.ae9df6p-2, INEXACT) diff --git a/src/math/special/atan.h b/src/math/special/atan.h index 2d97c6f..fb8412e 100644 --- a/src/math/special/atan.h +++ b/src/math/special/atan.h @@ -5,3 +5,4 @@ T(RN, -0x1p+0, -0x1.921fb54442d18p-1, 0x1.1a6264p-2, INEXACT T(RN, inf, 0x1.921fb54442d18p+0, -0x1.1a6264p-2, INEXACT) T(RN, -inf, -0x1.921fb54442d18p+0, 0x1.1a6264p-2, INEXACT) T(RN, nan, nan, 0x0p+0, 0) +T(RN, 0x1.62ce8e8c915b7p-1, 0x1.3645b11399275p-1, -0x1.5db652p-3, INEXACT) diff --git a/src/math/special/expl.h b/src/math/special/expl.h index 7e80f3f..70759d9 100644 --- a/src/math/special/expl.h +++ b/src/math/special/expl.h @@ -9,6 +9,8 @@ T(RN, 0x1p-65L, 0x1p+0L, -0 T(RN, 0x1p-64L, 0x1.0000000000000002p+0L, 0x1p-1, INEXACT) T(RN, 0x1.8ffffffffffffffp-60L, 0x1.000000000000001ap+0L, 0x1p-1, INEXACT) T(RN, 0x1.8fffffffffffffp-60L, 0x1.0000000000000018p+0L, -0x1p-1, INEXACT) +T(RN, 0x1p-33L, 0x1.000000008p+0L, -0x1p-4, INEXACT) +T(RN, -0x1p-33L, 0x1.ffffffffp-1L, -0x1p-3, INEXACT) T(RN, 0x1.91eb851eb851eb86p+1L, 0x1.71a9704b9599b65ap+4L, 0x1.699ee4p-4, INEXACT) T(RN, -0x1.91eb851eb851eb86p+1L, 0x1.62929b2efc7c3bd6p-5L, -0x1.5cd574p-2, INEXACT) T(RN, 0x1.8b0a3d70a3d70a3ep+3L, 0x1.c0d80ffb740bf4f4p+17L, -0x1.26160cp-3, INEXACT) @@ -16,9 +18,13 @@ T(RN, -0x1.8b0a3d70a3d70a3ep+3L, 0x1.240572f47cb85b4p-18L, 0x1.7eb4 T(RN, 0x1.f4p+9L, 0x1.9e72379aed73ad8p+1442L, -0x1.58acfep-3, INEXACT) T(RN, 0x1.388p+13L, 0x1.eeb3183dcd959f14p+14426L, -0x1.bfc62ap-2, INEXACT) T(RN, 0x1.86ap+16L, inf, 0x0p+0, INEXACT|OVERFLOW) +T(RN, 0x1.62e42fefa39ef356p+16383L, inf, 0x0p+0, INEXACT|OVERFLOW) +T(RN, 0x1.62e42fefa39ef358p+16383L, inf, 0x0p+0, INEXACT|OVERFLOW) T(RN, -0x1.f4p+9L, 0x1.3c4219e4189540f4p-1443L, 0x1.b61724p-2, INEXACT) T(RN, -0x1.388p+13L, 0x1.08f3e53f28a859c8p-14427L, 0x1.254e18p-4, INEXACT) T(RN, -0x1.86ap+16L, 0x0p+0L, -0x0p+0, INEXACT|UNDERFLOW) +T(RN, -0x1.62e42fefa39ef356p+16383L, 0x0p+0L, 0x0p+0, INEXACT|UNDERFLOW) +T(RN, -0x1.62e42fefa39ef358p+16383L, 0x0p+0L, 0x0p+0, INEXACT|UNDERFLOW) T(RN, 0x1.62e42fefa39ef356p+13L, 0x1.ffffffffffff9b0ep+16383L, -0x1.319ffp-4, INEXACT) T(RN, 0x1.62e42fefa39ef358p+13L, inf, 0x0p+0, INEXACT|OVERFLOW) T(RN, -0x1.643bfcfe13c57552p+13L, 0x1p-16445L, 0x1p-1, INEXACT|UNDERFLOW) @@ -28,3 +34,4 @@ T(RN, 0x1.62e42fefa39ef354p-2L, 0x1.6a09e667f3bcc908p+0L, 0x1.2197 T(RN, 0x1.62e42fefa39ef352p-2L, 0x1.6a09e667f3bcc906p+0L, -0x1.745e9p-2, INEXACT) T(RN, -0x1.62e42fefa39ef352p-2L, 0x1.6a09e667f3bcc90ap-1L, -0x1.578dbep-2, INEXACT) T(RN, -0x1.62e42fefa39ef35p-2L, 0x1.6a09e667f3bcc90cp-1L, 0x1.3e685cp-2, INEXACT) +T(RN, -0x1.f1dc4d7eaf559p+12L, 0x1.c569cb2de9012b2ap-11493L, -0x1.b46f34p-2, INEXACT) diff --git a/src/math/special/lgamma.h b/src/math/special/lgamma.h index 9e469a2..1f3a3a1 100644 --- a/src/math/special/lgamma.h +++ b/src/math/special/lgamma.h @@ -7,3 +7,187 @@ T(RN, -0x1p+1, inf, 0x0p+0, T(RN, inf, inf, 0x0p+0, 1, 0) T(RN, -inf, inf, 0x0p+0, -1, 0) T(RN, nan, nan, 0x0p+0, 1, 0) +// positive int +T(RN, 0x1p+1, 0x0p+0, 0x0p+0, 1, 0) +T(RN, 0x1p+2, 0x1.cab0bfa2a2002p+0, -0x1.9136fep-3, 1, INEXACT) +T(RN, 0x1.8p+1, 0x1.62e42fefa39efp-1, -0x1.abc9e4p-3, 1, INEXACT) +T(RN, 0x1.4p+2, 0x1.96ca77c922cf9p+1, 0x1.30bfc8p-2, 1, INEXACT) +T(RN, 0x1.8p+2, 0x1.326643c4479c9p+2, -0x1.a53c28p-3, 1, INEXACT) +T(RN, 0x1.cp+2, 0x1.a51273acf01cap+2, 0x1.f67618p-3, 1, INEXACT) +T(RN, 0x1p+3, 0x1.10ce1f32dcc3p+3, 0x1.a6cba4p-3, 1, INEXACT) +T(RN, 0x1.2p+3, 0x1.5358e82fcb70dp+3, 0x1.6b4ae4p-2, 1, INEXACT) +T(RN, 0x1.4p+3, 0x1.99a8921a7f7cfp+3, -0x1.2c1f5ep-2, 1, INEXACT) +T(RN, 0x1.6p+3, 0x1.e357590954d15p+3, 0x1.510358p-2, 1, INEXACT) +T(RN, 0x1.8p+3, 0x1.180973f3a8d74p+4, 0x1.9946fcp-3, 1, INEXACT) +T(RN, 0x1.ap+3, 0x1.3fcba16d50143p+4, -0x1.a69562p-2, 1, INEXACT) +T(RN, 0x1.cp+3, 0x1.68d5a9c3b32cep+4, 0x1.da276p-2, 1, INEXACT) +T(RN, 0x1.ep+3, 0x1.930f3df162a42p+4, -0x1.e1a3a2p-2, 1, INEXACT) +T(RN, 0x1p+4, 0x1.be636a63fd346p+4, -0x1.623db2p-2, 1, INEXACT) +T(RN, 0x1p+5, 0x1.385e6fd9e5a4p+6, -0x1.007d88p-2, 1, INEXACT) +T(RN, 0x1p+6, 0x1.9204c51e7c761p+7, -0x1.7279cep-2, 1, INEXACT) +T(RN, 0x1p+7, 0x1.eb8daec863182p+8, 0x1.0c2678p-5, 1, INEXACT) +T(RN, 0x1.1ap+7, 0x1.159c32993e34fp+9, -0x1.d4b39cp-3, 1, INEXACT) +T(RN, 0x1.1cp+7, 0x1.1815a3900cac1p+9, -0x1.d8eed4p-2, 1, INEXACT) +T(RN, 0x1.1ep+7, 0x1.1a8ffc1a8d2fep+9, 0x1.f02e3ap-2, 1, INEXACT) +T(RN, 0x1.2p+7, 0x1.1d0b3a98b83c1p+9, -0x1.0555a4p-3, 1, INEXACT) +T(RN, 0x1.22p+7, 0x1.1f875d7052afep+9, -0x1.a7798p-4, 1, INEXACT) +T(RN, 0x1.52p+7, 0x1.5c2757bd48ee8p+9, 0x1.0d27bp-2, 1, INEXACT) +T(RN, 0x1.54p+7, 0x1.5eb7f842af2p+9, -0x1.7acc84p-2, 1, INEXACT) +T(RN, 0x1.56p+7, 0x1.61495a1a8a1d5p+9, 0x1.1fb02ap-4, 1, INEXACT) +T(RN, 0x1.58p+7, 0x1.63db7c229538bp+9, -0x1.287342p-3, 1, INEXACT) +T(RN, 0x1p+8, 0x1.226d931091be7p+10, -0x1.e8aedep-3, 1, INEXACT) +T(RN, 0x1p+8, 0x1.226d931091be7p+10, -0x1.e8aedep-3, 1, INEXACT) +T(RN, 0x1p+9, 0x1.4efa4f073a641p+11, 0x1.c54f54p-2, 1, INEXACT) +T(RN, 0x1p+10, 0x1.7b747c92489cap+12, -0x1.a11112p-2, 1, INEXACT) +T(RN, 0x1p+11, 0x1.a7e29c5f29d1p+13, -0x1.19d326p-4, 1, INEXACT) +T(RN, 0x1p+12, 0x1.d4495238c494bp+14, 0x1.71a32p-4, 1, INEXACT) +T(RN, 0x1p+13, 0x1.0055d0cd52142p+16, -0x1.48ba7ep-3, 1, INEXACT) +T(RN, 0x1p+14, 0x1.1685b2824d13fp+17, -0x1.0ef77ep-2, 1, INEXACT) +T(RN, 0x1p+16, 0x1.42e39be5801a3p+19, -0x1.e2f2acp-5, 1, INEXACT) +T(RN, 0x1p+15, 0x1.2cb4db0aaaafdp+18, 0x1.1ad70cp-4, 1, INEXACT) +T(RN, 0x1p+17, 0x1.5912235dfaac2p+20, 0x1.f7c9a8p-2, 1, INEXACT) +T(RN, 0x1p+18, 0x1.6f408b5f7df1ep+21, -0x1.4d41eep-3, 1, INEXACT) +T(RN, 0x1p+19, 0x1.856ee242a101bp+22, 0x1.d496a6p-5, 1, INEXACT) +T(RN, 0x1p+20, 0x1.9b9d2fe521c68p+23, -0x1.2ff64cp-2, 1, INEXACT) +T(RN, 0x1p+100, 0x1.1142457337d43p+106, 0x1.e3948cp-4, 1, INEXACT) +T(RN, 0x1p+200, 0x1.1342457337d43p+207, 0x1.e3948cp-4, 1, INEXACT) +T(RN, 0x1p+300, 0x1.9de3682cd3be4p+307, -0x1.4aa84cp-2, 1, INEXACT) +T(RN, 0x1p+400, 0x1.1442457337d43p+408, 0x1.e3948cp-4, 1, INEXACT) +T(RN, 0x1p+500, 0x1.5992d6d005c94p+508, 0x1.971e6cp-2, 1, INEXACT) +T(RN, 0x1p+600, 0x1.9ee3682cd3be4p+608, -0x1.4aa84cp-2, 1, INEXACT) +T(RN, 0x1p+700, 0x1.e433f989a1b35p+708, -0x1.637816p-5, 1, INEXACT) +T(RN, 0x1p+800, 0x1.14c2457337d43p+809, 0x1.e3948cp-4, 1, INEXACT) +T(RN, 0x1p+900, 0x1.376a8e219ecebp+909, -0x1.effc72p-3, 1, INEXACT) +T(RN, 0x1p+1000, 0x1.5a12d6d005c94p+1009, 0x1.971e6cp-2, 1, INEXACT) +T(RN, 0x1p+1010, 0x1.5d8a1147dce24p+1019, -0x1.c0f85p-2, 1, INEXACT) +T(RN, 0x1p+1011, 0x1.5de2ca53d8cb3p+1020, 0x1.3f48d8p-4, 1, INEXACT) +T(RN, 0x1p+1012, 0x1.5e3b835fd4b41p+1021, -0x1.9f6344p-2, 1, INEXACT) +T(RN, 0x1p+1013, 0x1.5e943c6bd09dp+1022, 0x1.c59d0ep-4, 1, INEXACT) +T(RN, 0x1p+1014, 0x1.5eecf577cc85ep+1023, -0x1.7dce36p-2, 1, INEXACT) +T(RN, 0x1p+1015, inf, 0x0p+0, 1, INEXACT|OVERFLOW) +// close to poles +T(RN, 0x1p-50, 0x1.1542457337d43p+5, 0x1.858eaep-3, 1, INEXACT) +T(RN, 0x1p-51, 0x1.1acdd632f662bp+5, 0x1.aa7eaap-2, 1, INEXACT) +T(RN, 0x1p-52, 0x1.205966f2b4f12p+5, -0x1.5b5178p-2, 1, INEXACT) +T(RN, 0x1p-53, 0x1.25e4f7b2737fap+5, -0x1.5f9548p-4, 1, INEXACT) +T(RN, 0x1p-54, 0x1.2b708872320e2p+5, 0x1.6049eep-3, 1, INEXACT) +T(RN, 0x1.000000000001p-1024, 0x1.62e42fefa39efp+9, -0x1.6bc9e4p-3, 1, INEXACT) +T(RN, -0x1.000000000001p-1024, 0x1.62e42fefa39efp+9, -0x1.6bc9e4p-3, -1, INEXACT) +T(RN, -0x1p-54, 0x1.2b708872320e2p+5, 0x1.4dd162p-3, -1, INEXACT) +T(RN, -0x1p-53, 0x1.25e4f7b2737fap+5, -0x1.a9777cp-4, -1, INEXACT) +T(RN, -0x1p-52, 0x1.205966f2b4f12p+5, -0x1.804292p-2, -1, INEXACT) +T(RN, -0x1p-51, 0x1.1acdd632f662bp+5, 0x1.609c76p-2, -1, INEXACT) +T(RN, -0x1p-50, 0x1.1542457337d43p+5, 0x1.781778p-5, -1, INEXACT) +T(RN, -0x1.ffffffffffffcp-1, 0x1.1acdd632f662bp+5, 0x1.6a7eaap-2, -1, INEXACT) +T(RN, -0x1.ffffffffffffdp-1, 0x1.1d1b02751cfe2p+5, 0x1.bb0106p-3, -1, INEXACT) +T(RN, -0x1.ffffffffffffep-1, 0x1.205966f2b4f12p+5, -0x1.7b5178p-2, -1, INEXACT) +T(RN, -0x1.fffffffffffffp-1, 0x1.25e4f7b2737fap+5, -0x1.9f9548p-4, -1, INEXACT) +T(RN, -0x1.0000000000001p+0, 0x1.205966f2b4f12p+5, -0x1.604292p-2, 1, INEXACT) +T(RN, -0x1.0000000000002p+0, 0x1.1acdd632f662bp+5, 0x1.a09c76p-2, 1, INEXACT) +T(RN, -0x1.0000000000003p+0, 0x1.178f71b55e6fap+5, 0x1.b73398p-7, 1, INEXACT) +T(RN, -0x1.0000000000004p+0, 0x1.1542457337d43p+5, 0x1.5e05dep-3, 1, INEXACT) +T(RN, -0x1.ffffffffffffcp+0, 0x1.0fb6b4b37945bp+5, -0x1.09e116p-2, 1, INEXACT) +T(RN, -0x1.ffffffffffffdp+0, 0x1.1203e0f59fe12p+5, -0x1.801b82p-2, 1, INEXACT) +T(RN, -0x1.ffffffffffffep+0, 0x1.1542457337d43p+5, 0x1.eeb1e8p-5, 1, INEXACT) +T(RN, -0x1.fffffffffffffp+0, 0x1.1acdd632f662bp+5, 0x1.68061cp-2, 1, INEXACT) +T(RN, -0x1.0000000000001p+1, 0x1.1542457337d43p+5, 0x1.67e812p-3, -1, INEXACT) +T(RN, -0x1.0000000000002p+1, 0x1.0fb6b4b37945bp+5, -0x1.da57d2p-6, -1, INEXACT) +T(RN, -0x1.0000000000003p+1, 0x1.0c785035e152ap+5, -0x1.8300e2p-2, -1, INEXACT) +T(RN, -0x1.0000000000004p+1, 0x1.0a2b23f3bab73p+5, -0x1.68603ap-3, -1, INEXACT) +T(RN, -0x1.7fffffffffffdp+1, 0x1.03ae5af88ad12p+5, -0x1.d26cfep-2, -1, INEXACT) +T(RN, -0x1.7fffffffffffep+1, 0x1.06ecbf7622c43p+5, 0x1.e61884p-6, -1, INEXACT) +T(RN, -0x1.7ffffffffffffp+1, 0x1.0c785035e152bp+5, 0x1.7b6e3p-2, -1, INEXACT) +T(RN, -0x1.5800000000001p+7, -0x1.56d5d620a668ap+9, -0x1.2ee7c2p-2, -1, INEXACT) +T(RN, -0x1.5800000000002p+7, -0x1.572e8f2ca2519p+9, 0x1.e6ce3ep-2, -1, INEXACT) +T(RN, -0x1.5800000000003p+7, -0x1.576275747bd0ep+9, -0x1.996fcp-3, -1, INEXACT) +T(RN, -0x1.5800000000004p+7, -0x1.578748389e3abp+9, -0x1.dcfb3cp-2, -1, INEXACT) +T(RN, -0x1.59ffffffffffcp+7, -0x1.5a1ae747b6c95p+9, 0x1.1df6bcp-2, -1, INEXACT) +T(RN, -0x1.59ffffffffffdp+7, -0x1.59f61483945fbp+9, 0x1.f2d7dap-4, -1, INEXACT) +T(RN, -0x1.59ffffffffffep+7, -0x1.59c22e3bbae09p+9, 0x1.7eb7f4p-2, -1, INEXACT) +T(RN, -0x1.59fffffffffffp+7, -0x1.5969752fbef7cp+9, 0x1.6efba6p-3, -1, INEXACT) +T(RN, -0x1.5a00000000001p+7, -0x1.5969752fbef7fp+9, -0x1.f116f8p-3, 1, INEXACT) +T(RN, -0x1.5bfffffffffffp+7, -0x1.5bfdd11c4d28ap+9, 0x1.355f16p-2, 1, INEXACT) +T(RN, -0x1.5c00000000001p+7, -0x1.5bfdd11c4d28dp+9, -0x1.dee3bcp-4, -1, INEXACT) +T(RN, -0x1.5dfffffffffffp+7, -0x1.5e92e8d13d945p+9, -0x1.4fc29p-2, -1, INEXACT) +T(RN, -0x1.5e00000000001p+7, -0x1.5e92e8d13d947p+9, 0x1.061266p-2, 1, INEXACT) +T(RN, -0x1.5ffffffffffffp+7, -0x1.6128bb3ca52b6p+9, -0x1.96085ep-4, 1, INEXACT) +T(RN, -0x1.6000000000001p+7, -0x1.6128bb3ca52b8p+9, 0x1.f33b98p-2, -1, INEXACT) +T(RN, -0x1.61fffffffffffp+7, -0x1.63bf474fb378ap+9, 0x1.73ef9cp-2, -1, INEXACT) +T(RN, -0x1.6200000000001p+7, -0x1.63bf474fb378dp+9, -0x1.83716cp-5, 1, INEXACT) +T(RN, -0x1.63fffffffffffp+7, -0x1.66568bfea532fp+9, -0x1.d90ab8p-3, 1, INEXACT) +T(RN, -0x1.6400000000001p+7, -0x1.66568bfea5331p+9, 0x1.71fd36p-2, -1, INEXACT) +T(RN, -0x1.65fffffffffffp+7, -0x1.68ee8840b71bfp+9, 0x1.d2ad22p-2, -1, INEXACT) +T(RN, -0x1.6600000000001p+7, -0x1.68ee8840b71c2p+9, 0x1.a05f9ap-5, 1, INEXACT) +T(RN, -0x1.67fffffffffffp+7, -0x1.6b873b10192a6p+9, 0x1.037e8ep-4, 1, INEXACT) +T(RN, -0x1.6800000000001p+7, -0x1.6b873b10192a9p+9, -0x1.5ae95ep-2, -1, INEXACT) +T(RN, -0x1.69fffffffffffp+7, -0x1.6e20a369e1fc4p+9, 0x1.948398p-2, -1, INEXACT) +T(RN, -0x1.6a00000000001p+7, -0x1.6e20a369e1fc7p+9, -0x1.1c50ap-8, 1, INEXACT) +T(RN, -0x1.6bfffffffffffp+7, -0x1.70bac04e0290cp+9, 0x1.74f3f4p-2, 1, INEXACT) +T(RN, -0x1.6c00000000001p+7, -0x1.70bac04e0290fp+9, -0x1.0985dp-5, -1, INEXACT) +T(RN, -0x1.6dffffffffffcp+7, -0x1.740702d73217fp+9, 0x1.59ce4ap-5, -1, INEXACT) +T(RN, -0x1.6dffffffffffdp+7, -0x1.73e230130fae5p+9, -0x1.9eba32p-4, -1, INEXACT) +T(RN, -0x1.6dffffffffffep+7, -0x1.73ae49cb362f3p+9, 0x1.5157cp-3, -1, INEXACT) +T(RN, -0x1.6dfffffffffffp+7, -0x1.735590bf3a466p+9, -0x1.035d0ep-6, -1, INEXACT) +T(RN, -0x1.6e00000000001p+7, -0x1.735590bf3a469p+9, -0x1.a38e4p-2, 1, INEXACT) +T(RN, -0x1.6e00000000002p+7, -0x1.73ae49cb362f8p+9, 0x1.81fbp-2, 1, INEXACT) +T(RN, -0x1.6e00000000003p+7, -0x1.73e230130faedp+9, -0x1.21b7dcp-2, 1, INEXACT) +T(RN, -0x1.6e00000000004p+7, -0x1.740702d732189p+9, 0x1.ddd80ap-2, 1, INEXACT) +T(RN, -0x1.6e0000000000bp+7, -0x1.74887efab23adp+9, -0x1.55a5fap-4, 1, INEXACT) +T(RN, -0x1.6e0000000000cp+7, -0x1.7493a22b07815p+9, 0x1.a5a52p-2, 1, INEXACT) +T(RN, -0x1.6ffffffffffffp+7, -0x1.75f113c30b1c5p+9, 0x1.7c2ac4p-2, 1, INEXACT) +T(RN, -0x1.7000000000001p+7, -0x1.75f113c30b1c8p+9, -0x1.465526p-6, -1, INEXACT) +T(RN, -0x1.9000000000001p+7, -0x1.a0052aa6564bdp+9, -0x1.b66b66p-6, -1, INEXACT) +T(RN, -0x1.9200000000001p+7, -0x1.a2abfd5850b61p+9, -0x1.33d934p-3, 1, INEXACT) +// half +T(RN, 0x1p-1, 0x1.250d048e7a1bdp-1, -0x1.7abf2ap-5, 1, INEXACT) +T(RN, -0x1p-1, 0x1.43f89a3f0edd6p+0, -0x1.053cd8p-3, -1, INEXACT) +T(RN, -0x1.8p+0, 0x1.b858151820f86p-1, -0x1.1fcfbcp-2, 1, INEXACT) +T(RN, -0x1.4p+1, -0x1.ccbf9f5ed0f16p-5, -0x1.dc4f24p-2, -1, INEXACT) +T(RN, -0x1.cp+1, -0x1.4f1b0fe64a5d8p+0, 0x1.97e8b4p-2, 1, INEXACT) +T(RN, -0x1.2p+2, -0x1.681323a20c77bp+1, -0x1.7b7b92p-7, -1, INEXACT) +T(RN, -0x1.6p+2, -0x1.2124298f0b825p+2, 0x1.cece2cp-2, 1, INEXACT) +T(RN, -0x1.ap+2, -0x1.98efc4eaa371p+2, 0x1.88f454p-5, -1, INEXACT) +T(RN, -0x1.ep+2, -0x1.0cf1f85b8c9f1p+3, -0x1.6735dap-3, 1, INEXACT) +T(RN, -0x1.1p+3, -0x1.516d64647c63p+3, 0x1.4e05f4p-2, -1, INEXACT) +T(RN, -0x1.3p+3, -0x1.9977f97d94f5cp+3, 0x1.f2a81ep-2, 1, INEXACT) +T(RN, -0x1.5p+3, -0x1.e4b670d05976ap+3, -0x1.c992b6p-3, -1, INEXACT) +T(RN, -0x1.7p+3, -0x1.196f12e453063p+4, 0x1.ab76eep-2, 1, INEXACT) +T(RN, -0x1.9p+3, -0x1.41d87554b103ap+4, 0x1.7a46c2p-2, -1, INEXACT) +T(RN, -0x1.bp+3, -0x1.6b7d13453aefdp+4, -0x1.eb62d2p-4, 1, INEXACT) +T(RN, -0x1.dp+3, -0x1.9646635d59cf1p+4, 0x1.fa56e8p-3, -1, INEXACT) +T(RN, -0x1.fp+3, -0x1.c220de6eff08dp+4, 0x1.e0fc88p-7, 1, INEXACT) +T(RN, -0x1.08p+4, -0x1.eefb6ed92d5d8p+4, -0x1.55ee84p-2, -1, INEXACT) +T(RN, -0x1.04p+5, -0x1.48a17af5b8adfp+6, -0x1.185a66p-2, -1, INEXACT) +T(RN, -0x1.02p+6, -0x1.9c37accac44cp+7, -0x1.ae8418p-2, -1, INEXACT) +T(RN, -0x1.01p+7, -0x1.f1b08f3fde793p+8, -0x1.ce9ee6p-3, -1, INEXACT) +T(RN, -0x1.5dp+7, -0x1.6c4e4627eb444p+9, 0x1.f72cccp-2, -1, INEXACT) +T(RN, -0x1.5fp+7, -0x1.6ee3bb5a22ac7p+9, -0x1.d2085ap-4, 1, INEXACT) +T(RN, -0x1.61p+7, -0x1.7179eabb068adp+9, 0x1.fe5a3ap-2, -1, INEXACT) +T(RN, -0x1.63p+7, -0x1.7410d33d4ea93p+9, 0x1.7b506cp-3, 1, INEXACT) +T(RN, -0x1.65p+7, -0x1.76a873d6b9633p+9, -0x1.0cf326p-3, -1, INEXACT) +T(RN, -0x1.008p+8, -0x1.2438be0f58946p+10, -0x1.1a4afep-2, -1, INEXACT) +T(RN, -0x1.ffffffffffffbp+51, -0x1.185966f2b4f1p+57, 0x1.8f1478p-4, 1, INEXACT) +T(RN, -0x1.ffffffffffffdp+51, -0x1.185966f2b4f11p+57, 0x1.ca5574p-3, -1, INEXACT) +T(RN, -0x1.fffffffffffffp+51, -0x1.185966f2b4f12p+57, 0x1.669056p-2, 1, INEXACT) +T(RN, -0x1.0000000000001p+52, inf, 0x0p+0, 1, DIVBYZERO) +// various +T(RN, -0x1.facae9c9e7105p+5, -0x1.92653977bf093p+7, -0x1.bb8aeap-2, 1, INEXACT) +T(RN, -0x1.fdce012aee935p+6, -0x1.ec95c6a6831b4p+8, -0x1.451de8p-2, 1, INEXACT) +T(RN, 0x1.1a781948507bcp+7, 0x1.1630b37a4ed26p+9, -0x1.87943p-2, 1, INEXACT) +T(RN, -0x1.1a781948507bcp+7, -0x1.17e4f39a586b4p+9, -0x1.7be392p-2, 1, INEXACT) +T(RN, 0x1.57p+7, 0x1.6292532a8beaap+9, -0x1.eb11fcp-5, 1, INEXACT) +T(RN, 0x1.573fae561f646p+7, 0x1.62e42fefa39eep+9, 0x1.fda492p-2, 1, INEXACT) +T(RN, 0x1.573fae561f647p+7, 0x1.62e42fefa39efp+9, 0x1.b26186p-3, 1, INEXACT) +T(RN, 0x1.573fae561f648p+7, 0x1.62e42fefa39fp+9, -0x1.2d0c2ep-4, 1, INEXACT) +T(RN, 0x1.edd3c07ee0b0bp+6, 0x1.d59bfdf24c9ffp+8, 0x1.0f21c8p-3, 1, INEXACT) +T(RN, -0x1.edd3c07ee0b0bp+6, -0x1.d9457172bbc24p+8, -0x1.006ddcp-2, 1, INEXACT) +T(RN, 0x1.8b0fcd324d5a2p+3, 0x1.25a113a5c4e94p+4, 0x1.1d5e24p-2, 1, INEXACT) +T(RN, -0x1.8b0fcd324d5a2p+3, -0x1.39914352dc9c6p+4, 0x1.d8544p-3, -1, INEXACT) +T(RN, -0x1.0000000000123p+7, -0x1.d6e31e237e42bp+8, -0x1.5408bep-2, -1, INEXACT) +T(RN, -0x1.0000123456789p+7, -0x1.e786399c9ac9dp+8, 0x1.9c0646p-2, -1, INEXACT) +T(RN, -0x1.0123456789123p+7, -0x1.f2003a26fc4c9p+8, -0x1.68dbc2p-3, -1, INEXACT) +T(RN, -0x1.2345678912345p+7, -0x1.22fb34ce65adcp+9, 0x1.1769e4p-2, 1, INEXACT) +T(RN, -0x1.fffffff987654p+6, -0x1.e040417b7482fp+8, 0x1.8e9c6ap-5, 1, INEXACT) +T(RN, -0x1.fffedcba98765p+6, -0x1.e99901f6c9f42p+8, 0x1.e7aefep-3, 1, INEXACT) +T(RN, -0x1.fedcba9876543p+6, -0x1.eda169220baa1p+8, -0x1.32672ep-2, 1, INEXACT) +T(RN, -0x1.987654321abcep+6, -0x1.7355a02284f1cp+8, -0x1.a1300ep-3, -1, INEXACT) diff --git a/src/math/special/tgamma.h b/src/math/special/tgamma.h index ef551bc..37c87d2 100644 --- a/src/math/special/tgamma.h +++ b/src/math/special/tgamma.h @@ -27,6 +27,18 @@ T(RN, 0x1p+4, 0x1.30777758p+40, 0x0p+0, INEXACT T(RN, 0x1p+5, 0x1.956ad0aae33a4p+112, -0x1.583174p-2, INEXACT) T(RN, 0x1p+6, 0x1.fe478ee34844ap+289, 0x1.82ad54p-4, INEXACT) T(RN, 0x1p+7, 0x1.1e5dfc140e1e5p+709, -0x1.861c04p-3, INEXACT) +T(RN, 0x1.14p+7, 0x1.939c09fd12eebp+779, 0x1.b26568p-2, INEXACT) +T(RN, 0x1.16p+7, 0x1.b3243ac4d8695p+786, 0x1.91554ep-4, INEXACT) +T(RN, 0x1.18p+7, 0x1.d88957d1c3026p+793, 0x1.34f4a8p-2, INEXACT) +T(RN, 0x1.1ap+7, 0x1.026b1c06b6a55p+801, 0x1.88f5ccp-2, INEXACT) +T(RN, 0x1.1cp+7, 0x1.1ca9fcdf65321p+808, -0x1.ae427ap-3, INEXACT) +T(RN, 0x1.1ep+7, 0x1.3bcc9487d4439p+815, 0x1.42ae4p-3, INEXACT) +T(RN, 0x1.2p+7, 0x1.60ce8defbf238p+822, 0x1.fc3f56p-2, INEXACT) +T(RN, 0x1.22p+7, 0x1.8ce85fadb707ep+829, -0x1.c438bep-2, INEXACT) +T(RN, 0x1.52p+7, 0x1.7932fa79d3a43p+1004, 0x1.713c88p-4, INEXACT) +T(RN, 0x1.54p+7, 0x1.f2054eb4d96ecp+1011, -0x1.5e1f86p-2, INEXACT) +T(RN, 0x1.56p+7, 0x1.4ab7864418639p+1019, 0x1.bbf88cp-5, INEXACT) +T(RN, 0x1.58p+7, inf, 0x0p+0, INEXACT|OVERFLOW) T(RN, 0x1p+8, inf, 0x0p+0, INEXACT|OVERFLOW) // close to poles T(RN, 0x1p-50, 0x1.ffffffffffffbp+49, -0x1.877304p-2, INEXACT) @@ -73,6 +85,32 @@ T(RN, -0x1.5bfffffffffffp+7, 0x1.e0a7b14f99fdbp-1005, -0x1.af416ap-2, INEXACT T(RN, -0x1.5c00000000001p+7,-0x1.e0a7b14f9962ap-1005, 0x1.42ddc4p-2, INEXACT) T(RN, -0x1.5dfffffffffffp+7, -0x1.5f90991893bep-1012, 0x1.97c846p-2, INEXACT) T(RN, -0x1.5e00000000001p+7, 0x1.5f909918934c8p-1012, 0x1.731f2ep-2, INEXACT) +T(RN, -0x1.5ffffffffffffp+7, 0x1.ff5df5f533fd3p-1020, -0x1.f234a4p-2, INEXACT) +T(RN, -0x1.6000000000001p+7,-0x1.ff5df5f53357ep-1020, 0x1.492c4p-6, INEXACT) +T(RN, -0x1.61fffffffffffp+7, -0x1.71cd59a44e18p-1027, 0x1.657fa6p-5, INEXACT|UNDERFLOW) +T(RN, -0x1.6200000000001p+7, 0x1.71cd59a44dap-1027, -0x1.8ce5d8p-3, INEXACT|UNDERFLOW) +T(RN, -0x1.63fffffffffffp+7, 0x1.09ecd608d9p-1034, -0x1.e41c8ep-3, INEXACT|UNDERFLOW) +T(RN, -0x1.6400000000001p+7, -0x1.09ecd608d9p-1034, -0x1.9a7d5ep-4, INEXACT|UNDERFLOW) +T(RN, -0x1.65fffffffffffp+7, -0x1.7c5148fdp-1042, -0x1.3af1cp-4, INEXACT|UNDERFLOW) +T(RN, -0x1.6600000000001p+7, 0x1.7c5148fdp-1042, 0x1.42a7aap-4, INEXACT|UNDERFLOW) +T(RN, -0x1.67fffffffffffp+7, 0x1.0e72b1p-1049, -0x1.dc1df4p-4, INEXACT|UNDERFLOW) +T(RN, -0x1.6800000000001p+7, -0x1.0e72b1p-1049, 0x1.dc12fap-4, INEXACT|UNDERFLOW) +T(RN, -0x1.69fffffffffffp+7, -0x1.7e83p-1057, 0x1.98a6fap-3, INEXACT|UNDERFLOW) +T(RN, -0x1.6a00000000001p+7, 0x1.7e83p-1057, -0x1.98a6f2p-3, INEXACT|UNDERFLOW) +T(RN, -0x1.6bfffffffffffp+7, 0x1.0dp-1064, -0x1.3f914ep-4, INEXACT|UNDERFLOW) +T(RN, -0x1.6c00000000001p+7, -0x1.0dp-1064, 0x1.3f914ep-4, INEXACT|UNDERFLOW) +T(RN, -0x1.6dffffffffffcp+7, -0x1p-1074, 0x1.e1554cp-2, INEXACT|UNDERFLOW) +T(RN, -0x1.6dffffffffffdp+7, -0x1p-1073, -0x1.471cdap-5, INEXACT|UNDERFLOW) +T(RN, -0x1.6dffffffffffep+7, -0x1.8p-1073, -0x1.eaab46p-5, INEXACT|UNDERFLOW) +T(RN, -0x1.6dfffffffffffp+7, -0x1.8p-1072, -0x1.eaab46p-4, INEXACT|UNDERFLOW) +T(RN, -0x1.6e00000000001p+7, 0x1.8p-1072, 0x1.eaab46p-4, INEXACT|UNDERFLOW) +T(RN, -0x1.6e00000000002p+7, 0x1.8p-1073, 0x1.eaab46p-5, INEXACT|UNDERFLOW) +T(RN, -0x1.6e00000000003p+7, 0x1p-1073, 0x1.471cdap-5, INEXACT|UNDERFLOW) +T(RN, -0x1.6e00000000004p+7, 0x1p-1074, -0x1.e1554cp-2, INEXACT|UNDERFLOW) +T(RN, -0x1.6e0000000000bp+7, 0x1p-1074, 0x1.dc9b2ap-2, INEXACT|UNDERFLOW) +T(RN, -0x1.6e0000000000cp+7, 0x0p+0, -0x1.f5c71ap-2, INEXACT|UNDERFLOW) +T(RN, -0x1.6ffffffffffffp+7, 0x0p+0, -0x1.05cc0ep-5, INEXACT|UNDERFLOW) +T(RN, -0x1.7000000000001p+7, -0x0p+0, 0x1.05cc0ep-5, INEXACT|UNDERFLOW) T(RN, -0x1.9000000000001p+7, -0x0p+0, 0x1.894d44p-127, INEXACT|UNDERFLOW) T(RN, -0x1.9200000000001p+7, 0x0p+0, -0x1.f4ecp-135, INEXACT|UNDERFLOW) // (negative) half values @@ -100,7 +138,26 @@ T(RN, -0x1.01p+7, -0x1.fae67dea6e7fap-719, 0x1.317978p-3, INEXACT T(RN, -0x1.4fp+7, 0x1.ba80f2ad58fe1p-1000, -0x1.097458p-2, INEXACT) T(RN, -0x1.51p+7,-0x1.50252eda48291p-1007, 0x1.27d8c2p-2, INEXACT) T(RN, -0x1.53p+7, 0x1.fbb03aae1cf04p-1015, -0x1.b282acp-3, INEXACT) +T(RN, -0x1.55p+7,-0x1.7d2374dfcda7ap-1022, -0x1.c68fa4p-3, INEXACT) +T(RN, -0x1.57p+7, 0x1.1c7702e43cfp-1029, -0x1.876cep-3, INEXACT|UNDERFLOW) +T(RN, -0x1.59p+7, -0x1.a6299204dp-1037, -0x1.ccc1c8p-3, INEXACT|UNDERFLOW) +T(RN, -0x1.5bp+7, 0x1.37738298p-1044, -0x1.2471f8p-3, INEXACT|UNDERFLOW) +T(RN, -0x1.5dp+7, -0x1.c8ea04p-1052, -0x1.a89b2ep-2, INEXACT|UNDERFLOW) +T(RN, -0x1.5fp+7, 0x1.4d4p-1059, 0x1.14a72cp-2, INEXACT|UNDERFLOW) +T(RN, -0x1.61p+7, -0x1.e4p-1067, -0x1.4c43aap-2, INEXACT|UNDERFLOW) +T(RN, -0x1.63p+7, 0x1p-1074, -0x1.723acp-2, INEXACT|UNDERFLOW) +T(RN, -0x1.65p+7, -0x0p+0, 0x1.f3e44ep-8, INEXACT|UNDERFLOW) T(RN, -0x1.008p+8, -0x0p+0, 0x0p+0, INEXACT|UNDERFLOW) -// reflection formula tests +// various tests T(RN, -0x1.facae9c9e7105p+5, 0x1.a98422d742f9fp-291, 0x1.dc5df6p-2, INEXACT) T(RN, -0x1.fdce012aee935p+6, 0x1.46480e4894aafp-711, -0x1.0c602ap-2, INEXACT) +T(RN, 0x1.1a781948507bcp+7, 0x1.9c3e83141654dp+802, 0x1.09f0d4p-3, INEXACT) +T(RN, -0x1.1a781948507bcp+7, 0x1.50c668ed04665p-808, -0x1.dfe3c6p-3, INEXACT) +T(RN, 0x1.57p+7, 0x1.0e1863dcad789p+1023, -0x1.4a306cp-3, INEXACT) +T(RN, 0x1.573fae561f646p+7, 0x1.ffffffffff92cp+1023, -0x1.d9f23ep-2, INEXACT) +T(RN, 0x1.573fae561f647p+7, 0x1.ffffffffffe51p+1023, 0x1.5b4ff6p-4, INEXACT) +T(RN, 0x1.573fae561f648p+7, inf, 0x0p+0, INEXACT|OVERFLOW) +T(RN, 0x1.edd3c07ee0b0bp+6, 0x1.6acf6a2fdfaefp+677, 0x1.4cab56p-2, INEXACT) +T(RN, -0x1.edd3c07ee0b0bp+6, 0x1.28e9bf97c82ep-683, -0x1.064766p-2, INEXACT) +T(RN, 0x1.8b0fcd324d5a2p+3, 0x1.64165e040d97cp+26, 0x1.faf78cp-2, INEXACT) +T(RN, -0x1.8b0fcd324d5a2p+3, -0x1.a77825d8a2292p-29, -0x1.4c75e2p-2, INEXACT) -- 2.11.4.GIT