math: add test vectors for exp functions
authorSzabolcs Nagy <nsz@port70.net>
Sun, 18 Nov 2012 21:31:17 +0000 (22:31 +0100)
committerSzabolcs Nagy <nsz@port70.net>
Sun, 18 Nov 2012 21:31:17 +0000 (22:31 +0100)
src/math/special/exp.h
src/math/special/expf.h
src/math/special/expl.h

index 5eab46b..b4885ec 100644 (file)
@@ -5,3 +5,7 @@ T(RN,                 -0x1p+0,    0x1.78b56362cef38p-2,   0x1.ca8a42p-3, INEXACT
 T(RN,                     inf,                     inf,          0x0p+0, 0)
 T(RN,                    -inf,                  0x0p+0,          0x0p+0, 0)
 T(RN,                     nan,                     nan,          0x0p+0, 0)
+T(RN,    0x1.0a2b2ffffffffp+0,    0x1.6a09f771c562ap+1,   0x1.81164cp-3, INEXACT)
+T(RN,   -0x1.0a2b2ffffffffp+0,    0x1.6a09d55e22e44p-2,   0x1.02caeep-2, INEXACT)
+T(RN,           0x1.0a2b28p+0,    0x1.6a09ec2175d46p+1,  -0x1.ac74b4p-2, INEXACT)
+T(RN,            0x1.0a2b3p+0,    0x1.6a09f771c562bp+1,   -0x1.cf397p-3, INEXACT)
index 9749028..1062d08 100644 (file)
@@ -5,3 +5,10 @@ T(RN,         -0x1p+0,   0x1.78b564p-2,   0x1.3a621ap-2, INEXACT)
 T(RN,             inf,             inf,          0x0p+0, 0)
 T(RN,            -inf,          0x0p+0,          0x0p+0, 0)
 T(RN,             nan,             nan,          0x0p+0, 0)
+T(RN,   0x1.62e42ep+6, 0x1.ffff08p+127,    -0x1.7364p-4, INEXACT)
+T(RN,    0x1.62e43p+6,             inf,          0x0p+0, INEXACT|OVERFLOW)
+T(RN,  -0x1.9fe368p+6,        0x1p-149,   0x1.ffffeap-2, INEXACT|UNDERFLOW)
+T(RN,  -0x1.9fe36ap+6,          0x0p+0,  -0x1.ffff16p-2, INEXACT|UNDERFLOW)
+T(RN,   0x1.62e42ep-2,   0x1.6a09e6p+0,   0x1.1d2196p-3, INEXACT)
+T(RN,    0x1.62e43p-2,   0x1.6a09e6p+0,  -0x1.b6f236p-3, INEXACT)
+T(RN,   0x1.62e432p-2,   0x1.6a09e8p+0,   0x1.ba7cfep-2, INEXACT)
index c4d347e..bba4842 100644 (file)
@@ -5,3 +5,26 @@ T(RN,                       -0x1p+0L,       0x1.78b56362cef37c6ap-2L,  -0x1.d6f6
 T(RN,                            inf,                            inf,          0x0p+0, 0)
 T(RN,                           -inf,                        0x0p+0L,          0x0p+0, 0)
 T(RN,                            nan,                            nan,          0x0p+0, 0)
+T(RN,                       0x1p-65L,                        0x1p+0L,         -0x1p-2, INEXACT)
+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,       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)
+T(RN,      -0x1.8b0a3d70a3d70a3ep+3L,       0x1.240572f47cb85b4p-18L,   0x1.7eb422p-3, INEXACT)
+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.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+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)
+T(RN,     -0x1.643bfcfe13c57554p+13L,                        0x0p+0L,         -0x1p-1, INEXACT|UNDERFLOW)
+T(RN,       0x1.62e42fefa39ef356p-2L,       0x1.6a09e667f3bcc908p+0L,   -0x1.21c97p-4, INEXACT)
+T(RN,       0x1.62e42fefa39ef354p-2L,       0x1.6a09e667f3bcc908p+0L,   0x1.21978ap-2, INEXACT)
+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)