From ccc074aa35479e5b348bb85f72f6ac3b59ff8bb8 Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Fri, 24 Feb 2012 15:14:42 +0100 Subject: [PATCH] m68k: update libm test ULPs --- ChangeLog.m68k | 2 + sysdeps/m68k/m680x0/fpu/libm-test-ulps | 163 ++++++++++++++++++++----- 2 files changed, 134 insertions(+), 31 deletions(-) diff --git a/ChangeLog.m68k b/ChangeLog.m68k index b53feed41a..e40c284141 100644 --- a/ChangeLog.m68k +++ b/ChangeLog.m68k @@ -1,5 +1,7 @@ 2012-02-24 Andreas Schwab + * sysdeps/m68k/m680x0/fpu/libm-test-ulps: Update ULPs. + * sysdeps/m68k/m680x0/fpu/s_expm1.c: Set errno to ERANGE if argument causes overflow. * sysdeps/m68k/m680x0/fpu/s_expm1f.c: Include . diff --git a/sysdeps/m68k/m680x0/fpu/libm-test-ulps b/sysdeps/m68k/m680x0/fpu/libm-test-ulps index 854c10cb1a..5f965d2f2c 100644 --- a/sysdeps/m68k/m680x0/fpu/libm-test-ulps +++ b/sysdeps/m68k/m680x0/fpu/libm-test-ulps @@ -79,14 +79,16 @@ ildouble: 5 ldouble: 5 Test "Imaginary part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i": double: 13 -float: 1 +float: 6 idouble: 13 -ifloat: 1 +ifloat: 6 ildouble: 6 ldouble: 6 Test "Real part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Test "Imaginary part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i": double: 1 float: 1 @@ -107,6 +109,8 @@ ldouble: 1 # catanh Test "Real part of: catanh (-2 - 3 i) == -0.14694666622552975204743278515471595 - 1.3389725222944935611241935759091443 i": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 @@ -272,9 +276,11 @@ ifloat: 1 Test "Imaginary part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i) == 0.331825439177608832276067945276730566 + 0.131338600281188544930936345230903032 i": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 Test "Real part of: cpow (0.75 + 1.25 i, 0.75 + 1.25 i) == 0.117506293914473555420279832210420483 + 0.346552747708338676483025352060418001 i": -float: 1 -ifloat: 1 +float: 3 +ifloat: 3 ildouble: 9 ldouble: 9 Test "Imaginary part of: cpow (0.75 + 1.25 i, 0.75 + 1.25 i) == 0.117506293914473555420279832210420483 + 0.346552747708338676483025352060418001 i": @@ -294,9 +300,9 @@ ildouble: 1 ldouble: 1 Test "Real part of: cpow (0.75 + 1.25 i, 1.0 + 1.0 i) == 0.0846958290317209430433805274189191353 + 0.513285749182902449043287190519090481 i": double: 1 -float: 2 +float: 3 idouble: 1 -ifloat: 2 +ifloat: 3 ildouble: 15 ldouble: 15 Test "Imaginary part of: cpow (0.75 + 1.25 i, 1.0 + 1.0 i) == 0.0846958290317209430433805274189191353 + 0.513285749182902449043287190519090481 i": @@ -366,6 +372,9 @@ ifloat: 1 Test "Real part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i": double: 1 idouble: 1 +ildouble: 2 +ldouble: 2 +Test "Imaginary part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i": ildouble: 1 ldouble: 1 Test "Real part of: ctan (0.75 + 1.25 i) == 0.160807785916206426725166058173438663 + 0.975363285031235646193581759755216379 i": @@ -376,6 +385,9 @@ ildouble: 2 ldouble: 2 # ctanh +Test "Real part of: ctanh (-2 - 3 i) == -0.965385879022133124278480269394560686 + 0.988437503832249372031403430350121098e-2 i": +ildouble: 1 +ldouble: 1 Test "Imaginary part of: ctanh (-2 - 3 i) == -0.965385879022133124278480269394560686 + 0.988437503832249372031403430350121098e-2 i": ildouble: 1 ldouble: 1 @@ -397,9 +409,14 @@ ifloat: 1 Test "erfc (1.25) == 0.0770998717435417698634765188027188596": ildouble: 1 ldouble: 1 +Test "erfc (2.0) == 0.00467773498104726583793074363274707139": +float: 1 +ifloat: 1 Test "erfc (4.125) == 0.542340079956506600531223408575531062e-8": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 # expm1 Test "expm1 (1) == M_El - 1.0": @@ -447,8 +464,8 @@ ifloat: 1 Test "j0 (-4.0) == -3.9714980986384737228659076845169804197562E-1": float: 1 ifloat: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 Test "j0 (0.75) == 0.864242275166648623555731103820923211": float: 1 ifloat: 1 @@ -461,8 +478,11 @@ idouble: 1 Test "j0 (4.0) == -3.9714980986384737228659076845169804197562E-1": float: 1 ifloat: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 +Test "j0 (8.0) == 0.171650807137553906090869407851972001": +float: 1 +ifloat: 1 # j1 Test "j1 (-1.0) == -0.440050585744933515959682203718914913": @@ -492,8 +512,8 @@ ldouble: 1 Test "jn (0, -4.0) == -3.9714980986384737228659076845169804197562E-1": float: 1 ifloat: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 Test "jn (0, 0.75) == 0.864242275166648623555731103820923211": float: 1 ifloat: 1 @@ -506,8 +526,11 @@ idouble: 1 Test "jn (0, 4.0) == -3.9714980986384737228659076845169804197562E-1": float: 1 ifloat: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 +Test "jn (0, 8.0) == 0.171650807137553906090869407851972001": +float: 1 +ifloat: 1 Test "jn (1, -1.0) == -0.440050585744933515959682203718914913": float: 1 ifloat: 1 @@ -539,7 +562,9 @@ Test "jn (10, 0.125) == 0.250543369809369890173993791865771547e-18": float: 1 ifloat: 1 Test "jn (10, 0.75) == 0.149621713117596814698712483621682835e-10": +double: 1 float: 2 +idouble: 1 ifloat: 2 ildouble: 2 ldouble: 2 @@ -560,6 +585,11 @@ float: 2 ifloat: 2 ildouble: 1 ldouble: 1 +Test "jn (2, 2.4048255576957729) == 0.43175480701968038399746111312430703": +float: 1 +ifloat: 1 +ildouble: 1 +ldouble: 1 Test "jn (3, -1.0) == -0.0195633539826684059189053216217515083": float: 1 ifloat: 1 @@ -578,8 +608,45 @@ ifloat: 1 ildouble: 1 ldouble: 1 Test "jn (3, 2.0) == 0.128943249474402051098793332969239835": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 +Test "jn (3, 2.4048255576957729) == 0.19899990535769083404042146764530813": +float: 2 +ifloat: 2 +ildouble: 1 +ldouble: 1 +Test "jn (4, 2.4048255576957729) == 0.647466661641779720084932282551219891E-1": +float: 1 +ifloat: 1 +ildouble: 2 +ldouble: 2 +Test "jn (5, 2.4048255576957729) == 0.163892432048058525099230549946147698E-1": +double: 1 +float: 2 +idouble: 1 +ifloat: 2 +ildouble: 3 +ldouble: 3 +Test "jn (6, 2.4048255576957729) == 0.34048184720278336646673682895929161E-2": +float: 4 +ifloat: 4 +ildouble: 1 +ldouble: 1 +Test "jn (7, 2.4048255576957729) == 0.60068836573295394221291569249883076E-3": +float: 5 +ifloat: 5 +Test "jn (8, 2.4048255576957729) == 0.92165786705344923232879022467054148E-4": +float: 4 +ifloat: 4 +ildouble: 2 +ldouble: 2 +Test "jn (9, 2.4048255576957729) == 0.12517270977961513005428966643852564E-4": +float: 3 +ifloat: 3 +ildouble: 2 +ldouble: 2 # lgamma Test "lgamma (-0.5) == log(2*sqrt(pi))": @@ -622,6 +689,8 @@ ldouble: 2 Test "log10 (e) == log10(e)": float: 1 ifloat: 1 +ildouble: 1 +ldouble: 1 # log1p Test "log1p (-0.25) == -0.287682072451780927439219005993827432": @@ -637,6 +706,14 @@ ldouble: 1 Test "pow (0.75, 1.25) == 0.697953644326574699205914060237425566": ildouble: 1 ldouble: 1 +Test "pow (0x1p64, 0.125) == 256": +ildouble: 1 +ldouble: 1 +Test "pow (256, 8) == 0x1p64": +float: 1 +ifloat: 1 +ildouble: 7 +ldouble: 7 # sincos Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.5 in cos_res": @@ -706,16 +783,22 @@ ildouble: 1 ldouble: 1 Test "y0 (0.75) == -0.137172769385772397522814379396581855": double: 1 +float: 1 idouble: 1 +ifloat: 1 ildouble: 2 ldouble: 2 Test "y0 (1.0) == 0.0882569642156769579829267660235151628": ildouble: 1 ldouble: 1 Test "y0 (1.5) == 0.382448923797758843955068554978089862": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 Test "y0 (10.0) == 0.0556711672835993914244598774101900481": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 Test "y0 (2.0) == 0.510375672649745119596606592727157873": @@ -743,6 +826,8 @@ ifloat: 2 ildouble: 1 ldouble: 1 Test "y1 (8.0) == -0.158060461731247494255555266187483550": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 @@ -756,16 +841,22 @@ ildouble: 1 ldouble: 1 Test "yn (0, 0.75) == -0.137172769385772397522814379396581855": double: 1 +float: 1 idouble: 1 +ifloat: 1 ildouble: 2 ldouble: 2 Test "yn (0, 1.0) == 0.0882569642156769579829267660235151628": ildouble: 1 ldouble: 1 Test "yn (0, 1.5) == 0.382448923797758843955068554978089862": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 Test "yn (0, 10.0) == 0.0556711672835993914244598774101900481": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 Test "yn (0, 2.0) == 0.510375672649745119596606592727157873": @@ -796,6 +887,8 @@ ifloat: 2 ildouble: 1 ldouble: 1 Test "yn (1, 8.0) == -0.158060461731247494255555266187483550": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 Test "yn (10, 0.125) == -127057845771019398.252538486899753195": @@ -888,17 +981,17 @@ ldouble: 2 Function: Real part of "casinh": double: 6 -float: 19 +float: 1 idouble: 6 -ifloat: 19 +ifloat: 1 ildouble: 5 ldouble: 5 Function: Imaginary part of "casinh": double: 13 -float: 1 +float: 6 idouble: 13 -ifloat: 1 +ifloat: 6 ildouble: 6 ldouble: 6 @@ -913,6 +1006,8 @@ idouble: 1 ifloat: 1 Function: Real part of "catanh": +float: 1 +ifloat: 1 ildouble: 1 ldouble: 1 @@ -988,17 +1083,17 @@ ldouble: 1 Function: Real part of "cpow": double: 1 -float: 2 +float: 3 idouble: 1 -ifloat: 2 +ifloat: 3 ildouble: 15 ldouble: 15 Function: Imaginary part of "cpow": double: 2 -float: 6 +float: 5 idouble: 2 -ifloat: 6 +ifloat: 5 ildouble: 2 ldouble: 2 @@ -1025,12 +1120,16 @@ ifloat: 1 Function: Real part of "ctan": double: 1 idouble: 1 +ildouble: 2 +ldouble: 2 + +Function: Imaginary part of "ctan": ildouble: 1 ldouble: 1 -Function: Imaginary part of "ctan": -ildouble: 2 -ldouble: 2 +Function: Real part of "ctanh": +ildouble: 1 +ldouble: 1 Function: Imaginary part of "ctanh": double: 1 @@ -1063,8 +1162,8 @@ double: 1 float: 1 idouble: 1 ifloat: 1 -ildouble: 1 -ldouble: 1 +ildouble: 2 +ldouble: 2 Function: "j1": float: 2 @@ -1077,8 +1176,8 @@ double: 1 float: 5 idouble: 1 ifloat: 5 -ildouble: 2 -ldouble: 2 +ildouble: 3 +ldouble: 3 Function: "lgamma": double: 1 @@ -1109,8 +1208,10 @@ ildouble: 1 ldouble: 1 Function: "pow": -ildouble: 1 -ldouble: 1 +float: 1 +ifloat: 1 +ildouble: 7 +ldouble: 7 Function: "sincos": double: 1