about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh@redhat.com>2013-03-21 16:35:48 +0530
committerSiddhesh Poyarekar <siddhesh@redhat.com>2013-03-21 16:36:04 +0530
commit3775a8bc2d2e0c29c8a7e673f5f42537ced2b3c7 (patch)
treeaa17bb58b7fe31e4badfa1bce35ad2df5f3bbf61
parent0a1b2ae6f6d511519ab3c0ccbf54982ae65bc444 (diff)
downloadglibc-3775a8bc2d2e0c29c8a7e673f5f42537ced2b3c7.tar.gz
glibc-3775a8bc2d2e0c29c8a7e673f5f42537ced2b3c7.tar.xz
glibc-3775a8bc2d2e0c29c8a7e673f5f42537ced2b3c7.zip
Allow adding of arbitrary code to benchmark tests
This allows us to define custom functions in C code files and
benchmark scenarios rather than just functions.  The main current use
of this is to separate the slow and fast path benchmarks for math
functions.
-rw-r--r--ChangeLog5
-rw-r--r--Rules6
2 files changed, 10 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 858b9fa2de..3ffaa38b5b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2013-03-21  Siddhesh Poyarekar  <siddhesh@redhat.com>
+
+	* Rules ($(objpfx)bench-%.c): Include code from a C source
+	file.
+
 2013-03-21  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #15287]
diff --git a/Rules b/Rules
index bc5dacd2f6..02cdb4ac78 100644
--- a/Rules
+++ b/Rules
@@ -210,8 +210,12 @@ $(binaries-bench): %: %.o \
 	$(+link)
 
 $(objpfx)bench-%.c: %-inputs bench-skeleton.c
+	{ if [ -n "$($*-INCLUDE)" ]; then \
+	  cat $($*-INCLUDE); \
+	fi; \
 	$(..)scripts/bench.pl $(patsubst %-inputs,%,$<) \
-	  $($*-ITER) $($*-ARGLIST) $($*-RET) > $@
+	  $($*-ITER) $($*-ARGLIST) $($*-RET); } > $@-tmp
+	mv -f $@-tmp $@
 
 
 .PHONY: distclean realclean subdir_distclean subdir_realclean \