aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh@redhat.com>2013-04-17 17:45:55 +0530
committerSiddhesh Poyarekar <siddhesh@redhat.com>2013-04-17 17:45:55 +0530
commit037714dd49c1d43584163e80008bb53f693e2550 (patch)
tree7231f8fedeebe7a547749ffd27de6637e53bba54
parente913141d5f4d4eed4b65f55b0077aeb1c8234e25 (diff)
downloadglibc-037714dd49c1d43584163e80008bb53f693e2550.zip
glibc-037714dd49c1d43584163e80008bb53f693e2550.tar.gz
glibc-037714dd49c1d43584163e80008bb53f693e2550.tar.bz2
Add benchmark inputs for cos and tan
-rw-r--r--ChangeLog11
-rw-r--r--benchtests/Makefile29
-rw-r--r--benchtests/cos-inputs5
-rw-r--r--benchtests/slowcos-inputs5
-rw-r--r--benchtests/slowcos.c19
-rw-r--r--benchtests/slowtan-inputs1
-rw-r--r--benchtests/slowtan.c19
-rw-r--r--benchtests/tan-inputs1
8 files changed, 89 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 90d6d47..23e7296 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2013-04-17 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * benchtests/Makefile (bench): Add cos, tan, slowcos and
+ slowtan.
+ * benchtests/cos-inputs: New file.
+ * benchtests/slowcos-inputs: New file.
+ * benchtests/slowcos.c: New file.
+ * benchtests/slowtan-inputs: New file.
+ * benchtests/slowtan.c: New file.
+ * benchtests/tan-inputs: New file.
+
2013-04-16 Roland McGrath <roland@hack.frob.com>
* rt/tst-aio7.c (do_test): Don't test O_RDONLY fd case, which is now
diff --git a/benchtests/Makefile b/benchtests/Makefile
index 5d3de5d..c61fd87 100644
--- a/benchtests/Makefile
+++ b/benchtests/Makefile
@@ -45,7 +45,8 @@
# See pow-inputs for an example.
subdir := benchtests
-bench := exp pow rint sin atan slowexp slowpow slowsin slowatan
+bench := exp pow rint sin cos tan atan \
+ slowexp slowpow slowsin slowcos slowtan slowatan
# exp function fast path
exp-ITER = 5e8
@@ -77,6 +78,18 @@ sin-ARGLIST = double
sin-RET = double
LDFLAGS-bench-sin = -lm
+# cos function fast path
+cos-ITER = 3e9
+cos-ARGLIST = double
+cos-RET = double
+LDFLAGS-bench-cos = -lm
+
+# tan function fast path
+tan-ITER = 3e9
+tan-ARGLIST = double
+tan-RET = double
+LDFLAGS-bench-tan = -lm
+
# atan function fast path
atan-ITER = 6e9
atan-ARGLIST = double
@@ -97,6 +110,20 @@ slowsin-RET = double
slowsin-INCLUDE = slowsin.c
LDFLAGS-bench-slowsin = -lm
+# cos function slowest path
+slowcos-ITER = 3e7
+slowcos-ARGLIST = double
+slowcos-RET = double
+slowcos-INCLUDE = slowcos.c
+LDFLAGS-bench-slowcos = -lm
+
+# tan function slowest path
+slowtan-ITER = 3e7
+slowtan-ARGLIST = double
+slowtan-RET = double
+slowtan-INCLUDE = slowtan.c
+LDFLAGS-bench-slowtan = -lm
+
# atan function slowest path
slowatan-ITER = 3e8
slowatan-ARGLIST = double
diff --git a/benchtests/cos-inputs b/benchtests/cos-inputs
new file mode 100644
index 0000000..98f4122
--- /dev/null
+++ b/benchtests/cos-inputs
@@ -0,0 +1,5 @@
+0x1.000000cf4a2a1p0
+0x1.0000010b239a8p0
+0x1.00000162a932ap0
+0x1.000002d452a11p0
+0x1.000005bc7d86cp0
diff --git a/benchtests/slowcos-inputs b/benchtests/slowcos-inputs
new file mode 100644
index 0000000..b7eb235
--- /dev/null
+++ b/benchtests/slowcos-inputs
@@ -0,0 +1,5 @@
+0x1.000000cf4a2a2p0
+0x1.0000010b239a9p0
+0x1.00000162a932bp0
+0x1.000002d452a10p0
+0x1.000005bc7d86dp0
diff --git a/benchtests/slowcos.c b/benchtests/slowcos.c
new file mode 100644
index 0000000..9f56234
--- /dev/null
+++ b/benchtests/slowcos.c
@@ -0,0 +1,19 @@
+/* Define slowcos.
+ 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 slowcos cos
diff --git a/benchtests/slowtan-inputs b/benchtests/slowtan-inputs
new file mode 100644
index 0000000..74a7eab
--- /dev/null
+++ b/benchtests/slowtan-inputs
@@ -0,0 +1 @@
+0x1.dffffffffff1fp-22
diff --git a/benchtests/slowtan.c b/benchtests/slowtan.c
new file mode 100644
index 0000000..583f16f
--- /dev/null
+++ b/benchtests/slowtan.c
@@ -0,0 +1,19 @@
+/* Define slowtan.
+ 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 slowtan tan
diff --git a/benchtests/tan-inputs b/benchtests/tan-inputs
new file mode 100644
index 0000000..4369d75
--- /dev/null
+++ b/benchtests/tan-inputs
@@ -0,0 +1 @@
+0x1.dffffffffff1ep-22