aboutsummaryrefslogtreecommitdiff
path: root/benchtests
diff options
context:
space:
mode:
Diffstat (limited to 'benchtests')
-rw-r--r--benchtests/bench-memccpy.c2
-rw-r--r--benchtests/bench-memchr.c2
-rw-r--r--benchtests/bench-memcmp.c3
-rw-r--r--benchtests/bench-memcpy-large.c2
-rw-r--r--benchtests/bench-memcpy.c2
-rw-r--r--benchtests/bench-memmem.c2
-rw-r--r--benchtests/bench-memmove-large.c2
-rw-r--r--benchtests/bench-memmove.c4
-rw-r--r--benchtests/bench-memset-large.c2
-rw-r--r--benchtests/bench-memset.c2
-rw-r--r--benchtests/bench-rawmemchr.c2
-rw-r--r--benchtests/bench-strcasecmp.c2
-rw-r--r--benchtests/bench-strcasestr.c2
-rw-r--r--benchtests/bench-strcat.c2
-rw-r--r--benchtests/bench-strchr.c2
-rw-r--r--benchtests/bench-strcmp.c2
-rw-r--r--benchtests/bench-strcpy.c2
-rw-r--r--benchtests/bench-strcpy_chk.c5
-rw-r--r--benchtests/bench-string.h44
-rw-r--r--benchtests/bench-strlen.c2
-rw-r--r--benchtests/bench-strncasecmp.c2
-rw-r--r--benchtests/bench-strncmp.c2
-rw-r--r--benchtests/bench-strncpy.c4
-rw-r--r--benchtests/bench-strnlen.c2
-rw-r--r--benchtests/bench-strpbrk.c2
-rw-r--r--benchtests/bench-strrchr.c2
-rw-r--r--benchtests/bench-strsep.c2
-rw-r--r--benchtests/bench-strspn.c2
-rw-r--r--benchtests/bench-strstr.c2
-rw-r--r--benchtests/bench-strtok.c2
30 files changed, 60 insertions, 50 deletions
diff --git a/benchtests/bench-memccpy.c b/benchtests/bench-memccpy.c
index 00ac3e1..9be8fa0 100644
--- a/benchtests/bench-memccpy.c
+++ b/benchtests/bench-memccpy.c
@@ -160,4 +160,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-memchr.c b/benchtests/bench-memchr.c
index aa012f2..7b8299a 100644
--- a/benchtests/bench-memchr.c
+++ b/benchtests/bench-memchr.c
@@ -153,4 +153,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-memcmp.c b/benchtests/bench-memcmp.c
index 96d01a1..4f01d3d 100644
--- a/benchtests/bench-memcmp.c
+++ b/benchtests/bench-memcmp.c
@@ -174,4 +174,5 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+
+#include <support/test-driver.c>
diff --git a/benchtests/bench-memcpy-large.c b/benchtests/bench-memcpy-large.c
index 1ef670e..7be9930 100644
--- a/benchtests/bench-memcpy-large.c
+++ b/benchtests/bench-memcpy-large.c
@@ -120,4 +120,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-memcpy.c b/benchtests/bench-memcpy.c
index 9d9e7b6..62e95c1 100644
--- a/benchtests/bench-memcpy.c
+++ b/benchtests/bench-memcpy.c
@@ -166,4 +166,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-memmem.c b/benchtests/bench-memmem.c
index 863f02f..ab80990 100644
--- a/benchtests/bench-memmem.c
+++ b/benchtests/bench-memmem.c
@@ -161,4 +161,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-memmove-large.c b/benchtests/bench-memmove-large.c
index b8f11c1..840907b 100644
--- a/benchtests/bench-memmove-large.c
+++ b/benchtests/bench-memmove-large.c
@@ -120,4 +120,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-memmove.c b/benchtests/bench-memmove.c
index 3858f2a..9710863 100644
--- a/benchtests/bench-memmove.c
+++ b/benchtests/bench-memmove.c
@@ -139,7 +139,7 @@ do_test (size_t align1, size_t align2, size_t len)
putchar ('\n');
}
-int
+static int
test_main (void)
{
size_t i;
@@ -188,4 +188,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-memset-large.c b/benchtests/bench-memset-large.c
index e694b92..ede0081 100644
--- a/benchtests/bench-memset-large.c
+++ b/benchtests/bench-memset-large.c
@@ -131,4 +131,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-memset.c b/benchtests/bench-memset.c
index 98ec257..d7abb44 100644
--- a/benchtests/bench-memset.c
+++ b/benchtests/bench-memset.c
@@ -190,4 +190,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-rawmemchr.c b/benchtests/bench-rawmemchr.c
index 0c00c66..9cf5d5b 100644
--- a/benchtests/bench-rawmemchr.c
+++ b/benchtests/bench-rawmemchr.c
@@ -123,4 +123,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strcasecmp.c b/benchtests/bench-strcasecmp.c
index a9a748a..7a84ab5 100644
--- a/benchtests/bench-strcasecmp.c
+++ b/benchtests/bench-strcasecmp.c
@@ -173,4 +173,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strcasestr.c b/benchtests/bench-strcasestr.c
index bc58880..11e1aad 100644
--- a/benchtests/bench-strcasestr.c
+++ b/benchtests/bench-strcasestr.c
@@ -177,4 +177,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strcat.c b/benchtests/bench-strcat.c
index 4fc2806..05207be 100644
--- a/benchtests/bench-strcat.c
+++ b/benchtests/bench-strcat.c
@@ -171,4 +171,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strchr.c b/benchtests/bench-strchr.c
index 6512085..7fc7c37 100644
--- a/benchtests/bench-strchr.c
+++ b/benchtests/bench-strchr.c
@@ -207,4 +207,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strcmp.c b/benchtests/bench-strcmp.c
index f2d83c0..8597c69 100644
--- a/benchtests/bench-strcmp.c
+++ b/benchtests/bench-strcmp.c
@@ -238,4 +238,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strcpy.c b/benchtests/bench-strcpy.c
index 5517221..a835662 100644
--- a/benchtests/bench-strcpy.c
+++ b/benchtests/bench-strcpy.c
@@ -190,4 +190,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strcpy_chk.c b/benchtests/bench-strcpy_chk.c
index ded6747..e987546 100644
--- a/benchtests/bench-strcpy_chk.c
+++ b/benchtests/bench-strcpy_chk.c
@@ -53,8 +53,7 @@ simple_strcpy_chk (char *dst, const char *src, size_t len)
#include <setjmp.h>
#include <signal.h>
-static int test_main (void);
-#include "../test-skeleton.c"
+#include <support/support.h>
volatile int chk_fail_ok;
jmp_buf chk_fail_buf;
@@ -241,3 +240,5 @@ test_main (void)
return 0;
}
+
+#include <support/test-driver.c>
diff --git a/benchtests/bench-string.h b/benchtests/bench-string.h
index 9c5371e..82cbe7a 100644
--- a/benchtests/bench-string.h
+++ b/benchtests/bench-string.h
@@ -16,6 +16,7 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#include <getopt.h>
#include <sys/cdefs.h>
typedef struct
@@ -55,7 +56,7 @@ extern impl_t __start_impls[], __stop_impls[];
# include "bench-timing.h"
-# define TEST_FUNCTION test_main ()
+# define TEST_FUNCTION test_main
# ifndef TIMEOUT
# define TIMEOUT (4 * 60)
# endif
@@ -87,24 +88,31 @@ size_t iterations = 100000;
# define CMDLINE_OPTIONS ITERATIONS_OPTIONS \
{ "random", no_argument, NULL, OPT_RANDOM }, \
{ "seed", required_argument, NULL, OPT_SEED },
-# define CMDLINE_PROCESS ITERATIONS_PROCESS \
- case OPT_RANDOM: \
- { \
- int fdr = open ("/dev/urandom", O_RDONLY); \
- \
- if (fdr < 0 || read (fdr, &seed, sizeof(seed)) != sizeof (seed)) \
- seed = time (NULL); \
- if (fdr >= 0) \
- close (fdr); \
- do_srandom = 1; \
- break; \
- } \
- \
- case OPT_SEED: \
- seed = strtoul (optarg, NULL, 0); \
- do_srandom = 1; \
- break;
+static void __attribute__ ((used))
+cmdline_process_function (int c)
+{
+ switch (c)
+ {
+ ITERATIONS_PROCESS
+ case OPT_RANDOM:
+ {
+ int fdr = open ("/dev/urandom", O_RDONLY);
+ if (fdr < 0 || read (fdr, &seed, sizeof(seed)) != sizeof (seed))
+ seed = time (NULL);
+ if (fdr >= 0)
+ close (fdr);
+ do_srandom = 1;
+ break;
+ }
+
+ case OPT_SEED:
+ seed = strtoul (optarg, NULL, 0);
+ do_srandom = 1;
+ break;
+ }
+}
+# define CMDLINE_PROCESS cmdline_process_function
# define CALL(impl, ...) \
(* (proto_t) (impl)->fn) (__VA_ARGS__)
diff --git a/benchtests/bench-strlen.c b/benchtests/bench-strlen.c
index a5305b5..f854059 100644
--- a/benchtests/bench-strlen.c
+++ b/benchtests/bench-strlen.c
@@ -139,4 +139,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strncasecmp.c b/benchtests/bench-strncasecmp.c
index 6cbab7d..5570df2 100644
--- a/benchtests/bench-strncasecmp.c
+++ b/benchtests/bench-strncasecmp.c
@@ -204,4 +204,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strncmp.c b/benchtests/bench-strncmp.c
index 2f03668..ac35c86 100644
--- a/benchtests/bench-strncmp.c
+++ b/benchtests/bench-strncmp.c
@@ -296,4 +296,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strncpy.c b/benchtests/bench-strncpy.c
index 5843571..916eedb 100644
--- a/benchtests/bench-strncpy.c
+++ b/benchtests/bench-strncpy.c
@@ -172,7 +172,7 @@ do_test (size_t align1, size_t align2, size_t len, size_t n, int max_char)
putchar ('\n');
}
-int
+static int
test_main (void)
{
size_t i;
@@ -207,4 +207,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strnlen.c b/benchtests/bench-strnlen.c
index f3dbf97..794b994 100644
--- a/benchtests/bench-strnlen.c
+++ b/benchtests/bench-strnlen.c
@@ -150,4 +150,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strpbrk.c b/benchtests/bench-strpbrk.c
index 6591a83..4647be7 100644
--- a/benchtests/bench-strpbrk.c
+++ b/benchtests/bench-strpbrk.c
@@ -203,4 +203,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strrchr.c b/benchtests/bench-strrchr.c
index ff93634..f211a2c 100644
--- a/benchtests/bench-strrchr.c
+++ b/benchtests/bench-strrchr.c
@@ -181,4 +181,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strsep.c b/benchtests/bench-strsep.c
index 70dbb37..774a093 100644
--- a/benchtests/bench-strsep.c
+++ b/benchtests/bench-strsep.c
@@ -171,4 +171,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strspn.c b/benchtests/bench-strspn.c
index 606a8dd..498b140 100644
--- a/benchtests/bench-strspn.c
+++ b/benchtests/bench-strspn.c
@@ -189,4 +189,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strstr.c b/benchtests/bench-strstr.c
index 5e50e8e..b28685c 100644
--- a/benchtests/bench-strstr.c
+++ b/benchtests/bench-strstr.c
@@ -174,4 +174,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/benchtests/bench-strtok.c b/benchtests/bench-strtok.c
index 41e0e45..0c3bfe1 100644
--- a/benchtests/bench-strtok.c
+++ b/benchtests/bench-strtok.c
@@ -177,4 +177,4 @@ test_main (void)
return ret;
}
-#include "../test-skeleton.c"
+#include <support/test-driver.c>