summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2015-05-01 22:54:39 +0000
committerJoseph Myers <joseph@codesourcery.com>2015-05-01 22:54:39 +0000
commit0957e15d0a58b389155750f6748f083196e06c31 (patch)
tree1c19f262e6b8c47125ea7ce4dc3e4101f40e657e
parent827bb5859c2b3e0471d6273617368fc76a821e6e (diff)
Add more tests of tan.
This patch adds some randomly-generated tests of tan that are observed to increase ulps on x86_64. Tested for x86_64 and x86 and ulps updated accordingly. * math/auto-libm-test-in: Add more tests of tan. * math/auto-libm-test-out: Regenerated. * sysdeps/i386/fpu/libm-test-ulps: Update. * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
-rw-r--r--ChangeLog5
-rw-r--r--math/auto-libm-test-in2
-rw-r--r--math/auto-libm-test-out50
-rw-r--r--sysdeps/i386/fpu/libm-test-ulps8
-rw-r--r--sysdeps/x86_64/fpu/libm-test-ulps10
5 files changed, 67 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 99cd7a69fe..815b1cc7ed 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2015-05-01 Joseph Myers <joseph@codesourcery.com>
+ * math/auto-libm-test-in: Add more tests of tan.
+ * math/auto-libm-test-out: Regenerated.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
* math/auto-libm-test-in: Add more tests of cos, sin and sincos.
* math/auto-libm-test-out: Regenerated.
* sysdeps/i386/fpu/libm-test-ulps: Update.
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
index b8f71ee62d..249aa9de20 100644
--- a/math/auto-libm-test-in
+++ b/math/auto-libm-test-in
@@ -2408,6 +2408,8 @@ tan 7
tan 8
tan 9
tan 10
+tan -0x1.062a48p+0
+tan -0x1.4f69cp+0
tanh 0
tanh -0
diff --git a/math/auto-libm-test-out b/math/auto-libm-test-out
index 10a303442b..139cacc3ca 100644
--- a/math/auto-libm-test-out
+++ b/math/auto-libm-test-out
@@ -183731,6 +183731,56 @@ tan 10
= tan tonearest ldbl-128ibm 0xap+0L : 0xa.5faf9a5f1bc12efead12fa489p-4L : inexact-ok
= tan towardzero ldbl-128ibm 0xap+0L : 0xa.5faf9a5f1bc12efead12fa488cp-4L : inexact-ok
= tan upward ldbl-128ibm 0xap+0L : 0xa.5faf9a5f1bc12efead12fa489p-4L : inexact-ok
+tan -0x1.062a48p+0
+= tan downward flt-32 -0x1.062a48p+0f : -0x1.a4a484p+0f : inexact-ok
+= tan tonearest flt-32 -0x1.062a48p+0f : -0x1.a4a482p+0f : inexact-ok
+= tan towardzero flt-32 -0x1.062a48p+0f : -0x1.a4a482p+0f : inexact-ok
+= tan upward flt-32 -0x1.062a48p+0f : -0x1.a4a482p+0f : inexact-ok
+= tan downward dbl-64 -0x1.062a48p+0 : -0x1.a4a482f560f6fp+0 : inexact-ok
+= tan tonearest dbl-64 -0x1.062a48p+0 : -0x1.a4a482f560f6ep+0 : inexact-ok
+= tan towardzero dbl-64 -0x1.062a48p+0 : -0x1.a4a482f560f6ep+0 : inexact-ok
+= tan upward dbl-64 -0x1.062a48p+0 : -0x1.a4a482f560f6ep+0 : inexact-ok
+= tan downward ldbl-96-intel -0x1.062a48p+0L : -0x1.a4a482f560f6e4dp+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0x1.062a48p+0L : -0x1.a4a482f560f6e4cep+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0x1.062a48p+0L : -0x1.a4a482f560f6e4cep+0L : inexact-ok
+= tan upward ldbl-96-intel -0x1.062a48p+0L : -0x1.a4a482f560f6e4cep+0L : inexact-ok
+= tan downward ldbl-96-m68k -0x1.062a48p+0L : -0x1.a4a482f560f6e4dp+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0x1.062a48p+0L : -0x1.a4a482f560f6e4cep+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0x1.062a48p+0L : -0x1.a4a482f560f6e4cep+0L : inexact-ok
+= tan upward ldbl-96-m68k -0x1.062a48p+0L : -0x1.a4a482f560f6e4cep+0L : inexact-ok
+= tan downward ldbl-128 -0x1.062a48p+0L : -0x1.a4a482f560f6e4ceb9d6e73567d5p+0L : inexact-ok
+= tan tonearest ldbl-128 -0x1.062a48p+0L : -0x1.a4a482f560f6e4ceb9d6e73567d4p+0L : inexact-ok
+= tan towardzero ldbl-128 -0x1.062a48p+0L : -0x1.a4a482f560f6e4ceb9d6e73567d4p+0L : inexact-ok
+= tan upward ldbl-128 -0x1.062a48p+0L : -0x1.a4a482f560f6e4ceb9d6e73567d4p+0L : inexact-ok
+= tan downward ldbl-128ibm -0x1.062a48p+0L : -0x1.a4a482f560f6e4ceb9d6e73568p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0x1.062a48p+0L : -0x1.a4a482f560f6e4ceb9d6e73568p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0x1.062a48p+0L : -0x1.a4a482f560f6e4ceb9d6e735678p+0L : inexact-ok
+= tan upward ldbl-128ibm -0x1.062a48p+0L : -0x1.a4a482f560f6e4ceb9d6e735678p+0L : inexact-ok
+tan -0x1.4f69cp+0
+= tan downward flt-32 -0x1.4f69cp+0f : -0x3.c00d44p+0f : inexact-ok
+= tan tonearest flt-32 -0x1.4f69cp+0f : -0x3.c00d44p+0f : inexact-ok
+= tan towardzero flt-32 -0x1.4f69cp+0f : -0x3.c00d4p+0f : inexact-ok
+= tan upward flt-32 -0x1.4f69cp+0f : -0x3.c00d4p+0f : inexact-ok
+= tan downward dbl-64 -0x1.4f69cp+0 : -0x3.c00d4280aa7cp+0 : inexact-ok
+= tan tonearest dbl-64 -0x1.4f69cp+0 : -0x3.c00d4280aa7bep+0 : inexact-ok
+= tan towardzero dbl-64 -0x1.4f69cp+0 : -0x3.c00d4280aa7bep+0 : inexact-ok
+= tan upward dbl-64 -0x1.4f69cp+0 : -0x3.c00d4280aa7bep+0 : inexact-ok
+= tan downward ldbl-96-intel -0x1.4f69cp+0L : -0x3.c00d4280aa7bede8p+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0x1.4f69cp+0L : -0x3.c00d4280aa7bede8p+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0x1.4f69cp+0L : -0x3.c00d4280aa7bede4p+0L : inexact-ok
+= tan upward ldbl-96-intel -0x1.4f69cp+0L : -0x3.c00d4280aa7bede4p+0L : inexact-ok
+= tan downward ldbl-96-m68k -0x1.4f69cp+0L : -0x3.c00d4280aa7bede8p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0x1.4f69cp+0L : -0x3.c00d4280aa7bede8p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0x1.4f69cp+0L : -0x3.c00d4280aa7bede4p+0L : inexact-ok
+= tan upward ldbl-96-m68k -0x1.4f69cp+0L : -0x3.c00d4280aa7bede4p+0L : inexact-ok
+= tan downward ldbl-128 -0x1.4f69cp+0L : -0x3.c00d4280aa7bede62d35d88620c2p+0L : inexact-ok
+= tan tonearest ldbl-128 -0x1.4f69cp+0L : -0x3.c00d4280aa7bede62d35d88620cp+0L : inexact-ok
+= tan towardzero ldbl-128 -0x1.4f69cp+0L : -0x3.c00d4280aa7bede62d35d88620cp+0L : inexact-ok
+= tan upward ldbl-128 -0x1.4f69cp+0L : -0x3.c00d4280aa7bede62d35d88620cp+0L : inexact-ok
+= tan downward ldbl-128ibm -0x1.4f69cp+0L : -0x3.c00d4280aa7bede62d35d88621p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0x1.4f69cp+0L : -0x3.c00d4280aa7bede62d35d88621p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0x1.4f69cp+0L : -0x3.c00d4280aa7bede62d35d8862p+0L : inexact-ok
+= tan upward ldbl-128ibm -0x1.4f69cp+0L : -0x3.c00d4280aa7bede62d35d8862p+0L : inexact-ok
tanh 0
= tanh downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
= tanh tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps
index bb894e59ca..2286c8817c 100644
--- a/sysdeps/i386/fpu/libm-test-ulps
+++ b/sysdeps/i386/fpu/libm-test-ulps
@@ -1810,16 +1810,16 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "tan_towardzero":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "tan_upward":
double: 1
diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps
index 7fd3a3c591..0cb22a42fe 100644
--- a/sysdeps/x86_64/fpu/libm-test-ulps
+++ b/sysdeps/x86_64/fpu/libm-test-ulps
@@ -1952,6 +1952,8 @@ ildouble: 5
ldouble: 5
Function: "tan":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -1960,16 +1962,16 @@ double: 1
float: 2
idouble: 1
ifloat: 2
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "tan_towardzero":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "tan_upward":
double: 1