about summary refs log tree commit diff
path: root/string
diff options
context:
space:
mode:
authorNoah Goldstein <goldstein.w.n@gmail.com>2023-12-27 11:29:32 -0800
committerNoah Goldstein <goldstein.w.n@gmail.com>2024-01-01 21:06:57 -0800
commit4b00532e51e40e2a85eba65ed817234b7bd741d9 (patch)
treea12b25a347a86d37faefbe202b510774bc9303ed /string
parent8d8ae5eebd2c81064cfe88d877940ea4e6046d16 (diff)
downloadglibc-4b00532e51e40e2a85eba65ed817234b7bd741d9.tar.gz
glibc-4b00532e51e40e2a85eba65ed817234b7bd741d9.tar.xz
glibc-4b00532e51e40e2a85eba65ed817234b7bd741d9.zip
string: Add additional output in test-strchr failure
Seeing occasional failures in `__strchrnul_evex512` that are not
consistently reproducible. Hopefully by adding this the next failure
will provide enough information to debug.

Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
Diffstat (limited to 'string')
-rw-r--r--string/test-strchr.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/string/test-strchr.c b/string/test-strchr.c
index f850fcbe26..c795eac6fa 100644
--- a/string/test-strchr.c
+++ b/string/test-strchr.c
@@ -111,7 +111,7 @@ check_result (impl_t *impl, const CHAR *s, int c, const CHAR *exp_res)
   CHAR *res = CALL (impl, s, c);
   if (res != exp_res)
     {
-      error (0, 0, "Wrong result in function %s %#x %p %p", impl->name,
+      error (0, 0, "Wrong result in function %s(%p) %#x %p %p", impl->name, s,
 	     c, res, exp_res);
       ret = 1;
       return -1;
@@ -119,11 +119,10 @@ check_result (impl_t *impl, const CHAR *s, int c, const CHAR *exp_res)
   return 0;
 }
 
-static void
+static int
 do_one_test (impl_t *impl, const CHAR *s, int c, const CHAR *exp_res)
 {
-  if (check_result (impl, s, c, exp_res) < 0)
-    return;
+  return check_result (impl, s, c, exp_res);
 }
 
 static void
@@ -160,7 +159,15 @@ do_test (size_t align, size_t pos, size_t len, int seek_char, int max_char)
     result = NULLRET (buf + align + len);
 
   FOR_EACH_IMPL (impl, 0)
-    do_one_test (impl, buf + align, seek_char, result);
+    {
+      if (do_one_test (impl, buf + align, seek_char, result) != 0)
+	{
+	  error (0, 0,
+		 "\tAlign=%zu, Pos=%zu, Len=%zu, seek=%d, max_char=%d, "
+		 "Buf=%p, Res=%p",
+		 align, pos, len, seek_char, max_char, buf, result);
+	}
+    }
 }
 
 static void