[PATCH v11 21/29] string: Hook up the default implementation on test-strlen
Richard Henderson
richard.henderson@linaro.org
Wed Feb 1 17:54:18 GMT 2023
On 2/1/23 07:03, Adhemerval Zanella wrote:
> Also remove the simple_STRLEN and builtin_strlen, which are not used
> anywhere.
> ---
> string/test-strlen.c | 31 ++++++++++++++-----------------
> 1 file changed, 14 insertions(+), 17 deletions(-)
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
>
> diff --git a/string/test-strlen.c b/string/test-strlen.c
> index 81adf23737..0f98576f40 100644
> --- a/string/test-strlen.c
> +++ b/string/test-strlen.c
> @@ -37,27 +37,24 @@
>
> typedef size_t (*proto_t) (const CHAR *);
>
> -/* Naive implementation to verify results. */
> -size_t
> -simple_STRLEN (const CHAR *s)
> -{
> - const CHAR *p;
> -
> - for (p = s; *p; ++p);
> - return p - s;
> -}
> +IMPL (STRLEN, 1)
>
> +/* Also check the generic implementation. */
> +#undef STRLEN
> +#undef weak_alias
> +#define weak_alias(a, b)
> +#undef libc_hidden_builtin_def
> +#define libc_hidden_builtin_def(a)
> #ifndef WIDE
> -size_t
> -builtin_strlen (const CHAR *p)
> -{
> - return __builtin_strlen (p);
> -}
> -IMPL (builtin_strlen, 0)
> +# define STRLEN __strlen_default
> +# include "string/strlen.c"
> +IMPL (__strlen_default, 1)
> +#else
> +# define WCSLEN __wcslen_default
> +# include "wcsmbs/wcslen.c"
> +IMPL (__wcslen_default, 1)
> #endif
>
> -IMPL (STRLEN, 1)
> -
>
> static void
> do_one_test (impl_t *impl, const CHAR *s, size_t exp_len)
More information about the Libc-alpha
mailing list