Message ID | PAWPR08MB89822CF15B4835C86A377C7883B49@PAWPR08MB8982.eurprd08.prod.outlook.com |
---|---|
State | New |
Headers | show |
Series | Benchtests: Remove memchr_strnlen | expand |
On 08/03/23 07:50, Wilco Dijkstra via Libc-alpha wrote: > > Remove memchr_strnlen since it is now the same as generic_strnlen. Adjust iteration > count to reduce benchmark time. > > (I kept memchr_strlen since the generic strlen does not use memchr). LGTM, thanks. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org> > > --- > > diff --git a/benchtests/bench-strlen.c b/benchtests/bench-strlen.c > index cae88dd6ec1794709fdf36a373896dd2d9d285dd..9b91f8a10ef0621cf2bc8310d8f08bd978b6d898 100644 > --- a/benchtests/bench-strlen.c > +++ b/benchtests/bench-strlen.c > @@ -48,7 +48,7 @@ IMPL (STRLEN, 1) > static void > do_one_test (json_ctx_t *json_ctx, impl_t *impl, const CHAR *s, size_t exp_len) > { > - size_t len = CALL (impl, s), i, iters = INNER_LOOP_ITERS_LARGE; > + size_t len = CALL (impl, s), i, iters = INNER_LOOP_ITERS8; > timing_t start, stop, cur; > > if (len != exp_len) > diff --git a/benchtests/bench-strnlen.c b/benchtests/bench-strnlen.c > index c997d7da4c93b08070b718ef22cbd5582feeca09..a1840afa85c52dfecd35b1e4bb36d339b0866483 100644 > --- a/benchtests/bench-strnlen.c > +++ b/benchtests/bench-strnlen.c > @@ -22,7 +22,6 @@ > #else > # define TEST_NAME "wcsnlen" > # define generic_strnlen generic_wcsnlen > -# define memchr_strnlen wcschr_wcsnlen > #endif /* WIDE */ > #include "bench-string.h" > #include "json-lib.h" > @@ -38,22 +37,14 @@ > typedef size_t (*proto_t) (const CHAR *, size_t); > size_t generic_strnlen (const CHAR *, size_t); > > -size_t > -memchr_strnlen (const CHAR *s, size_t maxlen) > -{ > - const CHAR *s1 = MEMCHR (s, 0, maxlen); > - return (s1 == NULL) ? maxlen : s1 - s; > -} > - > IMPL (STRNLEN, 1) > -IMPL (memchr_strnlen, 0) > IMPL (generic_strnlen, 0) > > static void > do_one_test (json_ctx_t *json_ctx, impl_t *impl, const CHAR *s, size_t maxlen, > size_t exp_len) > { > - size_t len = CALL (impl, s, maxlen), i, iters = INNER_LOOP_ITERS_LARGE; > + size_t len = CALL (impl, s, maxlen), i, iters = INNER_LOOP_ITERS; > timing_t start, stop, cur; > > if (len != exp_len) >
diff --git a/benchtests/bench-strlen.c b/benchtests/bench-strlen.c index cae88dd6ec1794709fdf36a373896dd2d9d285dd..9b91f8a10ef0621cf2bc8310d8f08bd978b6d898 100644 --- a/benchtests/bench-strlen.c +++ b/benchtests/bench-strlen.c @@ -48,7 +48,7 @@ IMPL (STRLEN, 1) static void do_one_test (json_ctx_t *json_ctx, impl_t *impl, const CHAR *s, size_t exp_len) { - size_t len = CALL (impl, s), i, iters = INNER_LOOP_ITERS_LARGE; + size_t len = CALL (impl, s), i, iters = INNER_LOOP_ITERS8; timing_t start, stop, cur; if (len != exp_len) diff --git a/benchtests/bench-strnlen.c b/benchtests/bench-strnlen.c index c997d7da4c93b08070b718ef22cbd5582feeca09..a1840afa85c52dfecd35b1e4bb36d339b0866483 100644 --- a/benchtests/bench-strnlen.c +++ b/benchtests/bench-strnlen.c @@ -22,7 +22,6 @@ #else # define TEST_NAME "wcsnlen" # define generic_strnlen generic_wcsnlen -# define memchr_strnlen wcschr_wcsnlen #endif /* WIDE */ #include "bench-string.h" #include "json-lib.h" @@ -38,22 +37,14 @@ typedef size_t (*proto_t) (const CHAR *, size_t); size_t generic_strnlen (const CHAR *, size_t); -size_t -memchr_strnlen (const CHAR *s, size_t maxlen) -{ - const CHAR *s1 = MEMCHR (s, 0, maxlen); - return (s1 == NULL) ? maxlen : s1 - s; -} - IMPL (STRNLEN, 1) -IMPL (memchr_strnlen, 0) IMPL (generic_strnlen, 0) static void do_one_test (json_ctx_t *json_ctx, impl_t *impl, const CHAR *s, size_t maxlen, size_t exp_len) { - size_t len = CALL (impl, s, maxlen), i, iters = INNER_LOOP_ITERS_LARGE; + size_t len = CALL (impl, s, maxlen), i, iters = INNER_LOOP_ITERS; timing_t start, stop, cur; if (len != exp_len)