summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2012-10-19 22:04:19 -0700
committerH.J. Lu <hjl.tools@gmail.com>2012-10-19 22:10:16 -0700
commit69f07e5fd1a68cc2d2363394fdab3882b83082b2 (patch)
tree91df535409e7db31748deb668da0535f843e6fae
parentde54b33a3df1de0a2fd0197bec9ab9397298d39a (diff)
downloadglibc-69f07e5fd1a68cc2d2363394fdab3882b83082b2.tar.gz
Add string IFUNC tests
-rw-r--r--ChangeLog60
-rw-r--r--string/Makefile2
-rw-r--r--string/test-bcopy-ifunc.c20
-rw-r--r--string/test-bzero-ifunc.c20
-rw-r--r--string/test-memccpy-ifunc.c20
-rw-r--r--string/test-memccpy.c3
-rw-r--r--string/test-memchr-ifunc.c20
-rw-r--r--string/test-memchr.c3
-rw-r--r--string/test-memcmp-ifunc.c20
-rw-r--r--string/test-memcmp.c5
-rw-r--r--string/test-memcpy-ifunc.c20
-rw-r--r--string/test-memcpy.c3
-rw-r--r--string/test-memmem-ifunc.c20
-rw-r--r--string/test-memmem.c3
-rw-r--r--string/test-memmove-ifunc.c20
-rw-r--r--string/test-memmove.c5
-rw-r--r--string/test-mempcpy-ifunc.c20
-rw-r--r--string/test-mempcpy.c3
-rw-r--r--string/test-memset-ifunc.c20
-rw-r--r--string/test-memset.c5
-rw-r--r--string/test-rawmemchr-ifunc.c20
-rw-r--r--string/test-rawmemchr.c3
-rw-r--r--string/test-stpcpy-ifunc.c20
-rw-r--r--string/test-stpcpy.c3
-rw-r--r--string/test-stpncpy-ifunc.c20
-rw-r--r--string/test-stpncpy.c3
-rw-r--r--string/test-strcasecmp-ifunc.c20
-rw-r--r--string/test-strcasecmp.c3
-rw-r--r--string/test-strcasestr-ifunc.c20
-rw-r--r--string/test-strcasestr.c3
-rw-r--r--string/test-strcat-ifunc.c20
-rw-r--r--string/test-strcat.c3
-rw-r--r--string/test-strchr-ifunc.c20
-rw-r--r--string/test-strchr.c11
-rw-r--r--string/test-strchrnul-ifunc.c20
-rw-r--r--string/test-strcmp-ifunc.c20
-rw-r--r--string/test-strcmp.c5
-rw-r--r--string/test-strcpy-ifunc.c20
-rw-r--r--string/test-strcpy.c7
-rw-r--r--string/test-strcspn-ifunc.c20
-rw-r--r--string/test-strcspn.c3
-rw-r--r--string/test-strlen-ifunc.c20
-rw-r--r--string/test-strlen.c7
-rw-r--r--string/test-strncasecmp-ifunc.c20
-rw-r--r--string/test-strncasecmp.c1
-rw-r--r--string/test-strncat-ifunc.c20
-rw-r--r--string/test-strncat.c3
-rw-r--r--string/test-strncmp-ifunc.c20
-rw-r--r--string/test-strncmp.c3
-rw-r--r--string/test-strncpy-ifunc.c20
-rw-r--r--string/test-strncpy.c3
-rw-r--r--string/test-strnlen-ifunc.c20
-rw-r--r--string/test-strnlen.c3
-rw-r--r--string/test-strpbrk-ifunc.c20
-rw-r--r--string/test-strpbrk.c3
-rw-r--r--string/test-strrchr-ifunc.c20
-rw-r--r--string/test-strrchr.c7
-rw-r--r--string/test-strspn-ifunc.c20
-rw-r--r--string/test-strspn.c3
-rw-r--r--string/test-strstr-ifunc.c20
-rw-r--r--string/test-strstr.c3
61 files changed, 769 insertions, 23 deletions
diff --git a/ChangeLog b/ChangeLog
index 5caa361627..de7470c44b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,65 @@
2012-10-20 H.J. Lu <hongjiu.lu@intel.com>
+ * string/Makefile (tests-ifunc): New variable.
+ (tests): Add $(tests-ifunc).
+ * string/test-memccpy.c (TEST_NAME): New macro.
+ * string/test-memchr.c (TEST_NAME): Likewise.
+ * string/test-memcmp.c (TEST_NAME): Likewise.
+ * string/test-memcpy.c (TEST_NAME): Likewise.
+ * string/test-memmem.c (TEST_NAME): Likewise.
+ * string/test-memmove.c (TEST_NAME): Likewise.
+ * string/test-memset.c (TEST_NAME): Likewise.
+ * string/test-rawmemchr.c (TEST_NAME): Likewise.
+ * string/test-stpcpy.c (TEST_NAME): Likewise.
+ * string/test-stpncpy.c (TEST_NAME): Likewise.
+ * string/test-strcasecmp.c (TEST_NAME): Likewise.
+ * string/test-strcasestr.c (TEST_NAME): Likewise.
+ * string/test-strcat.c (TEST_NAME): Likewise.
+ * string/test-strchr.c (TEST_NAME): Likewise.
+ * string/test-strcmp.c(TEST_NAME): Likewise.
+ * string/test-strcpy.c (TEST_NAME): Likewise.
+ * string/test-strcspn.c (TEST_NAME): Likewise.
+ * string/test-strlen.c (TEST_NAME): Likewise.
+ * string/test-strncasecmp.c (TEST_NAME): Likewise.
+ * string/test-strncmp.c (TEST_NAME): Likewise.
+ * string/test-strncpy.c (TEST_NAME): Likewise.
+ * string/test-strnlen.c (TEST_NAME): Likewise.
+ * string/test-strpbrk.c (TEST_NAME): Likewise.
+ * string/test-strrchr.c (TEST_NAME): Likewise.
+ * string/test-strspn.c (TEST_NAME): Likewise.
+ * string/test-strstr.c (TEST_NAME): Likewise.
+ * string/test-bcopy-ifunc.c: New file.
+ * string/test-bzero-ifunc.c: Likewise.
+ * string/test-memccpy-ifunc.c: Likewise.
+ * string/test-memchr-ifunc.c: Likewise.
+ * string/test-memcmp-ifunc.c: Likewise.
+ * string/test-memcpy-ifunc.c: Likewise.
+ * string/test-memmem-ifunc.c: Likewise.
+ * string/test-memmove-ifunc.c: Likewise.
+ * string/test-mempcpy-ifunc.c: Likewise.
+ * string/test-memset-ifunc.c: Likewise.
+ * string/test-rawmemchr-ifunc.c: Likewise.
+ * string/test-stpcpy-ifunc.c: Likewise.
+ * string/test-stpncpy-ifunc.c: Likewise.
+ * string/test-strcasecmp-ifunc.c: Likewise.
+ * string/test-strcasestr-ifunc.c: Likewise.
+ * string/test-strcat-ifunc.c: Likewise.
+ * string/test-strchr-ifunc.c: Likewise.
+ * string/test-strchrnul-ifunc.c: Likewise.
+ * string/test-strcmp-ifunc.c: Likewise.
+ * string/test-strcpy-ifunc.c: Likewise.
+ * string/test-strcspn-ifunc.c: Likewise.
+ * string/test-strlen-ifunc.c: Likewise.
+ * string/test-strncasecmp-ifunc.c: Likewise.
+ * string/test-strncat-ifunc.c: Likewise.
+ * string/test-strncmp-ifunc.c: Likewise.
+ * string/test-strncpy-ifunc.c: Likewise.
+ * string/test-strnlen-ifunc.c: Likewise.
+ * string/test-strpbrk-ifunc.c: Likewise.
+ * string/test-strrchr-ifunc.c: Likewise.
+ * string/test-strspn-ifunc.c: Likewise.
+ * string/test-strstr-ifunc.c: Likewise.
+
* debug/Makefile (tests-ifunc): New variable.
(tests): Add $(tests-ifunc).
* debug/test-stpcpy_chk.c (TEST_NAME): New macro.
diff --git a/string/Makefile b/string/Makefile
index 8d1db744f7..54eae7072f 100644
--- a/string/Makefile
+++ b/string/Makefile
@@ -58,6 +58,8 @@ tests := tester inl-tester noinl-tester testcopy test-ffs \
bug-envz1 tst-strxfrm2 tst-endian tst-svc2 \
tst-strtok_r
+tests-ifunc := $(strop-tests:%=test-%-ifunc)
+tests += $(tests-ifunc)
include ../Rules
diff --git a/string/test-bcopy-ifunc.c b/string/test-bcopy-ifunc.c
new file mode 100644
index 0000000000..21be43cccf
--- /dev/null
+++ b/string/test-bcopy-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of bcopy function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-bcopy.c"
diff --git a/string/test-bzero-ifunc.c b/string/test-bzero-ifunc.c
new file mode 100644
index 0000000000..0b3b456717
--- /dev/null
+++ b/string/test-bzero-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of bzero function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-bzero.c"
diff --git a/string/test-memccpy-ifunc.c b/string/test-memccpy-ifunc.c
new file mode 100644
index 0000000000..3efaeff368
--- /dev/null
+++ b/string/test-memccpy-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of memccpy function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-memccpy.c"
diff --git a/string/test-memccpy.c b/string/test-memccpy.c
index 8fa96bc9b7..05940ee2fc 100644
--- a/string/test-memccpy.c
+++ b/string/test-memccpy.c
@@ -1,5 +1,5 @@
/* Test and measure memccpy functions.
- Copyright (C) 1999, 2002, 2003, 2005 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "memccpy"
#include "test-string.h"
void *simple_memccpy (void *, const void *, int, size_t);
diff --git a/string/test-memchr-ifunc.c b/string/test-memchr-ifunc.c
new file mode 100644
index 0000000000..e1e8b44342
--- /dev/null
+++ b/string/test-memchr-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of memchr function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-memchr.c"
diff --git a/string/test-memchr.c b/string/test-memchr.c
index 315726dc25..cad639b4a8 100644
--- a/string/test-memchr.c
+++ b/string/test-memchr.c
@@ -1,5 +1,5 @@
/* Test and measure memchr functions.
- Copyright (C) 1999, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "memchr"
#include "test-string.h"
typedef char *(*proto_t) (const char *, int, size_t);
diff --git a/string/test-memcmp-ifunc.c b/string/test-memcmp-ifunc.c
new file mode 100644
index 0000000000..6a8f41828c
--- /dev/null
+++ b/string/test-memcmp-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of memcmp function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-memcmp.c"
diff --git a/string/test-memcmp.c b/string/test-memcmp.c
index 69076d00be..fc9d4d2326 100644
--- a/string/test-memcmp.c
+++ b/string/test-memcmp.c
@@ -19,6 +19,11 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#ifdef WIDE
+# define TEST_NAME "wmemcmp"
+#else
+# define TEST_NAME "memcmp"
+#endif
#include "test-string.h"
#ifdef WIDE
# include <inttypes.h>
diff --git a/string/test-memcpy-ifunc.c b/string/test-memcpy-ifunc.c
new file mode 100644
index 0000000000..4195bba620
--- /dev/null
+++ b/string/test-memcpy-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of memcpy function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-memcpy.c"
diff --git a/string/test-memcpy.c b/string/test-memcpy.c
index 311b4b4981..1340c75c7e 100644
--- a/string/test-memcpy.c
+++ b/string/test-memcpy.c
@@ -1,5 +1,5 @@
/* Test and measure memcpy functions.
- Copyright (C) 1999, 2002, 2003, 2005 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -21,6 +21,7 @@
# define MEMCPY_RESULT(dst, len) dst
# define MIN_PAGE_SIZE 131072
# define TEST_MAIN
+# define TEST_NAME "memcpy"
# include "test-string.h"
char *simple_memcpy (char *, const char *, size_t);
diff --git a/string/test-memmem-ifunc.c b/string/test-memmem-ifunc.c
new file mode 100644
index 0000000000..12c32d9188
--- /dev/null
+++ b/string/test-memmem-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of memmem function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-memmem.c"
diff --git a/string/test-memmem.c b/string/test-memmem.c
index 5f32a0e791..6ca1188e94 100644
--- a/string/test-memmem.c
+++ b/string/test-memmem.c
@@ -1,5 +1,5 @@
/* Test and measure memmem functions.
- Copyright (C) 2008 Free Software Foundation, Inc.
+ Copyright (C) 2008-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Ulrich Drepper <drepper@redhat.com>, 2008.
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "memmem"
#define BUF1PAGES 20
#define ITERATIONS 500
#include "test-string.h"
diff --git a/string/test-memmove-ifunc.c b/string/test-memmove-ifunc.c
new file mode 100644
index 0000000000..377cffd096
--- /dev/null
+++ b/string/test-memmove-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of memmove function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-memmove.c"
diff --git a/string/test-memmove.c b/string/test-memmove.c
index cbd40cd31e..13c5aff8a2 100644
--- a/string/test-memmove.c
+++ b/string/test-memmove.c
@@ -18,6 +18,11 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#ifdef TEST_BCOPY
+# define TEST_NAME "bcopy"
+#else
+# define TEST_NAME "memmove"
+#endif
#include "test-string.h"
char *simple_memmove (char *, const char *, size_t);
diff --git a/string/test-mempcpy-ifunc.c b/string/test-mempcpy-ifunc.c
new file mode 100644
index 0000000000..956a23fef9
--- /dev/null
+++ b/string/test-mempcpy-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of mempcpy function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-mempcpy.c"
diff --git a/string/test-mempcpy.c b/string/test-mempcpy.c
index c021a66301..1679e9d11f 100644
--- a/string/test-mempcpy.c
+++ b/string/test-mempcpy.c
@@ -1,5 +1,5 @@
/* Test and measure mempcpy functions.
- Copyright (C) 1999, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -19,6 +19,7 @@
#define MEMCPY_RESULT(dst, len) (dst) + (len)
#define TEST_MAIN
+#define TEST_NAME "mempcpy"
#include "test-string.h"
char *simple_mempcpy (char *, const char *, size_t);
diff --git a/string/test-memset-ifunc.c b/string/test-memset-ifunc.c
new file mode 100644
index 0000000000..3e26aa395b
--- /dev/null
+++ b/string/test-memset-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of memset function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-memset.c"
diff --git a/string/test-memset.c b/string/test-memset.c
index e8dd406c20..af85a28762 100644
--- a/string/test-memset.c
+++ b/string/test-memset.c
@@ -18,6 +18,11 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#ifdef TEST_BZERO
+# define TEST_NAME "bzero"
+#else
+# define TEST_NAME "memset"
+#endif
#define MIN_PAGE_SIZE 131072
#include "test-string.h"
diff --git a/string/test-rawmemchr-ifunc.c b/string/test-rawmemchr-ifunc.c
new file mode 100644
index 0000000000..61818173f3
--- /dev/null
+++ b/string/test-rawmemchr-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of rawmemchr function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-rawmemchr.c"
diff --git a/string/test-rawmemchr.c b/string/test-rawmemchr.c
index c8000d68c4..a3f2c1113d 100644
--- a/string/test-rawmemchr.c
+++ b/string/test-rawmemchr.c
@@ -1,5 +1,5 @@
/* Test and measure memchr functions.
- Copyright (C) 1999,2002,2003,2005,2009,2011 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -20,6 +20,7 @@
#include <assert.h>
#define TEST_MAIN
+#define TEST_NAME "rawmemchr"
#include "test-string.h"
typedef char *(*proto_t) (const char *, int);
diff --git a/string/test-stpcpy-ifunc.c b/string/test-stpcpy-ifunc.c
new file mode 100644
index 0000000000..071569990a
--- /dev/null
+++ b/string/test-stpcpy-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of stpcpy function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-stpcpy.c"
diff --git a/string/test-stpcpy.c b/string/test-stpcpy.c
index accc05c449..6a7af0cdcc 100644
--- a/string/test-stpcpy.c
+++ b/string/test-stpcpy.c
@@ -1,5 +1,5 @@
/* Test and measure stpcpy functions.
- Copyright (C) 1999, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -19,6 +19,7 @@
#define STRCPY_RESULT(dst, len) ((dst) + (len))
#define TEST_MAIN
+#define TEST_NAME "stpcpy"
#include "test-string.h"
char *simple_stpcpy (char *, const char *);
diff --git a/string/test-stpncpy-ifunc.c b/string/test-stpncpy-ifunc.c
new file mode 100644
index 0000000000..f61c367bdc
--- /dev/null
+++ b/string/test-stpncpy-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of stpncpy function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-stpncpy.c"
diff --git a/string/test-stpncpy.c b/string/test-stpncpy.c
index 8fb6d799be..8647299f3b 100644
--- a/string/test-stpncpy.c
+++ b/string/test-stpncpy.c
@@ -1,5 +1,5 @@
/* Test and measure stpncpy functions.
- Copyright (C) 1999, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -19,6 +19,7 @@
#define STRNCPY_RESULT(dst, len, n) ((dst) + ((len) > (n) ? (n) : (len)))
#define TEST_MAIN
+#define TEST_NAME "stpncpy"
#include "test-string.h"
char *simple_stpncpy (char *, const char *, size_t);
diff --git a/string/test-strcasecmp-ifunc.c b/string/test-strcasecmp-ifunc.c
new file mode 100644
index 0000000000..f260dc8e1f
--- /dev/null
+++ b/string/test-strcasecmp-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strcasecmp function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strcasecmp.c"
diff --git a/string/test-strcasecmp.c b/string/test-strcasecmp.c
index 039d9c1e3c..202ac60cea 100644
--- a/string/test-strcasecmp.c
+++ b/string/test-strcasecmp.c
@@ -1,5 +1,5 @@
/* Test and measure strcasecmp functions.
- Copyright (C) 1999, 2002, 2003, 2005, 2010 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -19,6 +19,7 @@
#include <ctype.h>
#define TEST_MAIN
+#define TEST_NAME "strcasecmp"
#include "test-string.h"
typedef int (*proto_t) (const char *, const char *);
diff --git a/string/test-strcasestr-ifunc.c b/string/test-strcasestr-ifunc.c
new file mode 100644
index 0000000000..ae0d1bdb28
--- /dev/null
+++ b/string/test-strcasestr-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strcasestr function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strcasestr.c"
diff --git a/string/test-strcasestr.c b/string/test-strcasestr.c
index fc01858637..9a0f30c690 100644
--- a/string/test-strcasestr.c
+++ b/string/test-strcasestr.c
@@ -1,5 +1,5 @@
/* Test and measure strcasestr functions.
- Copyright (C) 2010 Free Software Foundation, Inc.
+ Copyright (C) 2010-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Ulrich Drepper <drepper@redhat.com>, 2010.
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "strcasestr"
#include "test-string.h"
diff --git a/string/test-strcat-ifunc.c b/string/test-strcat-ifunc.c
new file mode 100644
index 0000000000..cf71c67c50
--- /dev/null
+++ b/string/test-strcat-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strcat function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strcat.c"
diff --git a/string/test-strcat.c b/string/test-strcat.c
index 7dcd7bc5b9..2d90d52efc 100644
--- a/string/test-strcat.c
+++ b/string/test-strcat.c
@@ -1,5 +1,5 @@
/* Test and measure strcat functions.
- Copyright (C) 1999, 2002, 2003, 2005 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "strcat"
#include "test-string.h"
typedef char *(*proto_t) (char *, const char *);
diff --git a/string/test-strchr-ifunc.c b/string/test-strchr-ifunc.c
new file mode 100644
index 0000000000..b97b296649
--- /dev/null
+++ b/string/test-strchr-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strchr function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strchr.c"
diff --git a/string/test-strchr.c b/string/test-strchr.c
index 161ac458c1..1ed6966665 100644
--- a/string/test-strchr.c
+++ b/string/test-strchr.c
@@ -1,5 +1,5 @@
/* Test and measure STRCHR functions.
- Copyright (C) 1999, 2002, 2003, 2011 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
Added wcschr support by Liubov Dmitrieva <liubov.dmitrieva@gmail.com>, 2011
@@ -19,6 +19,15 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#ifndef WIDE
+# ifdef USE_FOR_STRCHRNUL
+# define TEST_NAME "strchrnul"
+# else
+# define TEST_NAME "strchr"
+# endif
+#else
+# define TEST_NAME "wcschr"
+#endif
#include "test-string.h"
#ifndef WIDE
diff --git a/string/test-strchrnul-ifunc.c b/string/test-strchrnul-ifunc.c
new file mode 100644
index 0000000000..aacedb939e
--- /dev/null
+++ b/string/test-strchrnul-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strchrnul function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strchrnul.c"
diff --git a/string/test-strcmp-ifunc.c b/string/test-strcmp-ifunc.c
new file mode 100644
index 0000000000..8cc1aad4a5
--- /dev/null
+++ b/string/test-strcmp-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strcmp function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strcmp.c"
diff --git a/string/test-strcmp.c b/string/test-strcmp.c
index 000c51091c..f186fd6cd9 100644
--- a/string/test-strcmp.c
+++ b/string/test-strcmp.c
@@ -19,6 +19,11 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#ifdef WIDE
+# define TEST_NAME "wcscmp"
+#else
+# define TEST_NAME "strcmp"
+#endif
#include "test-string.h"
#ifdef WIDE
diff --git a/string/test-strcpy-ifunc.c b/string/test-strcpy-ifunc.c
new file mode 100644
index 0000000000..b21a98b84e
--- /dev/null
+++ b/string/test-strcpy-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strcpy function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strcpy.c"
diff --git a/string/test-strcpy.c b/string/test-strcpy.c
index 3a0b118afb..de57c68aeb 100644
--- a/string/test-strcpy.c
+++ b/string/test-strcpy.c
@@ -1,5 +1,5 @@
/* Test and measure strcpy functions.
- Copyright (C) 1999, 2002, 2003, 2005, 2011, 2012 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
Added wcscpy support by Liubov Dmitrieva <liubov.dmitrieva@gmail.com>, 2011
@@ -42,6 +42,11 @@
#ifndef STRCPY_RESULT
# define STRCPY_RESULT(dst, len) dst
# define TEST_MAIN
+# ifndef WIDE
+# define TEST_NAME "strcpy"
+# else
+# define TEST_NAME "wcscpy"
+# endif
# include "test-string.h"
# ifndef WIDE
# define SIMPLE_STRCPY simple_strcpy
diff --git a/string/test-strcspn-ifunc.c b/string/test-strcspn-ifunc.c
new file mode 100644
index 0000000000..380a371d69
--- /dev/null
+++ b/string/test-strcspn-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strcspn function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strcspn.c"
diff --git a/string/test-strcspn.c b/string/test-strcspn.c
index d80947a10a..e2863c783d 100644
--- a/string/test-strcspn.c
+++ b/string/test-strcspn.c
@@ -1,5 +1,5 @@
/* Test and measure strcspn functions.
- Copyright (C) 1999, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -20,6 +20,7 @@
#define STRPBRK_RESULT(s, pos) (pos)
#define RES_TYPE size_t
#define TEST_MAIN
+#define TEST_NAME "strcspn"
#include "test-string.h"
typedef size_t (*proto_t) (const char *, const char *);
diff --git a/string/test-strlen-ifunc.c b/string/test-strlen-ifunc.c
new file mode 100644
index 0000000000..4d87cc8f5b
--- /dev/null
+++ b/string/test-strlen-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strlen function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strlen.c"
diff --git a/string/test-strlen.c b/string/test-strlen.c
index 0ac5184bc8..6be7e43d31 100644
--- a/string/test-strlen.c
+++ b/string/test-strlen.c
@@ -1,5 +1,5 @@
/* Test and measure STRLEN functions.
- Copyright (C) 1999, 2002, 2003, 2005, 2011 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
Added wcslen support by Liubov Dmitrieva <liubov.dmitrieva@gmail.com>, 2011
@@ -19,6 +19,11 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#ifndef WIDE
+# define TEST_NAME "strlen"
+#else
+# define TEST_NAME "wcslen"
+#endif
#include "test-string.h"
#ifndef WIDE
diff --git a/string/test-strncasecmp-ifunc.c b/string/test-strncasecmp-ifunc.c
new file mode 100644
index 0000000000..9bf05d09d3
--- /dev/null
+++ b/string/test-strncasecmp-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strncasecmp function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strncasecmp.c"
diff --git a/string/test-strncasecmp.c b/string/test-strncasecmp.c
index acfe668cab..95664f3a97 100644
--- a/string/test-strncasecmp.c
+++ b/string/test-strncasecmp.c
@@ -19,6 +19,7 @@
#include <ctype.h>
#define TEST_MAIN
+#define TEST_NAME "strncasecmp"
#include "test-string.h"
typedef int (*proto_t) (const char *, const char *, size_t);
diff --git a/string/test-strncat-ifunc.c b/string/test-strncat-ifunc.c
new file mode 100644
index 0000000000..28e832fe07
--- /dev/null
+++ b/string/test-strncat-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strncat function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strncat.c"
diff --git a/string/test-strncat.c b/string/test-strncat.c
index 69c8c0b21d..0cdaa4f6a8 100644
--- a/string/test-strncat.c
+++ b/string/test-strncat.c
@@ -1,5 +1,5 @@
/* Test and measure strncat functions.
- Copyright (C) 2011 Free Software Foundation, Inc.
+ Copyright (C) 2011-2012 Free Software Foundation, Inc.
Contributed by Intel Corporation.
The GNU C Library is free software; you can redistribute it and/or
@@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "strncat"
#include "test-string.h"
typedef char *(*proto_t) (char *, const char *, size_t);
diff --git a/string/test-strncmp-ifunc.c b/string/test-strncmp-ifunc.c
new file mode 100644
index 0000000000..100a06837e
--- /dev/null
+++ b/string/test-strncmp-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strncmp function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strncmp.c"
diff --git a/string/test-strncmp.c b/string/test-strncmp.c
index 266781bc44..a66a125686 100644
--- a/string/test-strncmp.c
+++ b/string/test-strncmp.c
@@ -1,5 +1,5 @@
/* Test and measure strncmp functions.
- Copyright (C) 1999, 2002, 2003, 2010, 2011 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "strncmp"
#include "test-string.h"
typedef int (*proto_t) (const char *, const char *, size_t);
diff --git a/string/test-strncpy-ifunc.c b/string/test-strncpy-ifunc.c
new file mode 100644
index 0000000000..834291b009
--- /dev/null
+++ b/string/test-strncpy-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strncpy function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strncpy.c"
diff --git a/string/test-strncpy.c b/string/test-strncpy.c
index f683f7d743..ba1050f347 100644
--- a/string/test-strncpy.c
+++ b/string/test-strncpy.c
@@ -1,5 +1,5 @@
/* Test and measure strncpy functions.
- Copyright (C) 1999, 2002, 2003, 2005 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -20,6 +20,7 @@
#ifndef STRNCPY_RESULT
# define STRNCPY_RESULT(dst, len, n) dst
# define TEST_MAIN
+# define TEST_NAME "strncpy"
# include "test-string.h"
char *simple_strncpy (char *, const char *, size_t);
diff --git a/string/test-strnlen-ifunc.c b/string/test-strnlen-ifunc.c
new file mode 100644
index 0000000000..3810de7d31
--- /dev/null
+++ b/string/test-strnlen-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strnlen function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strnlen.c"
diff --git a/string/test-strnlen.c b/string/test-strnlen.c
index 547df45ad8..17a2e22db9 100644
--- a/string/test-strnlen.c
+++ b/string/test-strnlen.c
@@ -1,5 +1,5 @@
/* Test and measure strlen functions.
- Copyright (C) 1999, 2002, 2003, 2005, 2010 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "strnlen"
#include "test-string.h"
typedef size_t (*proto_t) (const char *, size_t);
diff --git a/string/test-strpbrk-ifunc.c b/string/test-strpbrk-ifunc.c
new file mode 100644
index 0000000000..896510ba6e
--- /dev/null
+++ b/string/test-strpbrk-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strpbrk function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strpbrk.c"
diff --git a/string/test-strpbrk.c b/string/test-strpbrk.c
index 263a7fdfb6..8a3d2bb2a0 100644
--- a/string/test-strpbrk.c
+++ b/string/test-strpbrk.c
@@ -1,5 +1,5 @@
/* Test and measure strpbrk functions.
- Copyright (C) 1999, 2002, 2003, 2005 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -21,6 +21,7 @@
# define STRPBRK_RESULT(s, pos) ((s)[(pos)] ? (s) + (pos) : NULL)
# define RES_TYPE char *
# define TEST_MAIN
+# define TEST_NAME "strpbrk"
# include "test-string.h"
typedef char *(*proto_t) (const char *, const char *);
diff --git a/string/test-strrchr-ifunc.c b/string/test-strrchr-ifunc.c
new file mode 100644
index 0000000000..77b1e69df8
--- /dev/null
+++ b/string/test-strrchr-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strrchr function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strrchr.c"
diff --git a/string/test-strrchr.c b/string/test-strrchr.c
index c63c8dea6f..a58435fd57 100644
--- a/string/test-strrchr.c
+++ b/string/test-strrchr.c
@@ -1,5 +1,5 @@
/* Test and measure STRCHR functions.
- Copyright (C) 1999, 2002, 2003, 2005, 2011 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
Added wcsrrchr support by Liubov Dmitrieva <liubov.dmitrieva@gmail.com>,
@@ -20,6 +20,11 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#ifdef WIDE
+# define TEST_NAME "wcsrchr"
+#else
+# define TEST_NAME "strrchr"
+#endif
#include "test-string.h"
#ifdef WIDE
diff --git a/string/test-strspn-ifunc.c b/string/test-strspn-ifunc.c
new file mode 100644
index 0000000000..b836dfb0aa
--- /dev/null
+++ b/string/test-strspn-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strspn function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strspn.c"
diff --git a/string/test-strspn.c b/string/test-strspn.c
index 743bc0ae40..557db0af92 100644
--- a/string/test-strspn.c
+++ b/string/test-strspn.c
@@ -1,5 +1,5 @@
/* Test and measure strspn functions.
- Copyright (C) 1999,2002,2003,2005 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "strspn"
#include "test-string.h"
typedef size_t (*proto_t) (const char *, const char *);
diff --git a/string/test-strstr-ifunc.c b/string/test-strstr-ifunc.c
new file mode 100644
index 0000000000..4d43dda3ee
--- /dev/null
+++ b/string/test-strstr-ifunc.c
@@ -0,0 +1,20 @@
+/* Test and measure IFUNC implementations of strstr function.
+ Copyright (C) 2012 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 TEST_IFUNC 1
+#include "test-strstr.c"
diff --git a/string/test-strstr.c b/string/test-strstr.c
index d4c0efc5ba..22a00f92b9 100644
--- a/string/test-strstr.c
+++ b/string/test-strstr.c
@@ -1,5 +1,5 @@
/* Test and measure strstr functions.
- Copyright (C) 2010 Free Software Foundation, Inc.
+ Copyright (C) 2010-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Ulrich Drepper <drepper@redhat.com>, 2010.
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define TEST_MAIN
+#define TEST_NAME "strstr"
#include "test-string.h"