diff options
Diffstat (limited to 'sysdeps/mips')
-rw-r--r-- | sysdeps/mips/fpu/libm-test-ulps | 630 |
1 files changed, 202 insertions, 428 deletions
diff --git a/sysdeps/mips/fpu/libm-test-ulps b/sysdeps/mips/fpu/libm-test-ulps index 1c189098a8..e2091f8a15 100644 --- a/sysdeps/mips/fpu/libm-test-ulps +++ b/sysdeps/mips/fpu/libm-test-ulps @@ -1,61 +1,18 @@ # Begin of automatic generation -# asin -Test "asin (-0.5) == -pi/6": -float: 2 -ifloat: 2 -Test "asin (0.5) == pi/6": -float: 2 -ifloat: 2 -Test "asin (0.7) == 0.77539749661075306374035335271498708": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - # atan2 -Test "atan2 (0.7, -1.0) == 2.530866689200584621918884506789267": +Test "atan2 (-0.75, -1.0) == -2.49809154479650885165983415456218025": float: 3 ifloat: 3 -Test "atan2 (-0.7, -1.0) == -2.530866689200584621918884506789267": +Test "atan2 (0.75, -1.0) == 2.49809154479650885165983415456218025": float: 3 ifloat: 3 -Test "atan2 (1.4, -0.93) == 2.1571487668237843754887415992772736": -float: 4 -ifloat: 4 - -# atanh -Test "atanh (0.7) == 0.8673005276940531944": -double: 1 -idouble: 1 - -# cabs -Test "cabs (-0.7 + 12.4 i) == 12.419742348374220601176836866763271": -float: 1 -ifloat: 1 -Test "cabs (-0.7 - 12.4 i) == 12.419742348374220601176836866763271": -float: 1 -ifloat: 1 -Test "cabs (-12.4 + 0.7 i) == 12.419742348374220601176836866763271": -float: 1 -ifloat: 1 -Test "cabs (-12.4 - 0.7 i) == 12.419742348374220601176836866763271": -float: 1 -ifloat: 1 -Test "cabs (0.7 + 1.2 i) == 1.3892443989449804508432547041028554": -double: 1 -idouble: 1 -Test "cabs (0.7 + 12.4 i) == 12.419742348374220601176836866763271": +Test "atan2 (1.390625, 0.9296875) == 0.981498387184244311516296577615519772": float: 1 ifloat: 1 -# cacos -Test "Real part of: cacos (0.7 + 1.2 i) == 1.1351827477151551088992008271819053 - 1.0927647857577371459105272080819308 i": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cacos (0.7 + 1.2 i) == 1.1351827477151551088992008271819053 - 1.0927647857577371459105272080819308 i": +# atanh +Test "atanh (0.75) == 0.972955074527656652552676371721589865": float: 1 ifloat: 1 @@ -70,20 +27,12 @@ double: 1 float: 3 idouble: 1 ifloat: 3 -Test "Real part of: cacosh (0.7 + 1.2 i) == 1.0927647857577371459105272080819308 + 1.1351827477151551088992008271819053 i": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 # casin -Test "Real part of: casin (0.7 + 1.2 i) == 0.4356135790797415103321208644578462 + 1.0927647857577371459105272080819308 i": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -Test "Imaginary part of: casin (0.7 + 1.2 i) == 0.4356135790797415103321208644578462 + 1.0927647857577371459105272080819308 i": +Test "Real part of: casin (0.75 + 1.25 i) == 0.453276177638793913448921196101971749 + 1.13239363160530819522266333696834467 i": +double: 1 float: 1 +idouble: 1 ifloat: 1 # casinh @@ -97,11 +46,13 @@ double: 3 float: 6 idouble: 3 ifloat: 6 -Test "Real part of: casinh (0.7 + 1.2 i) == 0.97865459559367387689317593222160964 + 0.91135418953156011567903546856170941 i": +Test "Real part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i": +float: 1 +ifloat: 1 +Test "Imaginary part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i": double: 1 -idouble: 1 -Test "Imaginary part of: casinh (0.7 + 1.2 i) == 0.97865459559367387689317593222160964 + 0.91135418953156011567903546856170941 i": float: 1 +idouble: 1 ifloat: 1 # catan @@ -113,12 +64,9 @@ double: 1 float: 1 idouble: 1 ifloat: 1 -Test "Real part of: catan (0.7 + 1.2 i) == 1.0785743834118921877443707996386368 + 0.57705737765343067644394541889341712 i": +Test "Real part of: catan (0.75 + 1.25 i) == 1.10714871779409050301706546017853704 + 0.549306144334054845697622618461262852 i": float: 4 ifloat: 4 -Test "Imaginary part of: catan (0.7 + 1.2 i) == 1.0785743834118921877443707996386368 + 0.57705737765343067644394541889341712 i": -double: 1 -idouble: 1 # catanh Test "Real part of: catanh (-2 - 3 i) == -0.14694666622552975204743278515471595 - 1.3389725222944935611241935759091443 i": @@ -127,20 +75,21 @@ idouble: 4 Test "Imaginary part of: catanh (-2 - 3 i) == -0.14694666622552975204743278515471595 - 1.3389725222944935611241935759091443 i": float: 4 ifloat: 4 -Test "Real part of: catanh (0.7 + 1.2 i) == 0.2600749516525135959200648705635915 + 0.97024030779509898497385130162655963 i": -float: 1 -ifloat: 1 -Test "Imaginary part of: catanh (0.7 + 1.2 i) == 0.2600749516525135959200648705635915 + 0.97024030779509898497385130162655963 i": +Test "Real part of: catanh (0.75 + 1.25 i) == 0.261492138795671927078652057366532140 + 0.996825126463918666098902241310446708 i": double: 1 -float: 6 idouble: 1 +Test "Imaginary part of: catanh (0.75 + 1.25 i) == 0.261492138795671927078652057366532140 + 0.996825126463918666098902241310446708 i": +float: 6 ifloat: 6 # cbrt Test "cbrt (-27.0) == -3.0": double: 1 idouble: 1 -Test "cbrt (0.970299) == 0.99": +Test "cbrt (0.75) == 0.908560296416069829445605878163630251": +double: 1 +idouble: 1 +Test "cbrt (0.9921875) == 0.997389022060725270579075195353955217": double: 1 idouble: 1 @@ -148,12 +97,14 @@ idouble: 1 Test "Imaginary part of: ccos (-2 - 3 i) == -4.1896256909688072301 - 9.1092278937553365979 i": float: 1 ifloat: 1 -Test "Real part of: ccos (0.7 + 1.2 i) == 1.3848657645312111080 - 0.97242170335830028619 i": -double: 1 -idouble: 1 -Test "Imaginary part of: ccos (0.7 + 1.2 i) == 1.3848657645312111080 - 0.97242170335830028619 i": +Test "Real part of: ccos (0.75 + 1.25 i) == 1.38173873063425888530729933139078645 - 1.09193013555397466170919531722024128 i": double: 1 +float: 1 idouble: 1 +ifloat: 1 +Test "Imaginary part of: ccos (0.75 + 1.25 i) == 1.38173873063425888530729933139078645 - 1.09193013555397466170919531722024128 i": +float: 1 +ifloat: 1 # ccosh Test "Real part of: ccosh (-2 - 3 i) == -3.7245455049153225654 + 0.5118225699873846088 i": @@ -162,34 +113,30 @@ ifloat: 1 Test "Imaginary part of: ccosh (-2 - 3 i) == -3.7245455049153225654 + 0.5118225699873846088 i": float: 1 ifloat: 1 -Test "Real part of: ccosh (0.7 + 1.2 i) == 0.4548202223691477654 + 0.7070296600921537682 i": +Test "Real part of: ccosh (0.75 + 1.25 i) == 0.408242591877968807788852146397499084 + 0.780365930845853240391326216300863152 i": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "Imaginary part of: ccosh (0.7 + 1.2 i) == 0.4548202223691477654 + 0.7070296600921537682 i": -double: 1 -idouble: 1 +Test "Imaginary part of: ccosh (0.75 + 1.25 i) == 0.408242591877968807788852146397499084 + 0.780365930845853240391326216300863152 i": +float: 1 +ifloat: 1 # cexp Test "Imaginary part of: cexp (-2.0 - 3.0 i) == -0.13398091492954261346140525546115575 - 0.019098516261135196432576240858800925 i": float: 1 ifloat: 1 -Test "Real part of: cexp (0.7 + 1.2 i) == 0.72969890915032360123451688642930727 + 1.8768962328348102821139467908203072 i": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: cexp (0.7 + 1.2 i) == 0.72969890915032360123451688642930727 + 1.8768962328348102821139467908203072 i": +Test "Real part of: cexp (0.75 + 1.25 i) == 0.667537446429131586942201977015932112 + 2.00900045494094876258347228145863909 i": float: 1 ifloat: 1 # clog Test "Imaginary part of: clog (-2 - 3 i) == 1.2824746787307683680267437207826593 - 2.1587989303424641704769327722648368 i": -double: 1 float: 3 -idouble: 1 ifloat: 3 +Test "Real part of: clog (0.75 + 1.25 i) == 0.376885901188190075998919126749298416 + 1.03037682652431246378774332703115153 i": +float: 1 +ifloat: 1 # clog10 Test "Imaginary part of: clog10 (-0 + inf i) == inf + pi/2*log10(e) i": @@ -227,14 +174,9 @@ ifloat: 1 Test "Imaginary part of: clog10 (0 - inf i) == inf - pi/2*log10(e) i": float: 1 ifloat: 1 -Test "Real part of: clog10 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i": -double: 1 +Test "Real part of: clog10 (0.75 + 1.25 i) == 0.163679467193165171449476605077428975 + 0.447486970040493067069984724340855636 i": float: 1 -idouble: 1 ifloat: 1 -Test "Imaginary part of: clog10 (0.7 + 1.2 i) == 0.1427786545038868803 + 0.4528483579352493248 i": -double: 1 -idouble: 1 Test "Imaginary part of: clog10 (3 + inf i) == inf + pi/2*log10(e) i": float: 1 ifloat: 1 @@ -249,28 +191,39 @@ float: 1 ifloat: 1 # cos -Test "cos (0.7) == 0.76484218728448842625585999019186495": +Test "cos (M_PI_6l * 2.0) == 0.5": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "cos (M_PI_6l * 2.0) == 0.5": -double: 1 -float: 0.5 -idouble: 1 -ifloat: 0.5 Test "cos (M_PI_6l * 4.0) == -0.5": double: 2 float: 1 idouble: 2 ifloat: 1 Test "cos (pi/2) == 0": -double: 0.2758 -float: 0.3667 -idouble: 0.2758 -ifloat: 0.3667 +double: 1 +float: 1 +idouble: 1 +ifloat: 1 # cpow +Test "Real part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i) == 0.331825439177608832276067945276730566 + 0.131338600281188544930936345230903032 i": +float: 1 +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 +Test "Real part of: cpow (0.75 + 1.25 i, 0.75 + 1.25 i) == 0.117506293914473555420279832210420483 + 0.346552747708338676483025352060418001 i": +double: 1 +float: 4 +idouble: 1 +ifloat: 4 +Test "Real part of: cpow (0.75 + 1.25 i, 1.0 + 1.0 i) == 0.0846958290317209430433805274189191353 + 0.513285749182902449043287190519090481 i": +double: 2 +float: 3 +idouble: 2 +ifloat: 3 Test "Real part of: cpow (2 + 3 i, 4 + 0 i) == -119.0 - 120.0 i": double: 1 float: 4 @@ -285,19 +238,14 @@ float: 2 idouble: 2 ifloat: 2 -# csin -Test "Imaginary part of: csin (0.7 + 1.2 i) == 1.1664563419657581376 + 1.1544997246948547371 i": -float: 1 -ifloat: 1 - # csinh Test "Imaginary part of: csinh (-2 - 3 i) == 3.5905645899857799520 - 0.5309210862485198052 i": double: 1 idouble: 1 -Test "Real part of: csinh (0.7 + 1.2 i) == 0.27487868678117583582 + 1.1698665727426565139 i": +Test "Real part of: csinh (0.75 + 1.25 i) == 0.259294854551162779153349830618433028 + 1.22863452409509552219214606515777594 i": float: 1 ifloat: 1 -Test "Imaginary part of: csinh (0.7 + 1.2 i) == 0.27487868678117583582 + 1.1698665727426565139 i": +Test "Imaginary part of: csinh (0.75 + 1.25 i) == 0.259294854551162779153349830618433028 + 1.22863452409509552219214606515777594 i": float: 1 ifloat: 1 @@ -308,27 +256,14 @@ ifloat: 1 Test "Real part of: csqrt (-2 - 3 i) == 0.89597747612983812471573375529004348 - 1.6741492280355400404480393008490519 i": float: 1 ifloat: 1 -Test "Real part of: csqrt (0.7 + 1.2 i) == 1.022067610030026450706487883081139 + 0.58704531296356521154977678719838035 i": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "Imaginary part of: csqrt (0.7 + 1.2 i) == 1.022067610030026450706487883081139 + 0.58704531296356521154977678719838035 i": -float: 1 -ifloat: 1 # ctan Test "Real part of: ctan (-2 - 3 i) == 0.0037640256415042482 - 1.0032386273536098014 i": double: 1 idouble: 1 -Test "Real part of: ctan (0.7 + 1.2 i) == 0.1720734197630349001 + 0.9544807059989405538 i": -float: 1 -ifloat: 1 -Test "Imaginary part of: ctan (0.7 + 1.2 i) == 0.1720734197630349001 + 0.9544807059989405538 i": +Test "Imaginary part of: ctan (0.75 + 1.25 i) == 0.160807785916206426725166058173438663 + 0.975363285031235646193581759755216379 i": double: 1 -float: 1 idouble: 1 -ifloat: 1 # ctanh Test "Real part of: ctanh (-2 - 3 i) == -0.9653858790221331242 + 0.0098843750383224937 i": @@ -339,34 +274,22 @@ ifloat: 2 Test "Imaginary part of: ctanh (0 + pi/4 i) == 0.0 + 1.0 i": float: 1 ifloat: 1 -Test "Real part of: ctanh (0.7 + 1.2 i) == 1.3472197399061191630 + 0.4778641038326365540 i": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "Imaginary part of: ctanh (0.7 + 1.2 i) == 1.3472197399061191630 + 0.4778641038326365540 i": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 +Test "Real part of: ctanh (0.75 + 1.25 i) == 1.37260757053378320258048606571226857 + 0.385795952609750664177596760720790220 i": +double: 1 +idouble: 1 + +# erf +Test "erf (1.25) == 0.922900128256458230136523481197281140": +double: 1 +idouble: 1 # erfc -Test "erfc (0.7) == 0.32219880616258152702": +Test "erfc (2.0) == 0.00467773498104726583793074363274707139": double: 1 idouble: 1 -Test "erfc (1.2) == 0.089686021770364619762": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -Test "erfc (2.0) == 0.0046777349810472658379": +Test "erfc (4.125) == 0.542340079956506600531223408575531062e-8": double: 1 idouble: 1 -Test "erfc (4.1) == 0.67000276540848983727e-8": -double: 24 -float: 12 -idouble: 24 -ifloat: 12 # exp10 Test "exp10 (-1) == 0.1": @@ -374,8 +297,10 @@ double: 2 float: 1 idouble: 2 ifloat: 1 -Test "exp10 (0.7) == 5.0118723362727228500155418688494574": +Test "exp10 (0.75) == 5.62341325190349080394951039776481231": +double: 1 float: 1 +idouble: 1 ifloat: 1 Test "exp10 (3) == 1000": double: 6 @@ -384,32 +309,13 @@ idouble: 6 ifloat: 2 # expm1 +Test "expm1 (0.75) == 1.11700001661267466854536981983709561": +double: 1 +idouble: 1 Test "expm1 (1) == M_El - 1.0": float: 1 ifloat: 1 -# fmod -Test "fmod (-6.5, -2.3) == -1.9": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "fmod (-6.5, 2.3) == -1.9": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "fmod (6.5, -2.3) == 1.9": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "fmod (6.5, 2.3) == 1.9": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 - # hypot Test "hypot (-0.7, -12.4) == 12.419742348374220601176836866763271": float: 1 @@ -426,9 +332,6 @@ ifloat: 1 Test "hypot (0.7, -12.4) == 12.419742348374220601176836866763271": float: 1 ifloat: 1 -Test "hypot (0.7, 1.2) == 1.3892443989449804508432547041028554": -double: 1 -idouble: 1 Test "hypot (0.7, 12.4) == 12.419742348374220601176836866763271": float: 1 ifloat: 1 @@ -440,95 +343,110 @@ float: 1 ifloat: 1 # j0 -Test "j0 (10.0) == -0.24593576445134833520": +Test "j0 (-4.0) == -3.9714980986384737228659076845169804197562E-1": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "j0 (0.75) == 0.864242275166648623555731103820923211": +float: 1 +ifloat: 1 +Test "j0 (10.0) == -0.245935764451348335197760862485328754": double: 2 float: 1 idouble: 2 ifloat: 1 -Test "j0 (2.0) == 0.22389077914123566805": +Test "j0 (2.0) == 0.223890779141235668051827454649948626": float: 2 ifloat: 2 -Test "j0 (8.0) == 0.17165080713755390609": -float: 1 -ifloat: 1 Test "j0 (4.0) == -3.9714980986384737228659076845169804197562E-1": double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 -Test "j0 (-4.0) == -3.9714980986384737228659076845169804197562E-1": -double: 1 -float: 1 +float: 1 idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - +ifloat: 1 +Test "j0 (8.0) == 0.171650807137553906090869407851972001": +float: 1 +ifloat: 1 # j1 -Test "j1 (10.0) == 0.043472746168861436670": +Test "j1 (10.0) == 0.0434727461688614366697487680258592883": float: 2 ifloat: 2 -Test "j1 (2.0) == 0.57672480775687338720": +Test "j1 (2.0) == 0.576724807756873387202448242269137087": double: 1 idouble: 1 -Test "j1 (8.0) == 0.23463634685391462438": +Test "j1 (8.0) == 0.234636346853914624381276651590454612": double: 1 idouble: 1 # jn -Test "jn (0, 10.0) == -0.24593576445134833520": +Test "jn (0, -4.0) == -3.9714980986384737228659076845169804197562E-1": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "jn (0, 0.75) == 0.864242275166648623555731103820923211": +float: 1 +ifloat: 1 +Test "jn (0, 10.0) == -0.245935764451348335197760862485328754": double: 2 float: 1 idouble: 2 ifloat: 1 -Test "jn (0, 2.0) == 0.22389077914123566805": +Test "jn (0, 2.0) == 0.223890779141235668051827454649948626": float: 2 ifloat: 2 -Test "jn (0, 8.0) == 0.17165080713755390609": +Test "jn (0, 4.0) == -3.9714980986384737228659076845169804197562E-1": +double: 1 +float: 1 +idouble: 1 +ifloat: 1 +Test "jn (0, 8.0) == 0.171650807137553906090869407851972001": float: 1 ifloat: 1 -Test "jn (1, 10.0) == 0.043472746168861436670": +Test "jn (1, 10.0) == 0.0434727461688614366697487680258592883": float: 2 ifloat: 2 -Test "jn (1, 2.0) == 0.57672480775687338720": +Test "jn (1, 2.0) == 0.576724807756873387202448242269137087": double: 1 idouble: 1 -Test "jn (1, 8.0) == 0.23463634685391462438": +Test "jn (1, 8.0) == 0.234636346853914624381276651590454612": double: 1 idouble: 1 -Test "jn (10, 0.1) == 0.26905328954342155795e-19": -double: 6 -float: 4 -idouble: 6 -ifloat: 4 -Test "jn (10, 0.7) == 0.75175911502153953928e-11": -double: 3 +Test "jn (10, 0.125) == 0.250543369809369890173993791865771547e-18": +double: 1 float: 1 -idouble: 3 +idouble: 1 +ifloat: 1 +Test "jn (10, 0.75) == 0.149621713117596814698712483621682835e-10": +double: 1 +float: 1 +idouble: 1 ifloat: 1 -Test "jn (10, 10.0) == 0.20748610663335885770": +Test "jn (10, 10.0) == 0.207486106633358857697278723518753428": double: 4 float: 3 idouble: 4 ifloat: 3 -Test "jn (10, 2.0) == 0.25153862827167367096e-6": +Test "jn (10, 2.0) == 0.251538628271673670963516093751820639e-6": float: 4 ifloat: 4 -Test "jn (3, 0.1) == 0.000020820315754756261429": +Test "jn (3, 0.125) == 0.406503832554912875023029337653442868e-4": double: 1 +float: 1 idouble: 1 -Test "jn (3, 0.7) == 0.0069296548267508408077": +ifloat: 1 +Test "jn (3, 0.75) == 0.848438342327410884392755236884386804e-2": +double: 1 float: 1 +idouble: 1 ifloat: 1 -Test "jn (3, 10.0) == 0.058379379305186812343": +Test "jn (3, 10.0) == 0.0583793793051868123429354784103409563": double: 3 float: 1 idouble: 3 ifloat: 1 -Test "jn (3, 2.0) == 0.12894324947440205110": +Test "jn (3, 2.0) == 0.128943249474402051098793332969239835": double: 1 float: 2 idouble: 1 @@ -546,87 +464,45 @@ float: 2 idouble: 1 ifloat: 2 -# log -Test "log (0.7) == -0.35667494393873237891263871124118447": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - # log10 -Test "log10 (0.7) == -0.15490195998574316929": +Test "log10 (0.75) == -0.124938736608299953132449886193870744": double: 1 -float: 1 +float: 2 idouble: 1 -ifloat: 1 +ifloat: 2 Test "log10 (e) == log10(e)": float: 1 ifloat: 1 # log1p -Test "log1p (-0.3) == -0.35667494393873237891263871124118447": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -# log2 -Test "log2 (0.7) == -0.51457317282975824043": -double: 1 +Test "log1p (-0.25) == -0.287682072451780927439219005993827432": float: 1 -idouble: 1 ifloat: 1 # sincos -Test "sincos (0.7, &sin_res, &cos_res) puts 0.76484218728448842625585999019186495 in cos_res": +Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.5 in cos_res": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.5 in cos_res": -double: 1 -float: 0.5 -idouble: 1 -ifloat: 0.5 Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.86602540378443864676372317075293616 in sin_res": double: 1 float: 1 idouble: 1 ifloat: 1 Test "sincos (pi/2, &sin_res, &cos_res) puts 0 in cos_res": -double: 0.2758 -float: 0.3667 -idouble: 0.2758 -ifloat: 0.3667 -Test "sincos (pi/6, &sin_res, &cos_res) puts 0.86602540378443864676372317075293616 in cos_res": -float: 1 -ifloat: 1 - -# sinh -Test "sinh (0.7) == 0.75858370183953350346": double: 1 float: 1 idouble: 1 ifloat: 1 +Test "sincos (pi/6, &sin_res, &cos_res) puts 0.86602540378443864676372317075293616 in cos_res": +float: 1 +ifloat: 1 # tan Test "tan (pi/4) == 1": -double: 0.5 -idouble: 0.5 - -# tanh -Test "tanh (0.7) == 0.60436777711716349631": double: 1 -float: 1 idouble: 1 -ifloat: 1 -Test "tanh (-0.7) == -0.60436777711716349631": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 # tgamma Test "tgamma (-0.5) == -2 sqrt (pi)": @@ -644,174 +520,130 @@ idouble: 1 ifloat: 1 # y0 -Test "y0 (0.7) == -0.19066492933739506743": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "y0 (1.0) == 0.088256964215676957983": +Test "y0 (1.0) == 0.0882569642156769579829267660235151628": double: 2 float: 1 idouble: 2 ifloat: 1 -Test "y0 (1.5) == 0.38244892379775884396": +Test "y0 (1.5) == 0.382448923797758843955068554978089862": double: 2 float: 1 idouble: 2 ifloat: 1 -Test "y0 (10.0) == 0.055671167283599391424": +Test "y0 (10.0) == 0.0556711672835993914244598774101900481": float: 1 ifloat: 1 -Test "y0 (8.0) == 0.22352148938756622053": +Test "y0 (8.0) == 0.223521489387566220527323400498620359": double: 1 float: 1 idouble: 1 ifloat: 1 # y1 -Test "y1 (0.1) == -6.4589510947020269877": +Test "y1 (0.125) == -5.19993611253477499595928744876579921": double: 1 idouble: 1 -Test "y1 (0.7) == -1.1032498719076333697": -double: 1 +Test "y1 (1.5) == -0.412308626973911295952829820633445323": float: 1 -idouble: 1 ifloat: 1 -Test "y1 (1.5) == -0.41230862697391129595": -float: 1 -ifloat: 1 -Test "y1 (10.0) == 0.24901542420695388392": +Test "y1 (10.0) == 0.249015424206953883923283474663222803": double: 3 float: 1 idouble: 3 ifloat: 1 -Test "y1 (2.0) == -0.10703243154093754689": +Test "y1 (2.0) == -0.107032431540937546888370772277476637": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "y1 (8.0) == -0.15806046173124749426": +Test "y1 (8.0) == -0.158060461731247494255555266187483550": double: 1 float: 2 idouble: 1 ifloat: 2 # yn -Test "yn (0, 0.7) == -0.19066492933739506743": +Test "yn (0, 1.0) == 0.0882569642156769579829267660235151628": double: 2 float: 1 idouble: 2 ifloat: 1 -Test "yn (0, 1.0) == 0.088256964215676957983": +Test "yn (0, 1.5) == 0.382448923797758843955068554978089862": double: 2 float: 1 idouble: 2 ifloat: 1 -Test "yn (0, 1.5) == 0.38244892379775884396": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -Test "yn (0, 10.0) == 0.055671167283599391424": +Test "yn (0, 10.0) == 0.0556711672835993914244598774101900481": float: 1 ifloat: 1 -Test "yn (0, 8.0) == 0.22352148938756622053": +Test "yn (0, 8.0) == 0.223521489387566220527323400498620359": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "yn (1, 0.1) == -6.4589510947020269877": +Test "yn (1, 0.125) == -5.19993611253477499595928744876579921": double: 1 idouble: 1 -Test "yn (1, 0.7) == -1.1032498719076333697": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -Test "yn (1, 1.5) == -0.41230862697391129595": +Test "yn (1, 1.5) == -0.412308626973911295952829820633445323": float: 1 ifloat: 1 -Test "yn (1, 10.0) == 0.24901542420695388392": +Test "yn (1, 10.0) == 0.249015424206953883923283474663222803": double: 3 float: 1 idouble: 3 ifloat: 1 -Test "yn (1, 2.0) == -0.10703243154093754689": +Test "yn (1, 2.0) == -0.107032431540937546888370772277476637": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "yn (1, 8.0) == -0.15806046173124749426": +Test "yn (1, 8.0) == -0.158060461731247494255555266187483550": double: 1 float: 2 idouble: 1 ifloat: 2 -Test "yn (10, 0.1) == -0.11831335132045197885e19": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -Test "yn (10, 0.7) == -0.42447194260703866924e10": -double: 3 -idouble: 3 -Test "yn (10, 1.0) == -0.12161801427868918929e9": +Test "yn (10, 0.125) == -127057845771019398.252538486899753195": double: 1 idouble: 1 -Test "yn (10, 10.0) == -0.35981415218340272205": +Test "yn (10, 0.75) == -2133501638.90573424452445412893839236": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "yn (10, 2.0) == -129184.54220803928264": -double: 2 -idouble: 2 -Test "yn (3, 0.1) == -5099.3323786129048894": +Test "yn (10, 1.0) == -121618014.278689189288130426667971145": double: 1 -float: 1 idouble: 1 -ifloat: 1 -Test "yn (3, 0.7) == -15.819479052819633505": -double: 3 -float: 1 -idouble: 3 -ifloat: 1 -Test "yn (3, 10.0) == -0.25136265718383732978": +Test "yn (10, 10.0) == -0.359814152183402722051986577343560609": double: 1 float: 1 idouble: 1 ifloat: 1 -Test "yn (3, 2.0) == -1.1277837768404277861": -double: 1 -idouble: 1 - -# Maximal error of functions: -Function: "asin": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 - -Function: "atan2": -float: 4 -ifloat: 4 - -Function: "atanh": +Test "yn (10, 2.0) == -129184.542208039282635913145923304214": +double: 2 +idouble: 2 +Test "yn (3, 0.125) == -2612.69757350066712600220955744091741": double: 1 idouble: 1 - -Function: "cabs": +Test "yn (3, 0.75) == -12.9877176234475433186319774484809207": double: 1 float: 1 idouble: 1 ifloat: 1 - -Function: Real part of "cacos": +Test "yn (3, 10.0) == -0.251362657183837329779204747654240998": double: 1 float: 1 idouble: 1 ifloat: 1 +Test "yn (3, 2.0) == -1.12778377684042778608158395773179238": +double: 1 +idouble: 1 + +# Maximal error of functions: +Function: "atan2": +float: 3 +ifloat: 3 -Function: Imaginary part of "cacos": +Function: "atanh": float: 1 ifloat: 1 @@ -828,13 +660,9 @@ idouble: 1 ifloat: 3 Function: Real part of "casin": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 - -Function: Imaginary part of "casin": +double: 1 float: 1 +idouble: 1 ifloat: 1 Function: Real part of "casinh": @@ -861,14 +689,10 @@ ifloat: 1 Function: Real part of "catanh": double: 4 -float: 1 idouble: 4 -ifloat: 1 Function: Imaginary part of "catanh": -double: 1 float: 6 -idouble: 1 ifloat: 6 Function: "cbrt": @@ -877,12 +701,12 @@ idouble: 1 Function: Real part of "ccos": double: 1 +float: 1 idouble: 1 +ifloat: 1 Function: Imaginary part of "ccos": -double: 1 float: 1 -idouble: 1 ifloat: 1 Function: Real part of "ccosh": @@ -892,31 +716,27 @@ idouble: 1 ifloat: 1 Function: Imaginary part of "ccosh": -double: 1 float: 1 -idouble: 1 ifloat: 1 Function: Real part of "cexp": -double: 1 float: 1 -idouble: 1 ifloat: 1 Function: Imaginary part of "cexp": float: 1 ifloat: 1 +Function: Real part of "clog": +float: 1 +ifloat: 1 + Function: Imaginary part of "clog": -double: 1 float: 3 -idouble: 1 ifloat: 3 Function: Real part of "clog10": -double: 1 float: 1 -idouble: 1 ifloat: 1 Function: Imaginary part of "clog10": @@ -932,21 +752,17 @@ idouble: 2 ifloat: 1 Function: Real part of "cpow": -double: 1 +double: 2 float: 4 -idouble: 1 +idouble: 2 ifloat: 4 Function: Imaginary part of "cpow": -double: 1.1031 +double: 2 float: 2 -idouble: 1.1031 +idouble: 2 ifloat: 2 -Function: Imaginary part of "csin": -float: 1 -ifloat: 1 - Function: Real part of "csinh": float: 1 ifloat: 1 @@ -958,44 +774,34 @@ idouble: 1 ifloat: 1 Function: Real part of "csqrt": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - -Function: Imaginary part of "csqrt": float: 1 ifloat: 1 Function: Real part of "ctan": double: 1 -float: 1 idouble: 1 -ifloat: 1 Function: Imaginary part of "ctan": double: 1 -float: 1 idouble: 1 -ifloat: 1 Function: Real part of "ctanh": -double: 2 +double: 1 float: 2 -idouble: 2 +idouble: 1 ifloat: 2 Function: Imaginary part of "ctanh": -double: 2 float: 1 -idouble: 2 ifloat: 1 +Function: "erf": +double: 1 +idouble: 1 + Function: "erfc": -double: 24 -float: 12 -idouble: 24 -ifloat: 12 +double: 1 +idouble: 1 Function: "exp10": double: 6 @@ -1004,19 +810,13 @@ idouble: 6 ifloat: 2 Function: "expm1": +double: 1 float: 1 -ifloat: 1 - -Function: "fmod": -double: 2 -float: 1 -idouble: 2 +idouble: 1 ifloat: 1 Function: "hypot": -double: 1 float: 1 -idouble: 1 ifloat: 1 Function: "j0": @@ -1032,9 +832,9 @@ idouble: 1 ifloat: 2 Function: "jn": -double: 6 +double: 4 float: 4 -idouble: 6 +idouble: 4 ifloat: 4 Function: "lgamma": @@ -1043,28 +843,14 @@ float: 2 idouble: 1 ifloat: 2 -Function: "log": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - Function: "log10": double: 1 -float: 1 +float: 2 idouble: 1 -ifloat: 1 +ifloat: 2 Function: "log1p": -double: 1 float: 1 -idouble: 1 -ifloat: 1 - -Function: "log2": -double: 1 -float: 1 -idouble: 1 ifloat: 1 Function: "sincos": @@ -1073,21 +859,9 @@ float: 1 idouble: 1 ifloat: 1 -Function: "sinh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 - Function: "tan": -double: 0.5 -idouble: 0.5 - -Function: "tanh": double: 1 -float: 1 idouble: 1 -ifloat: 1 Function: "tgamma": double: 1 |