]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
libgomp: change alloc-pinned tests failure mode
authorAndrew Stubbs <ams@baylibre.com>
Wed, 12 Jun 2024 08:43:53 +0000 (08:43 +0000)
committerAndrew Stubbs <ams@baylibre.com>
Mon, 1 Jul 2024 10:53:57 +0000 (10:53 +0000)
The feature doesn't work on non-Linux hosts, at present, so skip the tests
entirely.

On Linux systems that have insufficient lockable memory configured we still
need to fail or else the feature won't be getting tested when we think it is,
but now there's a message to explain why.

libgomp/ChangeLog:

* testsuite/libgomp.c/alloc-pinned-1.c: Change dg-xfail-run-if to
dg-skip-if.
Correct spelling mistake.
Abort on insufficient lockable memory.
Use #error on non-linux hosts.
* testsuite/libgomp.c/alloc-pinned-2.c: Likewise.

libgomp/testsuite/libgomp.c/alloc-pinned-1.c
libgomp/testsuite/libgomp.c/alloc-pinned-2.c

index 4185accf2e65df7bc6c49cc8f86278385b44fa0c..672f2453a783733ed993f8a765d537fe850f3a9c 100644 (file)
@@ -1,6 +1,6 @@
 /* { dg-do run } */
 
-/* { dg-xfail-run-if "Pinning not implemented on this host" { ! *-*-linux-gnu } } */
+/* { dg-skip-if "Pinning not implemented on this host" { ! *-*-linux-gnu* } } */
 
 /* Test that pinned memory works.  */
 
   struct rlimit limit; \
   if (getrlimit (RLIMIT_MEMLOCK, &limit) \
       || limit.rlim_cur <= SIZE) \
-    fprintf (stderr, "unsufficient lockable memory; please increase ulimit\n"); \
+    { \
+      fprintf (stderr, "insufficient lockable memory; please increase ulimit\n"); \
+      abort (); \
+    } \
   }
 
 int
@@ -44,18 +47,7 @@ get_pinned_mem ()
   abort ();
 }
 #else
-#define PAGE_SIZE 1024 /* unknown */
-#define CHECK_SIZE(SIZE) { \
-  fprintf (stderr, "OS unsupported\n"); \
-  abort (); \
-  }
-#define EXPECT_OMP_NULL_ALLOCATOR
-
-int
-get_pinned_mem ()
-{
-  return 0;
-}
+#error "OS unsupported"
 #endif
 
 static void
index 0b9c11d031580d9950970d63ee924ef388857bd3..b6d1d83fb6f27c71cab79724ff55f2bfec226078 100644 (file)
@@ -1,6 +1,6 @@
 /* { dg-do run } */
 
-/* { dg-xfail-run-if "Pinning not implemented on this host" { ! *-*-linux-gnu } } */
+/* { dg-skip-if "Pinning not implemented on this host" { ! *-*-linux-gnu* } } */
 
 /* Test that pinned memory works (pool_size code path).  */
 
   struct rlimit limit; \
   if (getrlimit (RLIMIT_MEMLOCK, &limit) \
       || limit.rlim_cur <= SIZE) \
-    fprintf (stderr, "unsufficient lockable memory; please increase ulimit\n"); \
+    { \
+      fprintf (stderr, "insufficient lockable memory; please increase ulimit\n"); \
+      abort (); \
+    } \
   }
 
 int
@@ -44,18 +47,7 @@ get_pinned_mem ()
   abort ();
 }
 #else
-#define PAGE_SIZE 1024 /* unknown */
-#define CHECK_SIZE(SIZE) { \
-  fprintf (stderr, "OS unsupported\n"); \
-  abort (); \
-  }
-#define EXPECT_OMP_NULL_ALLOCATOR
-
-int
-get_pinned_mem ()
-{
-  return 0;
-}
+#error "OS unsupported"
 #endif
 
 static void