[nvptx] Add vector_length 64 test-cases
authorTom de Vries <tdevries@suse.de>
Sat, 12 Jan 2019 22:19:02 +0000 (22:19 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Sat, 12 Jan 2019 22:19:02 +0000 (22:19 +0000)
Add some test-cases using vector_length 64.

2019-01-12  Tom de Vries  <tdevries@suse.de>

* testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: New test.
* testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c: New test.
* testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c: New test.

From-SVN: r267895

libgomp/ChangeLog
libgomp/testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c [new file with mode: 0644]
libgomp/testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c [new file with mode: 0644]
libgomp/testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c [new file with mode: 0644]

index e6b1460917165fa6d2934a0508f917bb33099649..fc1fb2a967dcef31355125dba90044bb051672f4 100644 (file)
@@ -1,3 +1,9 @@
+2019-01-12  Tom de Vries  <tdevries@suse.de>
+
+       * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c: New test.
+       * testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c: New test.
+
 2019-01-12  Tom de Vries  <tdevries@suse.de>
 
        PR target/85486
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c
new file mode 100644 (file)
index 0000000..b6ee732
--- /dev/null
@@ -0,0 +1,17 @@
+#include <stdlib.h>
+#include <stdio.h>
+
+int
+main (void)
+{
+#pragma acc parallel vector_length (64) num_workers (16) /* { dg-warning "using num_workers \\(15\\), ignoring 16" "" { target openacc_nvidia_accel_configured } } */
+  {
+#pragma acc loop worker
+    for (unsigned int i = 0; i < 32; i++)
+#pragma acc loop vector
+      for (unsigned int j = 0; j < 64; j++)
+       ;
+  }
+
+  return 0;
+}
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c
new file mode 100644 (file)
index 0000000..4dfbae8
--- /dev/null
@@ -0,0 +1,21 @@
+/* { dg-set-target-env-var "GOMP_OPENACC_DIM" ":16:" } */
+/* { dg-shouldfail "" { openacc_nvidia_accel_selected } } */
+
+#include <stdlib.h>
+#include <stdio.h>
+
+int
+main (void)
+{
+#pragma acc parallel vector_length (64)
+  {
+#pragma acc loop worker
+    for (unsigned int i = 0; i < 32; i++)
+#pragma acc loop vector
+      for (unsigned int j = 0; j < 64; j++)
+       ;
+  }
+
+  return 0;
+}
+/* { dg-output "The Nvidia accelerator has insufficient barrier resources" { target openacc_nvidia_accel_selected } } */
diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c
new file mode 100644 (file)
index 0000000..1acb40e
--- /dev/null
@@ -0,0 +1,17 @@
+#include <stdlib.h>
+#include <stdio.h>
+
+int
+main (void)
+{
+#pragma acc parallel vector_length (64)
+  {
+#pragma acc loop worker
+    for (unsigned int i = 0; i < 32; i++)
+#pragma acc loop vector
+      for (unsigned int j = 0; j < 64; j++)
+       ;
+  }
+
+  return 0;
+}