aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2023-01-17 10:14:03 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2023-02-06 16:19:35 -0300
commit0dfa8617b5c3c2d2ef9e3366bec98b33828d8eae (patch)
treecd6fc28cc5128a1d930f883b2992f1c8d794d3e4
parent3092c84900ec08c7c5b6608489df39e24888a563 (diff)
downloadglibc-0dfa8617b5c3c2d2ef9e3366bec98b33828d8eae.tar
glibc-0dfa8617b5c3c2d2ef9e3366bec98b33828d8eae.tar.gz
glibc-0dfa8617b5c3c2d2ef9e3366bec98b33828d8eae.tar.bz2
glibc-0dfa8617b5c3c2d2ef9e3366bec98b33828d8eae.zip
string: Hook up the default implementation on test-memchr
And remove SIMPLE_MEMCHR, which is not used anywhere. Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
-rw-r--r--string/test-memchr.c31
1 files changed, 20 insertions, 11 deletions
diff --git a/string/test-memchr.c b/string/test-memchr.c
index 862094ef0b..0daecab537 100644
--- a/string/test-memchr.c
+++ b/string/test-memchr.c
@@ -30,7 +30,6 @@
# define MEMCHR memchr
# define CHAR char
# define UCHAR unsigned char
-# define SIMPLE_MEMCHR simple_memchr
# define BIG_CHAR CHAR_MAX
# define SMALL_CHAR 127
#else
@@ -38,7 +37,6 @@
# define MEMCHR wmemchr
# define CHAR wchar_t
# define UCHAR wchar_t
-# define SIMPLE_MEMCHR simple_wmemchr
# define BIG_CHAR WCHAR_MAX
# define SMALL_CHAR 1273
#endif /* WIDE */
@@ -47,15 +45,26 @@ typedef CHAR *(*proto_t) (const CHAR *, int, size_t);
IMPL (MEMCHR, 1)
-/* Naive implementation to verify results. */
-CHAR *
-SIMPLE_MEMCHR (const CHAR *s, int c, size_t n)
-{
- while (n--)
- if (*s++ == (CHAR) c)
- return (CHAR *) s - 1;
- return NULL;
-}
+/* Also check the generic implementation. */
+#undef MEMCHR
+#undef weak_alias
+#define weak_alias(a, b)
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(a)
+#undef libc_hidden_def
+#define libc_hidden_def(a)
+#undef libc_hidden_weak
+#define libc_hidden_weak(a)
+#ifndef WIDE
+# define MEMCHR __memchr_default
+# include "string/memchr.c"
+# define MEMCHR_DEFAULT MEMCHR
+#else
+# define WMEMCHR __wmemchr_default
+# include "wcsmbs/wmemchr.c"
+# define MEMCHR_DEFAULT WMEMCHR
+#endif
+IMPL (MEMCHR_DEFAULT, 1)
static void
do_one_test (impl_t *impl, const CHAR *s, int c, size_t n, CHAR *exp_res)