From 3ba0ac10fa9dd577dfe2f36c47bc95467d9a1ca2 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 13 Aug 2015 23:23:23 +0000 Subject: Add more random libm-test inputs. This patch adds more test inputs to various libm functions found through random generation to have larger ulps errors than previously listed in libm-test-ulp, on at least one of x86_64 and x86. Tested for x86_64 and x86. * math/auto-libm-test-in: Add more tests of acos, acosh, asin, asinh, atan, atan2, atanh, cabs, cbrt, cosh, csqrt, erf, erfc, exp, exp2, lgamma, log, log1p, log2, pow, sin, sincos, tan, tanh and tgamma. * math/auto-libm-test-out: Regenerated. * sysdeps/i386/fpu/libm-test-ulps: Update. * sysdeps/x86_64/fpu/libm-test-ulps: Likewise. --- sysdeps/i386/fpu/libm-test-ulps | 120 +++++++++++++++++++++++------------- sysdeps/x86_64/fpu/libm-test-ulps | 126 +++++++++++++++++++------------------- 2 files changed, 141 insertions(+), 105 deletions(-) (limited to 'sysdeps') diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps index de53451879..8263717281 100644 --- a/sysdeps/i386/fpu/libm-test-ulps +++ b/sysdeps/i386/fpu/libm-test-ulps @@ -2,6 +2,8 @@ # Maximal error of functions: Function: "acos": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 @@ -14,10 +16,14 @@ ildouble: 2 ldouble: 2 Function: "acos_upward": +double: 1 +idouble: 1 ildouble: 2 ldouble: 2 Function: "acosh": +double: 1 +idouble: 1 ildouble: 4 ldouble: 2 @@ -34,6 +40,8 @@ ildouble: 6 ldouble: 4 Function: "acosh_upward": +double: 1 +idouble: 1 ildouble: 4 ldouble: 3 @@ -44,10 +52,14 @@ ildouble: 1 ldouble: 1 Function: "asin_downward": +double: 1 +idouble: 1 ildouble: 2 ldouble: 2 Function: "asin_towardzero": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 @@ -62,18 +74,20 @@ ldouble: 1 Function: "asinh": double: 1 idouble: 1 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "asinh_downward": double: 1 float: 1 +idouble: 1 ildouble: 5 ldouble: 5 Function: "asinh_towardzero": double: 1 float: 1 +idouble: 1 ildouble: 4 ldouble: 4 @@ -83,13 +97,17 @@ float: 1 idouble: 1 ifloat: 1 ildouble: 5 -ldouble: 4 +ldouble: 5 Function: "atan": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 Function: "atan2": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 @@ -165,12 +183,15 @@ ldouble: 3 Function: "atanh_upward": double: 1 +float: 1 idouble: 1 ifloat: 1 ildouble: 5 ldouble: 5 Function: "cabs": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 @@ -595,8 +616,8 @@ double: 1 float: 1 idouble: 1 ifloat: 1 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "cbrt_downward": double: 1 @@ -962,6 +983,7 @@ ldouble: 2 Function: "cosh": double: 1 +idouble: 1 ildouble: 2 ldouble: 2 @@ -1230,8 +1252,8 @@ double: 1 float: 1 idouble: 1 ifloat: 1 -ildouble: 3 -ldouble: 3 +ildouble: 4 +ldouble: 4 Function: Real part of "ctan": double: 1 @@ -1386,7 +1408,9 @@ ildouble: 1 ldouble: 1 Function: "erf_upward": +double: 1 float: 1 +idouble: 1 ifloat: 1 ildouble: 1 ldouble: 1 @@ -1420,8 +1444,8 @@ double: 2 float: 2 idouble: 2 ifloat: 2 -ildouble: 4 -ldouble: 4 +ildouble: 5 +ldouble: 5 Function: "exp": double: 1 @@ -1470,6 +1494,8 @@ ildouble: 1 ldouble: 1 Function: "exp2_towardzero": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 @@ -1486,12 +1512,14 @@ ldouble: 1 Function: "exp_towardzero": double: 1 idouble: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 Function: "exp_upward": double: 1 +float: 1 idouble: 1 +ifloat: 1 ildouble: 1 ldouble: 1 @@ -1710,6 +1738,8 @@ ildouble: 4 ldouble: 4 Function: "log": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 @@ -1754,16 +1784,16 @@ double: 1 float: 1 idouble: 1 ifloat: 1 -ildouble: 3 -ldouble: 3 +ildouble: 4 +ldouble: 4 Function: "log1p_towardzero": double: 1 float: 1 idouble: 1 ifloat: 1 -ildouble: 3 -ldouble: 3 +ildouble: 4 +ldouble: 4 Function: "log1p_upward": double: 1 @@ -1780,6 +1810,8 @@ ildouble: 1 ldouble: 1 Function: "log2_downward": +double: 1 +idouble: 1 ildouble: 1 ldouble: 1 @@ -1884,8 +1916,8 @@ ldouble: 2 Function: "sin_towardzero": double: 1 idouble: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 Function: "sin_upward": double: 1 @@ -1946,24 +1978,24 @@ ldouble: 5 Function: "tan": float: 1 ifloat: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 Function: "tan_downward": double: 1 float: 2 idouble: 1 ifloat: 2 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "tan_towardzero": double: 1 float: 2 idouble: 1 ifloat: 2 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "tan_upward": double: 1 @@ -1974,8 +2006,10 @@ ildouble: 2 ldouble: 2 Function: "tanh": -ildouble: 2 -ldouble: 2 +double: 1 +idouble: 1 +ildouble: 3 +ldouble: 3 Function: "tanh_downward": double: 1 @@ -2002,36 +2036,36 @@ ildouble: 5 ldouble: 4 Function: "tgamma": -double: 2 +double: 3 float: 3 -idouble: 2 +idouble: 3 ifloat: 3 -ildouble: 4 -ldouble: 4 +ildouble: 5 +ldouble: 5 Function: "tgamma_downward": double: 3 -float: 3 +float: 4 idouble: 3 -ifloat: 3 -ildouble: 3 -ldouble: 3 +ifloat: 4 +ildouble: 5 +ldouble: 5 Function: "tgamma_towardzero": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 4 -ldouble: 4 +double: 4 +float: 4 +idouble: 4 +ifloat: 4 +ildouble: 5 +ldouble: 5 Function: "tgamma_upward": -double: 3 +double: 4 float: 4 -idouble: 3 +idouble: 4 ifloat: 4 -ildouble: 4 -ldouble: 4 +ildouble: 5 +ldouble: 5 Function: "y0": double: 1 diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index b5f2680d04..aeb3d492f1 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -40,9 +40,9 @@ ildouble: 2 ldouble: 2 Function: "acosh_downward": -double: 1 +double: 2 float: 1 -idouble: 1 +idouble: 2 ifloat: 1 ildouble: 4 ldouble: 4 @@ -57,9 +57,9 @@ ldouble: 4 Function: "acosh_upward": double: 2 -float: 1 +float: 2 idouble: 2 -ifloat: 1 +ifloat: 2 ildouble: 3 ldouble: 3 @@ -98,8 +98,8 @@ double: 1 float: 1 idouble: 1 ifloat: 1 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "asinh_downward": double: 3 @@ -122,8 +122,8 @@ double: 3 float: 3 idouble: 3 ifloat: 3 -ildouble: 4 -ldouble: 4 +ildouble: 5 +ldouble: 5 Function: "atan": float: 1 @@ -186,9 +186,9 @@ ildouble: 1 ldouble: 1 Function: "atanh": -double: 1 +double: 2 float: 2 -idouble: 1 +idouble: 2 ifloat: 2 ildouble: 3 ldouble: 3 @@ -1280,9 +1280,9 @@ ildouble: 4 ldouble: 4 Function: Real part of "csqrt_towardzero": -double: 3 +double: 4 float: 3 -idouble: 3 +idouble: 4 ifloat: 3 ildouble: 4 ldouble: 4 @@ -1308,8 +1308,8 @@ double: 3 float: 3 idouble: 3 ifloat: 3 -ildouble: 3 -ldouble: 3 +ildouble: 4 +ldouble: 4 Function: Real part of "ctan": double: 1 @@ -1480,9 +1480,9 @@ ildouble: 3 ldouble: 3 Function: "erfc_downward": -double: 4 +double: 5 float: 6 -idouble: 4 +idouble: 5 ifloat: 6 ildouble: 4 ldouble: 4 @@ -1496,12 +1496,12 @@ ildouble: 4 ldouble: 4 Function: "erfc_upward": -double: 4 +double: 5 float: 6 -idouble: 4 +idouble: 5 ifloat: 6 -ildouble: 4 -ldouble: 4 +ildouble: 5 +ldouble: 5 Function: "exp": ildouble: 1 @@ -1578,12 +1578,14 @@ ldouble: 1 Function: "exp_towardzero": double: 1 idouble: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 Function: "exp_upward": double: 1 +float: 1 idouble: 1 +ifloat: 1 ildouble: 1 ldouble: 1 @@ -1665,9 +1667,9 @@ ldouble: 6 Function: "gamma_upward": double: 4 -float: 3 +float: 4 idouble: 4 -ifloat: 3 +ifloat: 4 ildouble: 4 ldouble: 4 @@ -1817,9 +1819,9 @@ ldouble: 6 Function: "lgamma_upward": double: 4 -float: 3 +float: 4 idouble: 4 -ifloat: 3 +ifloat: 4 ildouble: 4 ldouble: 4 @@ -1874,16 +1876,16 @@ double: 2 float: 2 idouble: 2 ifloat: 2 -ildouble: 3 -ldouble: 3 +ildouble: 4 +ldouble: 4 Function: "log1p_towardzero": double: 2 float: 2 idouble: 2 ifloat: 2 -ildouble: 3 -ldouble: 3 +ildouble: 4 +ldouble: 4 Function: "log1p_upward": double: 2 @@ -2001,25 +2003,25 @@ ldouble: 2 Function: "pow_downward": double: 1 -float: 3 +float: 4 idouble: 1 -ifloat: 3 +ifloat: 4 ildouble: 4 ldouble: 4 Function: "pow_towardzero": double: 1 -float: 4 +float: 8 idouble: 1 -ifloat: 4 +ifloat: 8 ildouble: 1 ldouble: 1 Function: "pow_upward": double: 1 -float: 4 +float: 8 idouble: 1 -ifloat: 4 +ifloat: 8 ildouble: 2 ldouble: 2 @@ -2056,8 +2058,8 @@ ldouble: 2 Function: "sin_towardzero": double: 1 idouble: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 Function: "sin_upward": double: 1 @@ -2111,10 +2113,10 @@ Function: "sincos_vlen16": float: 1 Function: "sincos_vlen2": -double: 1 +double: 2 Function: "sincos_vlen4": -double: 1 +double: 2 float: 1 Function: "sincos_vlen4_avx2": @@ -2162,24 +2164,24 @@ ldouble: 5 Function: "tan": float: 1 ifloat: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 Function: "tan_downward": double: 1 float: 2 idouble: 1 ifloat: 2 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "tan_towardzero": double: 1 float: 1 idouble: 1 ifloat: 1 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "tan_upward": double: 1 @@ -2194,8 +2196,8 @@ double: 2 float: 2 idouble: 2 ifloat: 2 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "tanh_downward": double: 3 @@ -2222,36 +2224,36 @@ ildouble: 4 ldouble: 4 Function: "tgamma": -double: 4 +double: 5 float: 5 -idouble: 4 +idouble: 5 ifloat: 5 -ildouble: 4 -ldouble: 4 +ildouble: 5 +ldouble: 5 Function: "tgamma_downward": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 -ildouble: 3 -ldouble: 3 +double: 5 +float: 5 +idouble: 5 +ifloat: 5 +ildouble: 5 +ldouble: 5 Function: "tgamma_towardzero": double: 5 float: 5 idouble: 5 ifloat: 5 -ildouble: 4 -ldouble: 4 +ildouble: 5 +ldouble: 5 Function: "tgamma_upward": double: 5 float: 5 idouble: 5 ifloat: 5 -ildouble: 4 -ldouble: 4 +ildouble: 5 +ldouble: 5 Function: "y0": double: 2 -- cgit 1.4.1