aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh@redhat.com>2013-04-03 13:38:39 +0530
committerSiddhesh Poyarekar <siddhesh@redhat.com>2013-04-03 15:50:15 +0530
commit64aabd4b80b5a769f2308d5a6dd9393fd2943d0c (patch)
treed2da497e6822560f2b295169949eef4592e36732
parentc871eccd1e0102402901b67c0a9a453a38c0e3f9 (diff)
downloadglibc-64aabd4b80b5a769f2308d5a6dd9393fd2943d0c.zip
glibc-64aabd4b80b5a769f2308d5a6dd9393fd2943d0c.tar.gz
glibc-64aabd4b80b5a769f2308d5a6dd9393fd2943d0c.tar.bz2
Add benchmark inputs for atan
Add separate inputs for slow and fast paths of atan
-rw-r--r--ChangeLog5
-rw-r--r--benchtests/Makefile15
-rw-r--r--benchtests/atan-inputs3
-rw-r--r--benchtests/slowatan-inputs3
-rw-r--r--benchtests/slowatan.c19
5 files changed, 44 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 492b439..6de6999 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2013-04-03 Siddhesh Poyarekar <siddhesh@redhat.com>
+ * benchtests/Makefile (bench): Add atan and slowatan.
+ * benchtests/atan-inputs: New file.
+ * benchtests/slowatan-inputs: New file.
+ * benchtests/slowatan.c: New file.
+
* sysdeps/ieee754/dbl-64/mpa.h (TWO): Remove definition.
* sysdeps/ieee754/dbl-64/mpatan.c (__mpatan): Replace TWO with
its value.
diff --git a/benchtests/Makefile b/benchtests/Makefile
index 751694a..a6a9299 100644
--- a/benchtests/Makefile
+++ b/benchtests/Makefile
@@ -45,7 +45,7 @@
# See pow-inputs for an example.
subdir := benchtests
-bench := exp pow rint sin slowexp slowpow slowsin
+bench := exp pow rint sin atan slowexp slowpow slowsin slowatan
# exp function fast path
exp-ITER = 5e8
@@ -77,6 +77,12 @@ sin-ARGLIST = double
sin-RET = double
LDFLAGS-bench-sin = -lm
+# atan function fast path
+atan-ITER = 6e9
+atan-ARGLIST = double
+atan-RET = double
+LDFLAGS-bench-atan = -lm
+
# pow function slowest path
slowpow-ITER = 1e5
slowpow-ARGLIST = double:double
@@ -91,5 +97,12 @@ slowsin-RET = double
slowsin-INCLUDE = slowsin.c
LDFLAGS-bench-slowsin = -lm
+# atan function slowest path
+slowatan-ITER = 3e8
+slowatan-ARGLIST = double
+slowatan-RET = double
+slowatan-INCLUDE = slowatan.c
+LDFLAGS-bench-slowatan = -lm
+
include ../Makeconfig
include ../Rules
diff --git a/benchtests/atan-inputs b/benchtests/atan-inputs
new file mode 100644
index 0000000..c685db3
--- /dev/null
+++ b/benchtests/atan-inputs
@@ -0,0 +1,3 @@
+0x1.000000c5cba86p0
+0x1.000001883003ap0
+0x1.00000dfb2b674p0
diff --git a/benchtests/slowatan-inputs b/benchtests/slowatan-inputs
new file mode 100644
index 0000000..e557a3c
--- /dev/null
+++ b/benchtests/slowatan-inputs
@@ -0,0 +1,3 @@
+0x1.000000c5cba87p0
+0x1.000001883003bp0
+0x1.00000dfb2b675p0
diff --git a/benchtests/slowatan.c b/benchtests/slowatan.c
new file mode 100644
index 0000000..9a11d30
--- /dev/null
+++ b/benchtests/slowatan.c
@@ -0,0 +1,19 @@
+/* Define slowatan.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define slowatan atan