about summary refs log tree commit diff
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.tar.gz
glibc-037714dd49c1d43584163e80008bb53f693e2550.tar.xz
glibc-037714dd49c1d43584163e80008bb53f693e2550.zip
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 90d6d47637..23e7296c34 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 5d3de5db0b..c61fd87052 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 0000000000..98f4122aa1
--- /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 0000000000..b7eb235367
--- /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 0000000000..9f56234afa
--- /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 0000000000..74a7eab3f9
--- /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 0000000000..583f16f0d1
--- /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 0000000000..4369d75776
--- /dev/null
+++ b/benchtests/tan-inputs
@@ -0,0 +1 @@
+0x1.dffffffffff1ep-22