re PR middle-end/86660 (libgomp.c++/for-15.C ICEs with nvptx offloading)
authorJakub Jelinek <jakub@redhat.com>
Thu, 26 Jul 2018 16:12:58 +0000 (18:12 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 26 Jul 2018 16:12:58 +0000 (18:12 +0200)
PR testsuite/86660
* testsuite/libgomp.c++/for-15.C (results): Include it in
omp declare target region.
(main): Use map (always, tofrom: results) instead of
map (tofrom: results).

From-SVN: r263011

libgomp/ChangeLog
libgomp/testsuite/libgomp.c++/for-15.C

index 0a2a051c9e8aaa2e506f098640910c518571bda4..09a459deb8c2c1bf029365681b703bdc85c396e3 100644 (file)
@@ -1,5 +1,11 @@
 2018-07-26  Jakub Jelinek  <jakub@redhat.com>
 
+       PR testsuite/86660
+       * testsuite/libgomp.c++/for-15.C (results): Include it in
+       omp declare target region.
+       (main): Use map (always, tofrom: results) instead of
+       map (tofrom: results).
+
        PR middle-end/86660
        * testsuite/libgomp.c/pr86660.c: New test.
 
index d48fa37beb0d2bf013310581305fe408d6304d1e..ddb9ce629dd89c6b3926e2a8211af9bb3fd27ab0 100644 (file)
@@ -88,11 +88,9 @@ private:
 
 template <typename T> const I<T> &J<T>::begin () { return b; }
 template <typename T> const I<T> &J<T>::end () { return e; }
-#pragma omp end declare target
 
 int results[2000];
 
-#pragma omp declare target
 template <typename T>
 void
 baz (I<T> &i)
@@ -186,37 +184,37 @@ main ()
     a[i] = i;
   #pragma omp target data map (to: a)
   {
-    #pragma omp target teams map (tofrom: results)
+    #pragma omp target teams map (always, tofrom: results)
     {
       J<int> j (&a[75], &a[1945]);
       f1 (j);
     }
     check (i >= 75 && i < 1945 && (i - 75) % 3 == 0);
-    #pragma omp target teams map (tofrom: results)
+    #pragma omp target teams map (always, tofrom: results)
     {
       J<int> j (&a[63], &a[1949]);
       f2 (j);
     }
     check (i >= 63 && i < 1949);
-    #pragma omp target teams map (tofrom: results)
+    #pragma omp target teams map (always, tofrom: results)
     {
       J<int> j (&a[58], &a[1979]);
       f3 <2> (j);
     }
     check (i >= 58 && i < 1979 && (i - 58) % 6 == 0);
-    #pragma omp target teams map (tofrom: results)
+    #pragma omp target teams map (always, tofrom: results)
     {
       J<int> j (&a[59], &a[1981]);
       f4 <9> (j);
     }
     check (i >= 59 && i < 1981 && (i - 59) % 9 == 0);
-    #pragma omp target teams map (tofrom: results)
+    #pragma omp target teams map (always, tofrom: results)
     {
       J<int> j (&a[52], &a[1972]);
       f5 (j);
     }
     check (i >= 52 && i < 1972 && (i - 52) % 4 == 0);
-    #pragma omp target teams map (tofrom: results)
+    #pragma omp target teams map (always, tofrom: results)
     {
       J<int> j (&a[31], &a[1827]);
       f6 (j);