Message ID | 20220323215734.3927131-20-goldstein.w.n@gmail.com |
---|---|
State | New |
Headers | show |
Series | [v1,01/23] benchtests: Use json-lib in bench-strchr.c | expand |
On Wed, Mar 23, 2022 at 3:02 PM Noah Goldstein <goldstein.w.n@gmail.com> wrote: > > Test cases for when both `s1` and `s2` are near the end of a page > where previously missing. > --- > string/test-strncmp.c | 27 ++++++++++++++++++++++++++- > 1 file changed, 26 insertions(+), 1 deletion(-) > > diff --git a/string/test-strncmp.c b/string/test-strncmp.c > index 1a87f0e73e..bba9e3d2dc 100644 > --- a/string/test-strncmp.c > +++ b/string/test-strncmp.c > @@ -573,7 +573,7 @@ check_overflow (void) > int > test_main (void) > { > - size_t i, j; > + size_t i, j, k; > const size_t test_len = MIN(TEST_LEN, 3 * 4096); > test_init (); > > @@ -705,6 +705,31 @@ test_main (void) > do_test_n (j, getpagesize () - j - 1, i, ULONG_MAX - i, 0, 127, 0); > do_test_n (j, getpagesize () - j - 1, i, ULONG_MAX - i, 0, 127, 1); > do_test_n (j, getpagesize () - j - 1, i, ULONG_MAX - i, 0, 127, -1); > + > + for (k = 2; k <= 128; k += k) > + { > + do_test (getpagesize () - k, getpagesize () - j - 1, i - 1, i, > + 127, 0); > + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i - 1, > + i, 127, 0); > + do_test (getpagesize () - k, getpagesize () - j - 1, i + 1, i, > + 127, 0); > + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i + 1, > + i, 127, 0); > + do_test (getpagesize () - k, getpagesize () - j - 1, i, i, 127, > + 0); > + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i, i, > + 127, 0); > + do_test (getpagesize () - k, getpagesize () - j - 1, i + 1, i, > + 127, -1); > + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i + 1, > + i, 127, -1); > + do_test (getpagesize () - k, getpagesize () - j - 1, i + 1, i, > + 127, 1); > + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i + 1, > + i, 127, 1); > + } > + > if (i < 32) > { > i += 1; > -- > 2.25.1 > LGTM. Reviewed-by: H.J. Lu <hjl.tools@gmail.com> Thanks.
diff --git a/string/test-strncmp.c b/string/test-strncmp.c index 1a87f0e73e..bba9e3d2dc 100644 --- a/string/test-strncmp.c +++ b/string/test-strncmp.c @@ -573,7 +573,7 @@ check_overflow (void) int test_main (void) { - size_t i, j; + size_t i, j, k; const size_t test_len = MIN(TEST_LEN, 3 * 4096); test_init (); @@ -705,6 +705,31 @@ test_main (void) do_test_n (j, getpagesize () - j - 1, i, ULONG_MAX - i, 0, 127, 0); do_test_n (j, getpagesize () - j - 1, i, ULONG_MAX - i, 0, 127, 1); do_test_n (j, getpagesize () - j - 1, i, ULONG_MAX - i, 0, 127, -1); + + for (k = 2; k <= 128; k += k) + { + do_test (getpagesize () - k, getpagesize () - j - 1, i - 1, i, + 127, 0); + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i - 1, + i, 127, 0); + do_test (getpagesize () - k, getpagesize () - j - 1, i + 1, i, + 127, 0); + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i + 1, + i, 127, 0); + do_test (getpagesize () - k, getpagesize () - j - 1, i, i, 127, + 0); + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i, i, + 127, 0); + do_test (getpagesize () - k, getpagesize () - j - 1, i + 1, i, + 127, -1); + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i + 1, + i, 127, -1); + do_test (getpagesize () - k, getpagesize () - j - 1, i + 1, i, + 127, 1); + do_test (getpagesize () - k - 1, getpagesize () - j - 1, i + 1, + i, 127, 1); + } + if (i < 32) { i += 1;