summary refs log tree commit diff
diff options
context:
space:
mode:
authorAdhemerval Zanella <azanella@linux.vnet.ibm.com>2013-04-30 08:51:02 -0500
committerAdhemerval Zanella <azanella@linux.vnet.ibm.com>2013-04-30 08:51:02 -0500
commitcb4d54147e620f4267d1c675bf2daec0a8e7c809 (patch)
tree193250af0c21d511826660e21da3cb5f720539a2
parent296f21e7bdf8c0a21f2d82d73bb4c28d6edd2504 (diff)
downloadglibc-cb4d54147e620f4267d1c675bf2daec0a8e7c809.tar.gz
glibc-cb4d54147e620f4267d1c675bf2daec0a8e7c809.tar.xz
glibc-cb4d54147e620f4267d1c675bf2daec0a8e7c809.zip
Update powerpc libm-test ULPs
-rw-r--r--ChangeLog4
-rw-r--r--sysdeps/powerpc/fpu/libm-test-ulps416
2 files changed, 418 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 0da24720f4..c648855b3d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-04-30  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
+
+	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
 2013-04-30  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #15416]
diff --git a/sysdeps/powerpc/fpu/libm-test-ulps b/sysdeps/powerpc/fpu/libm-test-ulps
index a4442449a4..7e8c4f7b66 100644
--- a/sysdeps/powerpc/fpu/libm-test-ulps
+++ b/sysdeps/powerpc/fpu/libm-test-ulps
@@ -3812,6 +3812,35 @@ double: 1
 idouble: 1
 
 # catan
+Test "Imaginary part of: catan (-0x0.fffffffffffff8p0 + 0x1p-27 i) == -7.853981633974482679822974223765039144191e-1 + 3.725290298461914441624447420137706700965e-9 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: catan (-0x0.fffffffffffff8p0 - 0x1p-27 i) == -7.853981633974482679822974223765039144191e-1 - 3.725290298461914441624447420137706700965e-9 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (-0x0.ffffffp0 + 0x1p-13 i) == -7.853981373204155542484315721351697277336e-1 + 6.103515973639646453881721999956617260502e-5 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Real part of: catan (-0x1.000000000000000000000000008p0 + 0x1p-54 i) == -7.853981633974483096156608458198888173729e-1 + 2.775557561562891351059079170226980932999e-17 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catan (-0x1.000000000000000000000000008p0 - 0x1p-54 i) == -7.853981633974483096156608458198888173729e-1 - 2.775557561562891351059079170226980932999e-17 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (-0x1.0000000000001p0 - 0x1p-27 i) == -7.853981633974484345157511161499711112683e-1 - 3.725290298461913200853528590596263270474e-9 i":
+double: 1
+idouble: 1
+Test "Real part of: catan (-0x1.000002p0 + 0x1p-13 i) == -7.853982267273793866654490522673596014524e-1 + 6.103514882246036852433556327261700380577e-5 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1.000002p0 - 0x1p-13 i) == -7.853982267273793866654490522673596014524e-1 - 6.103514882246036852433556327261700380577e-5 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catan (-0x1.000002p0 - 0x1p-13 i) == -7.853982267273793866654490522673596014524e-1 - 6.103514882246036852433556327261700380577e-5 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: catan (-0x1.fp1023 + 0x1.fp1023 i) == -1.570796326794896619231321691639751442099 + 2.871063043235098558826106732041811695767e-309 i":
 double: 1
 idouble: 1
@@ -3832,6 +3861,79 @@ double: 1
 idouble: 1
 ildouble: 1
 ldouble: 1
+Test "Real part of: catan (-0x1p-13 + 0x1.000002p0 i) == -7.859169620684960844300240092596908675974e-1 + 4.852030056234795712498957387213592193975 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-13 + 1.0 i) == -7.854286809755354140031716771044626356262e-1 + 4.852030264850939738801379894163661227127 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-13 - 0x1.000002p0 i) == -7.859169620684960844300240092596908675974e-1 - 4.852030056234795712498957387213592193975 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catan (-0x1p-13 - 0x1.000002p0 i) == -7.859169620684960844300240092596908675974e-1 - 4.852030056234795712498957387213592193975 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-13 - 1.0 i) == -7.854286809755354140031716771044626356262e-1 - 4.852030264850939738801379894163661227127 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-27 + 1.0 i) == -7.853981652600934588466178684534110069553e-1 + 9.704060527839234335310696652368086117807 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-27 - 1.0 i) == -7.853981652600934588466178684534110069553e-1 - 9.704060527839234335310696652368086117807 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-33 + 1.0 i) == -7.853981634265521400723945494331241018449e-1 + 1.178350206951907026009379309773625595762e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-33 - 1.0 i) == -7.853981634265521400723945494331241018449e-1 - 1.178350206951907026009379309773625595762e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-54 + 1.0 i) == -7.853981633974483234934486536343324763447e-1 + 1.906154746539849600897388334009985581467e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-54 - 1.0 i) == -7.853981633974483234934486536343324763447e-1 - 1.906154746539849600897388334009985581467e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-57 + 1.0 i) == -7.853981633974483113503843217966828154612e-1 + 2.010126823623841397309973152228712047720e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-0x1p-57 - 1.0 i) == -7.853981633974483113503843217966828154612e-1 - 2.010126823623841397309973152228712047720e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-1.0 + 0x1p-13 i) == -7.853981671227386080775748393881580082970e-1 + 6.103515609841754902688560615027452023669e-5 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-1.0 + 0x1p-27 i) == -7.853981633974483234934486536343324763447e-1 + 3.725290298461914028034141143623846306386e-9 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-1.0 + 0x1p-33 i) == -7.853981633974483096190489776088929224056e-1 + 5.820766091346740722643102318246316469910e-11 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-1.0 + 0x1p-54 i) == -7.853981633974483096156608458198764914213e-1 + 2.775557561562891351059079170227049355775e-17 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: catan (-1.0 + 0x1p-57 i) == -7.853981633974483096156608458198757330864e-1 + 3.469446951953614188823848962783813448721e-18 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-1.0 - 0x1p-13 i) == -7.853981671227386080775748393881580082970e-1 - 6.103515609841754902688560615027452023669e-5 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-1.0 - 0x1p-27 i) == -7.853981633974483234934486536343324763447e-1 - 3.725290298461914028034141143623846306386e-9 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-1.0 - 0x1p-33 i) == -7.853981633974483096190489776088929224056e-1 - 5.820766091346740722643102318246316469910e-11 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (-1.0 - 0x1p-54 i) == -7.853981633974483096156608458198764914213e-1 - 2.775557561562891351059079170227049355775e-17 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: catan (-1.0 - 0x1p-57 i) == -7.853981633974483096156608458198757330864e-1 - 3.469446951953614188823848962783813448721e-18 i":
+float: 1
+ifloat: 1
 Test "Real part of: catan (-2 - 3 i) == -1.4099210495965755225306193844604208 - 0.22907268296853876629588180294200276 i":
 float: 3
 ifloat: 3
@@ -3845,6 +3947,35 @@ ifloat: 1
 Test "Real part of: catan (0.75 + 1.25 i) == 1.10714871779409050301706546017853704 + 0.549306144334054845697622618461262852 i":
 float: 4
 ifloat: 4
+Test "Imaginary part of: catan (0x0.fffffffffffff8p0 + 0x1p-27 i) == 7.853981633974482679822974223765039144191e-1 + 3.725290298461914441624447420137706700965e-9 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: catan (0x0.fffffffffffff8p0 - 0x1p-27 i) == 7.853981633974482679822974223765039144191e-1 - 3.725290298461914441624447420137706700965e-9 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (0x0.ffffffp0 + 0x1p-13 i) == 7.853981373204155542484315721351697277336e-1 + 6.103515973639646453881721999956617260502e-5 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Real part of: catan (0x1.000000000000000000000000008p0 + 0x1p-54 i) == 7.853981633974483096156608458198888173729e-1 + 2.775557561562891351059079170226980932999e-17 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catan (0x1.000000000000000000000000008p0 - 0x1p-54 i) == 7.853981633974483096156608458198888173729e-1 - 2.775557561562891351059079170226980932999e-17 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catan (0x1.0000000000001p0 - 0x1p-27 i) == 7.853981633974484345157511161499711112683e-1 - 3.725290298461913200853528590596263270474e-9 i":
+double: 1
+idouble: 1
+Test "Real part of: catan (0x1.000002p0 + 0x1p-13 i) == 7.853982267273793866654490522673596014524e-1 + 6.103514882246036852433556327261700380577e-5 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1.000002p0 - 0x1p-13 i) == 7.853982267273793866654490522673596014524e-1 - 6.103514882246036852433556327261700380577e-5 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catan (0x1.000002p0 - 0x1p-13 i) == 7.853982267273793866654490522673596014524e-1 - 6.103514882246036852433556327261700380577e-5 i":
+double: 1
+idouble: 1
 Test "Imaginary part of: catan (0x1.fp1023 + 0x1.fp1023 i) == 1.570796326794896619231321691639751442099 + 2.871063043235098558826106732041811695767e-309 i":
 double: 1
 idouble: 1
@@ -3865,8 +3996,93 @@ double: 1
 idouble: 1
 ildouble: 1
 ldouble: 1
+Test "Real part of: catan (0x1p-13 + 0x1.000002p0 i) == 7.859169620684960844300240092596908675974e-1 + 4.852030056234795712498957387213592193975 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-13 + 1.0 i) == 7.854286809755354140031716771044626356262e-1 + 4.852030264850939738801379894163661227127 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-13 - 0x1.000002p0 i) == 7.859169620684960844300240092596908675974e-1 - 4.852030056234795712498957387213592193975 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catan (0x1p-13 - 0x1.000002p0 i) == 7.859169620684960844300240092596908675974e-1 - 4.852030056234795712498957387213592193975 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-13 - 1.0 i) == 7.854286809755354140031716771044626356262e-1 - 4.852030264850939738801379894163661227127 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-27 + 1.0 i) == 7.853981652600934588466178684534110069553e-1 + 9.704060527839234335310696652368086117807 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-27 - 1.0 i) == 7.853981652600934588466178684534110069553e-1 - 9.704060527839234335310696652368086117807 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-33 + 1.0 i) == 7.853981634265521400723945494331241018449e-1 + 1.178350206951907026009379309773625595762e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-33 - 1.0 i) == 7.853981634265521400723945494331241018449e-1 - 1.178350206951907026009379309773625595762e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-54 + 1.0 i) == 7.853981633974483234934486536343324763447e-1 + 1.906154746539849600897388334009985581467e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-54 - 1.0 i) == 7.853981633974483234934486536343324763447e-1 - 1.906154746539849600897388334009985581467e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-57 + 1.0 i) == 7.853981633974483113503843217966828154612e-1 + 2.010126823623841397309973152228712047720e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (0x1p-57 - 1.0 i) == 7.853981633974483113503843217966828154612e-1 - 2.010126823623841397309973152228712047720e1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (1.0 + 0x1p-13 i) == 7.853981671227386080775748393881580082970e-1 + 6.103515609841754902688560615027452023669e-5 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (1.0 + 0x1p-27 i) == 7.853981633974483234934486536343324763447e-1 + 3.725290298461914028034141143623846306386e-9 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (1.0 + 0x1p-33 i) == 7.853981633974483096190489776088929224056e-1 + 5.820766091346740722643102318246316469910e-11 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (1.0 + 0x1p-54 i) == 7.853981633974483096156608458198764914213e-1 + 2.775557561562891351059079170227049355775e-17 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: catan (1.0 + 0x1p-57 i) == 7.853981633974483096156608458198757330864e-1 + 3.469446951953614188823848962783813448721e-18 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (1.0 - 0x1p-13 i) == 7.853981671227386080775748393881580082970e-1 - 6.103515609841754902688560615027452023669e-5 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (1.0 - 0x1p-27 i) == 7.853981633974483234934486536343324763447e-1 - 3.725290298461914028034141143623846306386e-9 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (1.0 - 0x1p-33 i) == 7.853981633974483096190489776088929224056e-1 - 5.820766091346740722643102318246316469910e-11 i":
+float: 1
+ifloat: 1
+Test "Real part of: catan (1.0 - 0x1p-54 i) == 7.853981633974483096156608458198764914213e-1 - 2.775557561562891351059079170227049355775e-17 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Real part of: catan (1.0 - 0x1p-57 i) == 7.853981633974483096156608458198757330864e-1 - 3.469446951953614188823848962783813448721e-18 i":
+float: 1
+ifloat: 1
 
 # catanh
+Test "Real part of: catanh (-0x1.000002p0 + 0x1p-13 i) == -4.852030056234795712498957387213592193975 + 7.859169620684960844300240092596908675974e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-0x1.000002p0 + 0x1p-13 i) == -4.852030056234795712498957387213592193975 + 7.859169620684960844300240092596908675974e-1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catanh (-0x1.000002p0 - 0x1p-13 i) == -4.852030056234795712498957387213592193975 - 7.859169620684960844300240092596908675974e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-0x1.000002p0 - 0x1p-13 i) == -4.852030056234795712498957387213592193975 - 7.859169620684960844300240092596908675974e-1 i":
+float: 1
+ifloat: 1
 Test "Real part of: catanh (-0x1.fp1023 + 0x1.fp1023 i) == -2.871063043235098558826106732041811695767e-309 + 1.570796326794896619231321691639751442099 i":
 double: 1
 idouble: 1
@@ -3887,6 +4103,100 @@ double: 1
 idouble: 1
 ildouble: 1
 ldouble: 1
+Test "Real part of: catanh (-0x1p-13 + 0x1.000002p0 i) == -6.103514882246036852433556327261700380577e-5 + 7.853982267273793866654490522673596014524e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: catanh (-0x1p-13 + 0x1.000002p0 i) == -6.103514882246036852433556327261700380577e-5 + 7.853982267273793866654490522673596014524e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-0x1p-13 + 1.0 i) == -6.103515609841754902688560615027452023669e-5 + 7.853981671227386080775748393881580082970e-1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catanh (-0x1p-13 - 0x1.000002p0 i) == -6.103514882246036852433556327261700380577e-5 - 7.853982267273793866654490522673596014524e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: catanh (-0x1p-13 - 0x1.000002p0 i) == -6.103514882246036852433556327261700380577e-5 - 7.853982267273793866654490522673596014524e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-0x1p-13 - 1.0 i) == -6.103515609841754902688560615027452023669e-5 - 7.853981671227386080775748393881580082970e-1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catanh (-0x1p-27 + 0x0.fffffffffffff8p0 i) == -3.725290298461914441624447420137706700965e-9 + 7.853981633974482679822974223765039144191e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (-0x1p-27 + 0x1.0000000000001p0 i) == -3.725290298461913200853528590596263270474e-9 + 7.853981633974484345157511161499711112683e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: catanh (-0x1p-27 + 1.0 i) == -3.725290298461914028034141143623846306386e-9 + 7.853981633974483234934486536343324763447e-1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catanh (-0x1p-27 - 0x0.fffffffffffff8p0 i) == -3.725290298461914441624447420137706700965e-9 - 7.853981633974482679822974223765039144191e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Real part of: catanh (-0x1p-27 - 0x1.0000000000001p0 i) == -3.725290298461913200853528590596263270474e-9 - 7.853981633974484345157511161499711112683e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: catanh (-0x1p-27 - 1.0 i) == -3.725290298461914028034141143623846306386e-9 - 7.853981633974483234934486536343324763447e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-0x1p-33 + 1.0 i) == -5.820766091346740722643102318246316469910e-11 + 7.853981633974483096190489776088929224056e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-0x1p-33 - 1.0 i) == -5.820766091346740722643102318246316469910e-11 - 7.853981633974483096190489776088929224056e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-0x1p-54 + 0x1.000000000000000000000000008p0 i) == -2.775557561562891351059079170226980932999e-17 + 7.853981633974483096156608458198888173729e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catanh (-0x1p-54 + 1.0 i) == -2.775557561562891351059079170227049355775e-17 + 7.853981633974483096156608458198764914213e-1 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catanh (-0x1p-54 - 0x1.000000000000000000000000008p0 i) == -2.775557561562891351059079170226980932999e-17 - 7.853981633974483096156608458198888173729e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catanh (-0x1p-54 - 1.0 i) == -2.775557561562891351059079170227049355775e-17 - 7.853981633974483096156608458198764914213e-1 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catanh (-0x1p-57 + 1.0 i) == -3.469446951953614188823848962783813448721e-18 + 7.853981633974483096156608458198757330864e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-0x1p-57 - 1.0 i) == -3.469446951953614188823848962783813448721e-18 - 7.853981633974483096156608458198757330864e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 + 0x1p-13 i) == -4.852030264850939738801379894163661227127 + 7.854286809755354140031716771044626356262e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 + 0x1p-27 i) == -9.704060527839234335310696652368086117807 + 7.853981652600934588466178684534110069553e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 + 0x1p-33 i) == -1.178350206951907026009379309773625595762e1 + 7.853981634265521400723945494331241018449e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 + 0x1p-54 i) == -1.906154746539849600897388334009985581467e1 + 7.853981633974483234934486536343324763447e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 + 0x1p-57 i) == -2.010126823623841397309973152228712047720e1 + 7.853981633974483113503843217966828154612e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 - 0x1p-13 i) == -4.852030264850939738801379894163661227127 - 7.854286809755354140031716771044626356262e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 - 0x1p-27 i) == -9.704060527839234335310696652368086117807 - 7.853981652600934588466178684534110069553e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 - 0x1p-33 i) == -1.178350206951907026009379309773625595762e1 - 7.853981634265521400723945494331241018449e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 - 0x1p-54 i) == -1.906154746539849600897388334009985581467e1 - 7.853981633974483234934486536343324763447e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (-1.0 - 0x1p-57 i) == -2.010126823623841397309973152228712047720e1 - 7.853981633974483113503843217966828154612e-1 i":
+float: 1
+ifloat: 1
 Test "Real part of: catanh (-2 - 3 i) == -0.14694666622552975204743278515471595 - 1.3389725222944935611241935759091443 i":
 double: 4
 idouble: 4
@@ -3899,6 +4209,12 @@ idouble: 1
 Test "Imaginary part of: catanh (0.75 + 1.25 i) == 0.261492138795671927078652057366532140 + 0.996825126463918666098902241310446708 i":
 float: 6
 ifloat: 6
+Test "Imaginary part of: catanh (0x1.000002p0 + 0x1p-13 i) == 4.852030056234795712498957387213592193975 + 7.859169620684960844300240092596908675974e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (0x1.000002p0 - 0x1p-13 i) == 4.852030056234795712498957387213592193975 - 7.859169620684960844300240092596908675974e-1 i":
+float: 1
+ifloat: 1
 Test "Real part of: catanh (0x1.fp1023 + 0x1.fp1023 i) == 2.871063043235098558826106732041811695767e-309 + 1.570796326794896619231321691639751442099 i":
 double: 1
 idouble: 1
@@ -3919,6 +4235,98 @@ double: 1
 idouble: 1
 ildouble: 1
 ldouble: 1
+Test "Real part of: catanh (0x1p-13 + 0x0.ffffffp0 i) == 6.103515973639646453881721999956617260502e-5 + 7.853981373204155542484315721351697277336e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Imaginary part of: catanh (0x1p-13 + 0x1.000002p0 i) == 6.103514882246036852433556327261700380577e-5 + 7.853982267273793866654490522673596014524e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (0x1p-13 + 1.0 i) == 6.103515609841754902688560615027452023669e-5 + 7.853981671227386080775748393881580082970e-1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catanh (0x1p-13 - 0x0.ffffffp0 i) == 6.103515973639646453881721999956617260502e-5 - 7.853981373204155542484315721351697277336e-1 i":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "Imaginary part of: catanh (0x1p-13 - 0x1.000002p0 i) == 6.103514882246036852433556327261700380577e-5 - 7.853982267273793866654490522673596014524e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (0x1p-13 - 1.0 i) == 6.103515609841754902688560615027452023669e-5 - 7.853981671227386080775748393881580082970e-1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catanh (0x1p-27 + 0x0.fffffffffffff8p0 i) == 3.725290298461914441624447420137706700965e-9 + 7.853981633974482679822974223765039144191e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: catanh (0x1p-27 + 1.0 i) == 3.725290298461914028034141143623846306386e-9 + 7.853981633974483234934486536343324763447e-1 i":
+float: 1
+ifloat: 1
+Test "Real part of: catanh (0x1p-27 - 0x0.fffffffffffff8p0 i) == 3.725290298461914441624447420137706700965e-9 - 7.853981633974482679822974223765039144191e-1 i":
+double: 1
+idouble: 1
+Test "Imaginary part of: catanh (0x1p-27 - 1.0 i) == 3.725290298461914028034141143623846306386e-9 - 7.853981633974483234934486536343324763447e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (0x1p-33 + 1.0 i) == 5.820766091346740722643102318246316469910e-11 + 7.853981633974483096190489776088929224056e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (0x1p-33 - 1.0 i) == 5.820766091346740722643102318246316469910e-11 - 7.853981633974483096190489776088929224056e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (0x1p-54 + 0x1.000000000000000000000000008p0 i) == 2.775557561562891351059079170226980932999e-17 + 7.853981633974483096156608458198888173729e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catanh (0x1p-54 + 1.0 i) == 2.775557561562891351059079170227049355775e-17 + 7.853981633974483096156608458198764914213e-1 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catanh (0x1p-54 - 0x1.000000000000000000000000008p0 i) == 2.775557561562891351059079170226980932999e-17 - 7.853981633974483096156608458198888173729e-1 i":
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catanh (0x1p-54 - 1.0 i) == 2.775557561562891351059079170227049355775e-17 - 7.853981633974483096156608458198764914213e-1 i":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "Imaginary part of: catanh (0x1p-57 + 1.0 i) == 3.469446951953614188823848962783813448721e-18 + 7.853981633974483096156608458198757330864e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (0x1p-57 - 1.0 i) == 3.469446951953614188823848962783813448721e-18 - 7.853981633974483096156608458198757330864e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 + 0x1p-13 i) == 4.852030264850939738801379894163661227127 + 7.854286809755354140031716771044626356262e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 + 0x1p-27 i) == 9.704060527839234335310696652368086117807 + 7.853981652600934588466178684534110069553e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 + 0x1p-33 i) == 1.178350206951907026009379309773625595762e1 + 7.853981634265521400723945494331241018449e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 + 0x1p-54 i) == 1.906154746539849600897388334009985581467e1 + 7.853981633974483234934486536343324763447e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 + 0x1p-57 i) == 2.010126823623841397309973152228712047720e1 + 7.853981633974483113503843217966828154612e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 - 0x1p-13 i) == 4.852030264850939738801379894163661227127 - 7.854286809755354140031716771044626356262e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 - 0x1p-27 i) == 9.704060527839234335310696652368086117807 - 7.853981652600934588466178684534110069553e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 - 0x1p-33 i) == 1.178350206951907026009379309773625595762e1 - 7.853981634265521400723945494331241018449e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 - 0x1p-54 i) == 1.906154746539849600897388334009985581467e1 - 7.853981633974483234934486536343324763447e-1 i":
+float: 1
+ifloat: 1
+Test "Imaginary part of: catanh (1.0 - 0x1p-57 i) == 2.010126823623841397309973152228712047720e1 - 7.853981633974483113503843217966828154612e-1 i":
+float: 1
+ifloat: 1
 
 # cbrt
 Test "cbrt (-27.0) == -3.0":
@@ -6421,13 +6829,17 @@ ldouble: 1
 
 Function: Real part of "catanh":
 double: 4
+float: 1
 idouble: 4
+ifloat: 1
 ildouble: 1
 ldouble: 1
 
 Function: Imaginary part of "catanh":
-float: 6
-ifloat: 6
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
 
 Function: "cbrt":
 double: 1