From 5d36384c6997e59264cf80bf58fc17c5ef3a6bc8 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 26 Jul 2018 18:12:58 +0200 Subject: [PATCH] re PR middle-end/86660 (libgomp.c++/for-15.C ICEs with nvptx offloading) 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 | 6 ++++++ libgomp/testsuite/libgomp.c++/for-15.C | 14 ++++++-------- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 0a2a051c9e8..09a459deb8c 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,5 +1,11 @@ 2018-07-26 Jakub Jelinek + 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. diff --git a/libgomp/testsuite/libgomp.c++/for-15.C b/libgomp/testsuite/libgomp.c++/for-15.C index d48fa37beb0..ddb9ce629dd 100644 --- a/libgomp/testsuite/libgomp.c++/for-15.C +++ b/libgomp/testsuite/libgomp.c++/for-15.C @@ -88,11 +88,9 @@ private: template const I &J::begin () { return b; } template const I &J::end () { return e; } -#pragma omp end declare target int results[2000]; -#pragma omp declare target template void baz (I &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 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 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 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 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 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 j (&a[31], &a[1827]); f6 (j); -- 2.30.2