]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
openmp: Add shared to parallel for linear on parallel master taskloop simd [PR99928]
authorJakub Jelinek <jakub@redhat.com>
Sat, 29 May 2021 08:05:38 +0000 (10:05 +0200)
committerJakub Jelinek <jakub@redhat.com>
Sat, 29 May 2021 08:05:38 +0000 (10:05 +0200)
I forgot to add default(none) and defaultmap(none) wherever possible on the
testcases to make sure none of the required clauses are added implicitly (because
in that case it doesn't work with these none arguments of those default* clauses
or works differently with other default* settings.

And that revealed we didn't add shared on parallel for linear clause
on parallel master taskloop simd, so this patch fixes that too.

2021-05-29  Jakub Jelinek  <jakub@redhat.com>

PR middle-end/99928
* gimplify.c (gimplify_scan_omp_clauses): For taskloop simd
combined with parallel, make sure to add shared clause to
parallel for explicit linear clause.

* c-c++-common/gomp/pr99928-1.c: Add default(none) to constructs
combined with parallel, teams or taskloop and defaultmap(none)
to constructs combined with target.
* c-c++-common/gomp/pr99928-2.c: Likewise.
* c-c++-common/gomp/pr99928-3.c: Likewise.
* c-c++-common/gomp/pr99928-4.c: Likewise.
* c-c++-common/gomp/pr99928-5.c: Likewise.
* c-c++-common/gomp/pr99928-6.c: Likewise.
* c-c++-common/gomp/pr99928-7.c: Likewise.
* c-c++-common/gomp/pr99928-8.c: Likewise.
* c-c++-common/gomp/pr99928-9.c: Likewise.
* c-c++-common/gomp/pr99928-10.c: Likewise.
* c-c++-common/gomp/pr99928-13.c: Likewise.
* c-c++-common/gomp/pr99928-14.c: Likewise.

13 files changed:
gcc/gimplify.c
gcc/testsuite/c-c++-common/gomp/pr99928-1.c
gcc/testsuite/c-c++-common/gomp/pr99928-10.c
gcc/testsuite/c-c++-common/gomp/pr99928-13.c
gcc/testsuite/c-c++-common/gomp/pr99928-14.c
gcc/testsuite/c-c++-common/gomp/pr99928-2.c
gcc/testsuite/c-c++-common/gomp/pr99928-3.c
gcc/testsuite/c-c++-common/gomp/pr99928-4.c
gcc/testsuite/c-c++-common/gomp/pr99928-5.c
gcc/testsuite/c-c++-common/gomp/pr99928-6.c
gcc/testsuite/c-c++-common/gomp/pr99928-7.c
gcc/testsuite/c-c++-common/gomp/pr99928-8.c
gcc/testsuite/c-c++-common/gomp/pr99928-9.c

index d60fc95db0100e96a274ab78b17968022b1a18b8..3ca29cedad89f06e2afbe758bcc9836c9e4be2fa 100644 (file)
@@ -9014,6 +9014,7 @@ gimplify_scan_omp_clauses (tree *list_p, gimple_seq *pre_p,
                 lastprivate and perhaps firstprivate too on the
                 parallel.  Similarly for #pragma omp for simd.  */
              struct gimplify_omp_ctx *octx = outer_ctx;
+             bool taskloop_seen = false;
              decl = NULL_TREE;
              do
                {
@@ -9045,11 +9046,12 @@ gimplify_scan_omp_clauses (tree *list_p, gimple_seq *pre_p,
                  else if (octx
                           && (octx->region_type & ORT_TASK) != 0
                           && octx->combined_loop)
-                   ;
+                   taskloop_seen = true;
                  else if (octx
                           && octx->region_type == ORT_COMBINED_PARALLEL
-                          && ctx->region_type == ORT_WORKSHARE
-                          && octx == outer_ctx)
+                          && ((ctx->region_type == ORT_WORKSHARE
+                               && octx == outer_ctx)
+                              || taskloop_seen))
                    flags = GOVD_SEEN | GOVD_SHARED;
                  else if (octx
                           && ((octx->region_type & ORT_COMBINED_TEAMS)
index 37181fdeaa81b287b7aff6c560d8dfe691e71ef7..b4aa8dd61ecd07ec93410d30f697e85d172bdc30 100644 (file)
@@ -12,14 +12,14 @@ foo (void)
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*firstprivate\\(f00\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f00\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f00\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp distribute parallel for firstprivate (f00)
+  #pragma omp distribute parallel for firstprivate (f00) default(none)
   for (int i = 0; i < 64; i++)
     f00++;
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*firstprivate\\(f01\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f01\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f01\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f01\\)" "gimple" } } */
-  #pragma omp distribute parallel for simd firstprivate (f01)
+  #pragma omp distribute parallel for simd firstprivate (f01) default(none)
   for (int i = 0; i < 64; i++)
     f01++;
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*firstprivate\\(f02\\)" "gimple" } } */
@@ -40,53 +40,53 @@ bar (void)
     f03++;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*firstprivate\\(f04\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(f04\\)" "gimple" } } */
-  #pragma omp master taskloop firstprivate (f04)
+  #pragma omp master taskloop firstprivate (f04) default(none)
   for (int i = 0; i < 64; i++)
     f04++;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*firstprivate\\(f05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(f05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f05\\)" "gimple" } } */
-  #pragma omp master taskloop simd firstprivate (f05)
+  #pragma omp master taskloop simd firstprivate (f05) default(none)
   for (int i = 0; i < 64; i++)
     f05++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f06\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f06\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp parallel for firstprivate (f06)
+  #pragma omp parallel for firstprivate (f06) default(none)
   for (int i = 0; i < 64; i++)
     f06++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f07\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f07\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f07\\)" "gimple" } } */
-  #pragma omp parallel for simd firstprivate (f07)
+  #pragma omp parallel for simd firstprivate (f07) default(none)
   for (int i = 0; i < 64; i++)
     f07++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f08\\)" "gimple" } } */
-  #pragma omp parallel loop firstprivate (f08)
+  #pragma omp parallel loop firstprivate (f08) default(none)
   for (int i = 0; i < 64; i++)
     f08++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*firstprivate\\(f09\\)" "gimple" } } */
-  #pragma omp parallel master firstprivate (f09)
+  #pragma omp parallel master firstprivate (f09) default(none)
   f09++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(f10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*firstprivate\\(f10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(f10\\)" "gimple" } } */
-  #pragma omp parallel master taskloop firstprivate (f10)
+  #pragma omp parallel master taskloop firstprivate (f10) default(none)
   for (int i = 0; i < 64; i++)
     f10++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(f11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*firstprivate\\(f11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(f11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f11\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd firstprivate (f11)
+  #pragma omp parallel master taskloop simd firstprivate (f11) default(none)
   for (int i = 0; i < 64; i++)
     f11++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f12\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp sections\[^\n\r]*firstprivate\\(f12\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp section \[^\n\r]*firstprivate\\(f12\\)" "gimple" } } */
-  #pragma omp parallel sections firstprivate (f12)
+  #pragma omp parallel sections firstprivate (f12) default(none)
   {
     f12++;
     #pragma omp section
@@ -94,36 +94,36 @@ bar (void)
   }
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f13\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f13\\)" "gimple" } } */
-  #pragma omp target parallel firstprivate (f13)
+  #pragma omp target parallel firstprivate (f13) default(none) defaultmap(none)
   f13++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f14\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f14\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f14\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp target parallel for firstprivate (f14)
+  #pragma omp target parallel for firstprivate (f14) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     f14++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f15\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f15\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f15\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f15\\)" "gimple" } } */
-  #pragma omp target parallel for simd firstprivate (f15)
+  #pragma omp target parallel for simd firstprivate (f15) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     f15++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f16\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f16\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f16\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f16\\)" "gimple" } } */
-  #pragma omp target parallel loop firstprivate (f16)
+  #pragma omp target parallel loop firstprivate (f16) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     f16++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f17\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*firstprivate\\(f17\\)" "gimple" } } */
-  #pragma omp target teams firstprivate (f17)
+  #pragma omp target teams firstprivate (f17) default(none) defaultmap(none)
   f17++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f18\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*firstprivate\\(f18\\)" "gimple" } } *//* FIXME: This should be on distribute instead.  */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*firstprivate\\(f18\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp target teams distribute firstprivate (f18)
+  #pragma omp target teams distribute firstprivate (f18) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     f18++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f19\\)" "gimple" } } */
@@ -131,7 +131,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*firstprivate\\(f19\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f19\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f19\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp target teams distribute parallel for firstprivate (f19)
+  #pragma omp target teams distribute parallel for firstprivate (f19) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     f19++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f20\\)" "gimple" } } */
@@ -140,14 +140,14 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f20\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f20\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f20\\)" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd firstprivate (f20)
+  #pragma omp target teams distribute parallel for simd firstprivate (f20) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     f20++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f21\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*firstprivate\\(f21\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*firstprivate\\(f21\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f21\\)" "gimple" } } */
-  #pragma omp target teams distribute simd firstprivate (f21)
+  #pragma omp target teams distribute simd firstprivate (f21) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     f21++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f22\\)" "gimple" } } */
@@ -156,29 +156,29 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(f22\\)" "gimple" } } *//* NOTE: This is an implementation detail.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f22\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f22\\)" "gimple" } } */
-  #pragma omp target teams loop firstprivate (f22)
+  #pragma omp target teams loop firstprivate (f22) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     f22++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*firstprivate\\(f23\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f23\\)" "gimple" } } */
-  #pragma omp target simd firstprivate (f23)
+  #pragma omp target simd firstprivate (f23) defaultmap(none)
   for (int i = 0; i < 64; i++)
     f23++;
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(f24\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f24\\)" "gimple" } } */
-  #pragma omp taskloop simd firstprivate (f24)
+  #pragma omp taskloop simd firstprivate (f24) default(none)
   for (int i = 0; i < 64; i++)
     f24++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*firstprivate\\(f25\\)" "gimple" } } *//* FIXME: This should be on distribute instead.  */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*firstprivate\\(f25\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp teams distribute firstprivate (f25)
+  #pragma omp teams distribute firstprivate (f25) default(none)
   for (int i = 0; i < 64; i++)
     f25++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*firstprivate\\(f26\\)" "gimple" } } *//* FIXME: This should be on distribute instead.  */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*firstprivate\\(f26\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f26\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f26\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp teams distribute parallel for firstprivate (f26)
+  #pragma omp teams distribute parallel for firstprivate (f26) default(none)
   for (int i = 0; i < 64; i++)
     f26++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*firstprivate\\(f27\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
@@ -186,13 +186,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(f27\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f27\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f27\\)" "gimple" } } */
-  #pragma omp teams distribute parallel for simd firstprivate (f27)
+  #pragma omp teams distribute parallel for simd firstprivate (f27) default(none)
   for (int i = 0; i < 64; i++)
     f27++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*firstprivate\\(f28\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*firstprivate\\(f28\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f28\\)" "gimple" } } */
-  #pragma omp teams distribute simd firstprivate (f28)
+  #pragma omp teams distribute simd firstprivate (f28) default(none)
   for (int i = 0; i < 64; i++)
     f28++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*firstprivate\\(f29\\)" "gimple" } } */
@@ -200,7 +200,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(f29\\)" "gimple" } } *//* NOTE: This is an implementation detail.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(f29\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(f29\\)" "gimple" } } */
-  #pragma omp teams loop firstprivate (f29)
+  #pragma omp teams loop firstprivate (f29) default(none)
   for (int i = 0; i < 64; i++)
     f29++;
 }
index 6c44600b07e42a0e0a68641d31ac6e5df1f6fa81..4366863c5793b1dbcefbca8f4f9bff3ddf206e88 100644 (file)
@@ -13,14 +13,14 @@ foo (void)
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r00 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r00 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r00 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp distribute parallel for reduction(+:r00[1:2])
+  #pragma omp distribute parallel for reduction(+:r00[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r00[1]++;
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r01 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r01 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r01 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r01 \\+ 4" "gimple" } } */
-  #pragma omp distribute parallel for simd reduction(+:r01[1:3])
+  #pragma omp distribute parallel for simd reduction(+:r01[1:3]) default(none)
   for (int i = 0; i < 64; i++)
     r01[1]++;
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r02 \\+ 4" "gimple" } } */
@@ -43,53 +43,53 @@ bar (void)
     r03[1]++;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r04 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r04 \\+ 4" "gimple" } } */
-  #pragma omp master taskloop reduction(+:r04[1:6])
+  #pragma omp master taskloop reduction(+:r04[1:6]) default(none)
   for (int i = 0; i < 64; i++)
     r04[1]++;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r05 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r05 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r05 \\+ 4" "gimple" } } */
-  #pragma omp master taskloop simd reduction(+:r05[1:7])
+  #pragma omp master taskloop simd reduction(+:r05[1:7]) default(none)
   for (int i = 0; i < 64; i++)
     r05[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r06 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r06 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp parallel for reduction(+:r06[1:8])
+  #pragma omp parallel for reduction(+:r06[1:8]) default(none)
   for (int i = 0; i < 64; i++)
     r06[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r07 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r07 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r07 \\+ 4" "gimple" } } */
-  #pragma omp parallel for simd reduction(+:r07[1:9])
+  #pragma omp parallel for simd reduction(+:r07[1:9]) default(none)
   for (int i = 0; i < 64; i++)
     r07[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(r08\\)" "gimple" } } *//* FIXME: Should be shared, but firstprivate is an optimization.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r08 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r08 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp parallel loop reduction(+:r08[1:10])
+  #pragma omp parallel loop reduction(+:r08[1:10]) default(none)
   for (int i = 0; i < 64; i++)
     r08[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r09 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r09 \\+ 4" "gimple" } } */
-  #pragma omp parallel master reduction(+:r09[1:11])
+  #pragma omp parallel master reduction(+:r09[1:11]) default(none)
   r09[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(r10\\)" "gimple" } } *//* FIXME: Should be shared, but firstprivate is an optimization.  */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r10 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r10 \\+ 4" "gimple" } } */
-  #pragma omp parallel master taskloop reduction(+:r10[1:12])
+  #pragma omp parallel master taskloop reduction(+:r10[1:12]) default(none)
   for (int i = 0; i < 64; i++)
     r10[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(r11\\)" "gimple" } } *//* FIXME: Should be shared, but firstprivate is an optimization.  */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r11 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r11 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r11 \\+ 4" "gimple" } } */
-  #pragma omp parallel master taskloop simd reduction(+:r11[1:13])
+  #pragma omp parallel master taskloop simd reduction(+:r11[1:13]) default(none)
   for (int i = 0; i < 64; i++)
     r11[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r12 \\+ 4" "gimple" } } *//* FIXME: This should be on sections instead.  */
   /* { dg-final { scan-tree-dump-not "omp sections\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r12 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp section \[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r12 \\+ 4" "gimple" } } */
-  #pragma omp parallel sections reduction(+:r12[1:14])
+  #pragma omp parallel sections reduction(+:r12[1:14]) default(none)
   {
     r12[1]++;
     #pragma omp section
@@ -99,14 +99,14 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(firstprivate:r13 \\\[pointer assign, bias: 4\\\]\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r13\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r13 \\+ 4" "gimple" } } */
-  #pragma omp target parallel reduction(+:r13[1:15])
+  #pragma omp target parallel reduction(+:r13[1:15]) default(none) defaultmap(none)
   r13[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 64\\\]" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(firstprivate:r14 \\\[pointer assign, bias: 4\\\]\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r14" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r14 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r14 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp target parallel for reduction(+:r14[1:16])
+  #pragma omp target parallel for reduction(+:r14[1:16]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r14[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 68\\\]" "gimple" } } */
@@ -115,7 +115,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r15 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r15 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r15 \\+ 4" "gimple" } } */
-  #pragma omp target parallel for simd reduction(+:r15[1:17])
+  #pragma omp target parallel for simd reduction(+:r15[1:17]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r15[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 72\\\]" "gimple" } } */
@@ -124,21 +124,21 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(r16\\)" "gimple" } } *//* FIXME: Should be shared, but firstprivate is an optimization.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r16 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r16 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp target parallel loop reduction(+:r16[1:18])
+  #pragma omp target parallel loop reduction(+:r16[1:18]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r16[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 76\\\]" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(firstprivate:r17 \\\[pointer assign, bias: 4\\\]\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r17\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r17 \\+ 4" "gimple" } } */
-  #pragma omp target teams reduction(+:r17[1:19])
+  #pragma omp target teams reduction(+:r17[1:19]) default(none) defaultmap(none)
   r17[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 80\\\]" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(firstprivate:r18 \\\[pointer assign, bias: 4\\\]\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r18\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r18 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r18 \\+ 4" "gimple" } } */
-  #pragma omp target teams distribute reduction(+:r18[1:20])
+  #pragma omp target teams distribute reduction(+:r18[1:20]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r18[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 84\\\]" "gimple" } } */
@@ -148,7 +148,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r19 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r19 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r19 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp target teams distribute parallel for reduction(+:r19[1:21])
+  #pragma omp target teams distribute parallel for reduction(+:r19[1:21]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r19[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 88\\\]" "gimple" } } */
@@ -159,7 +159,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r20 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r20 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r20 \\+ 4" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd reduction(+:r20[1:22])
+  #pragma omp target teams distribute parallel for simd reduction(+:r20[1:22]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r20[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 92\\\]" "gimple" } } */
@@ -168,7 +168,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r21 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r21 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r21 \\+ 4" "gimple" } } */
-  #pragma omp target teams distribute simd reduction(+:r21[1:23])
+  #pragma omp target teams distribute simd reduction(+:r21[1:23]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r21[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 96\\\]" "gimple" } } */
@@ -179,31 +179,31 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(r22\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r22 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r22 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp target teams loop reduction(+:r22[1:24])
+  #pragma omp target teams loop reduction(+:r22[1:24]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r22[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:\\\*_\[0-9]* \\\[len: 100\\\]" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(firstprivate:r23 \\\[pointer assign, bias: 4\\\]\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r23\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r23 \\+ 4" "gimple" } } */
-  #pragma omp target simd reduction(+:r23[1:25])
+  #pragma omp target simd reduction(+:r23[1:25]) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r23[1]++;
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r24 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r24 \\+ 4" "gimple" } } */
-  #pragma omp taskloop simd reduction(+:r24[1:26])
+  #pragma omp taskloop simd reduction(+:r24[1:26]) default(none)
   for (int i = 0; i < 64; i++)
     r24[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r25 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r25 \\+ 4" "gimple" } } */
-  #pragma omp teams distribute reduction(+:r25[1:27])
+  #pragma omp teams distribute reduction(+:r25[1:27]) default(none)
   for (int i = 0; i < 64; i++)
     r25[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r26 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r26 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r26 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r26 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp teams distribute parallel for reduction(+:r26[1:28])
+  #pragma omp teams distribute parallel for reduction(+:r26[1:28]) default(none)
   for (int i = 0; i < 64; i++)
     r26[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r27 \\+ 4" "gimple" } } */
@@ -211,13 +211,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r27 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r27 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r27 \\+ 4" "gimple" } } */
-  #pragma omp teams distribute parallel for simd reduction(+:r27[1:29])
+  #pragma omp teams distribute parallel for simd reduction(+:r27[1:29]) default(none)
   for (int i = 0; i < 64; i++)
     r27[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r28 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r28 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r28 \\+ 4" "gimple" } } */
-  #pragma omp teams distribute simd reduction(+:r28[1:30])
+  #pragma omp teams distribute simd reduction(+:r28[1:30]) default(none)
   for (int i = 0; i < 64; i++)
     r28[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*firstprivate\\(r29\\)" "gimple" } } *//* FIXME: Should be shared, but firstprivate is an optimization.  */
@@ -225,7 +225,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(r29\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r29 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*\\)r29 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp teams loop reduction(+:r29[1:31])
+  #pragma omp teams loop reduction(+:r29[1:31]) default(none)
   for (int i = 0; i < 64; i++)
     r29[1]++;
 }
index d5d8d789adf73ed5526274a1dffcd17980e4462c..d45417fec8aaa5ea1f50571c6173e00504d8d94a 100644 (file)
@@ -16,7 +16,7 @@ foo (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j00b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*lastprivate\\(j00b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j00b\\)" "gimple" } } */
-  #pragma omp distribute parallel for simd collapse(2) lastprivate (j00a, j00b)
+  #pragma omp distribute parallel for simd collapse(2) lastprivate (j00a, j00b) default(none)
   for (j00a = 0; j00a < 64; j00a++)
     for (j00b = 0; j00b < 4; j00b++)
       ;
@@ -50,7 +50,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j03b\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j03b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j03b\\)" "gimple" } } */
-  #pragma omp master taskloop simd collapse(2) lastprivate (j03a, j03b)
+  #pragma omp master taskloop simd collapse(2) lastprivate (j03a, j03b) default(none)
   for (j03a = 0; j03a < 64; j03a++)
     for (j03b = 0; j03b < 4; j03b++)
       ;
@@ -60,7 +60,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j04b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*lastprivate\\(j04b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j04b\\)" "gimple" } } */
-  #pragma omp parallel for simd collapse(2) lastprivate (j04a, j04b)
+  #pragma omp parallel for simd collapse(2) lastprivate (j04a, j04b) default(none)
   for (j04a = 0; j04a < 64; j04a++)
     for (j04b = 0; j04b < 4; j04b++)
       ;
@@ -74,7 +74,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j05b\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j05b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j05b\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd collapse(2) lastprivate (j05a, j05b)
+  #pragma omp parallel master taskloop simd collapse(2) lastprivate (j05a, j05b) default(none)
   for (j05a = 0; j05a < 64; j05a++)
     for (j05b = 0; j05b < 4; j05b++)
       ;
@@ -88,7 +88,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j06b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*lastprivate\\(j06b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j06b\\)" "gimple" } } */
-  #pragma omp target parallel for simd collapse(2) lastprivate (j06a, j06b)
+  #pragma omp target parallel for simd collapse(2) lastprivate (j06a, j06b) default(none) defaultmap(none)
   for (j06a = 0; j06a < 64; j06a++)
     for (j06b = 0; j06b < 4; j06b++)
       ;
@@ -98,7 +98,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j07b" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(j07b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j07b\\)" "gimple" } } */
-  #pragma omp target simd collapse(2) lastprivate (j07a, j07b)
+  #pragma omp target simd collapse(2) lastprivate (j07a, j07b) defaultmap(none)
   for (j07a = 0; j07a < 64; j07a++)
     for (j07b = 0; j07b < 4; j07b++)
       ;
@@ -116,7 +116,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j08b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*lastprivate\\(j08b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j08b\\)" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd collapse(2) lastprivate (j08a, j08b)
+  #pragma omp target teams distribute parallel for simd collapse(2) lastprivate (j08a, j08b) default(none) defaultmap(none)
   for (j08a = 0; j08a < 64; j08a++)
     for (j08b = 0; j08b < 4; j08b++)
       ;
@@ -130,7 +130,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j09b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j09b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j09b\\)" "gimple" } } */
-  #pragma omp target teams distribute simd collapse(2) lastprivate (j09a, j09b)
+  #pragma omp target teams distribute simd collapse(2) lastprivate (j09a, j09b) default(none) defaultmap(none)
   for (j09a = 0; j09a < 64; j09a++)
     for (j09b = 0; j09b < 4; j09b++)
       ;
@@ -140,7 +140,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j10b\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j10b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j10b\\)" "gimple" } } */
-  #pragma omp taskloop simd collapse(2) lastprivate (j10a, j10b)
+  #pragma omp taskloop simd collapse(2) lastprivate (j10a, j10b) default(none)
   for (j10a = 0; j10a < 64; j10a++)
     for (j10b = 0; j10b < 4; j10b++)
       ;
@@ -154,7 +154,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j11b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*lastprivate\\(j11b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j11b\\)" "gimple" } } */
-  #pragma omp teams distribute parallel for simd collapse(2) lastprivate (j11a, j11b)
+  #pragma omp teams distribute parallel for simd collapse(2) lastprivate (j11a, j11b) default(none)
   for (j11a = 0; j11a < 64; j11a++)
     for (j11b = 0; j11b < 4; j11b++)
       ;
@@ -164,7 +164,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j12b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j12b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j12b\\)" "gimple" } } */
-  #pragma omp teams distribute simd collapse(2) lastprivate (j12a, j12b)
+  #pragma omp teams distribute simd collapse(2) lastprivate (j12a, j12b) default(none)
   for (j12a = 0; j12a < 64; j12a++)
     for (j12b = 0; j12b < 4; j12b++)
       ;
index 2d9e0be5d885bffece72791d2c0b0025f3d5ffb6..2df78919de94938ec6d8f6f32a19814ceb115ab3 100644 (file)
@@ -16,7 +16,7 @@ foo (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j00b\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j00b\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j00b\\)" "gimple" } } */
-  #pragma omp distribute parallel for simd collapse(2)
+  #pragma omp distribute parallel for simd collapse(2) default(none)
   for (j00a = 0; j00a < 64; j00a++)
     for (j00b = 0; j00b < 4; j00b++)
       ;
@@ -50,7 +50,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j03b\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j03b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j03b\\)" "gimple" } } */
-  #pragma omp master taskloop simd collapse(2)
+  #pragma omp master taskloop simd collapse(2) default(none)
   for (j03a = 0; j03a < 64; j03a++)
     for (j03b = 0; j03b < 4; j03b++)
       ;
@@ -60,7 +60,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j04b\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j04b\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j04b\\)" "gimple" } } */
-  #pragma omp parallel for simd collapse(2)
+  #pragma omp parallel for simd collapse(2) default(none)
   for (j04a = 0; j04a < 64; j04a++)
     for (j04b = 0; j04b < 4; j04b++)
       ;
@@ -74,7 +74,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j05b\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j05b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j05b\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd collapse(2)
+  #pragma omp parallel master taskloop simd collapse(2) default(none)
   for (j05a = 0; j05a < 64; j05a++)
     for (j05b = 0; j05b < 4; j05b++)
       ;
@@ -88,7 +88,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j06b\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j06b\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j06b\\)" "gimple" } } */
-  #pragma omp target parallel for simd collapse(2)
+  #pragma omp target parallel for simd collapse(2) default(none) defaultmap(none)
   for (j06a = 0; j06a < 64; j06a++)
     for (j06b = 0; j06b < 4; j06b++)
       ;
@@ -98,7 +98,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j07b" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(j07b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j07b\\)" "gimple" } } */
-  #pragma omp target simd collapse(2)
+  #pragma omp target simd collapse(2) defaultmap(none)
   for (j07a = 0; j07a < 64; j07a++)
     for (j07b = 0; j07b < 4; j07b++)
       ;
@@ -116,7 +116,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j08b\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j08b\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j08b\\)" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd collapse(2)
+  #pragma omp target teams distribute parallel for simd collapse(2) default(none) defaultmap(none)
   for (j08a = 0; j08a < 64; j08a++)
     for (j08b = 0; j08b < 4; j08b++)
       ;
@@ -130,7 +130,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j09b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j09b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j09b\\)" "gimple" } } */
-  #pragma omp target teams distribute simd collapse(2)
+  #pragma omp target teams distribute simd collapse(2) default(none) defaultmap(none)
   for (j09a = 0; j09a < 64; j09a++)
     for (j09b = 0; j09b < 4; j09b++)
       ;
@@ -140,7 +140,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j10b\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j10b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j10b\\)" "gimple" } } */
-  #pragma omp taskloop simd collapse(2)
+  #pragma omp taskloop simd collapse(2) default(none)
   for (j10a = 0; j10a < 64; j10a++)
     for (j10b = 0; j10b < 4; j10b++)
       ;
@@ -154,7 +154,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j11b\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j11b\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j11b\\)" "gimple" } } */
-  #pragma omp teams distribute parallel for simd collapse(2)
+  #pragma omp teams distribute parallel for simd collapse(2) default(none)
   for (j11a = 0; j11a < 64; j11a++)
     for (j11b = 0; j11b < 4; j11b++)
       ;
@@ -164,7 +164,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j12b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j12b\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j12b\\)" "gimple" } } */
-  #pragma omp teams distribute simd collapse(2)
+  #pragma omp teams distribute simd collapse(2) default(none)
   for (j12a = 0; j12a < 64; j12a++)
     for (j12b = 0; j12b < 4; j12b++)
       ;
index 6ba3d46907c662a16d632badb064bd698e8a604d..1af9bd2c4be245636de1dbdf199a8c8a627607f0 100644 (file)
@@ -11,14 +11,14 @@ foo (void)
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(l00\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l00\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l00\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp distribute parallel for lastprivate (l00)
+  #pragma omp distribute parallel for lastprivate (l00) default(none)
   for (int i = 0; i < 64; i++)
     l00 = i;
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(l01\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l01\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l01\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l01\\)" "gimple" } } */
-  #pragma omp distribute parallel for simd lastprivate (l01)
+  #pragma omp distribute parallel for simd lastprivate (l01) default(none)
   for (int i = 0; i < 64; i++)
     l01 = i;
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(l02\\)" "gimple" } } */
@@ -41,38 +41,38 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*lastprivate\\(l04\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(l04\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l04\\)" "gimple" } } */
-  #pragma omp master taskloop lastprivate (l04)
+  #pragma omp master taskloop lastprivate (l04) default(none)
   for (int i = 0; i < 64; i++)
     l04 = i;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*lastprivate\\(l05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(l05\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l05\\)" "gimple" } } */
-  #pragma omp master taskloop simd lastprivate (l05)
+  #pragma omp master taskloop simd lastprivate (l05) default(none)
   for (int i = 0; i < 64; i++)
     l05 = i;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l06\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l06\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp parallel for lastprivate (l06)
+  #pragma omp parallel for lastprivate (l06) default(none)
   for (int i = 0; i < 64; i++)
     l06 = i;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l07\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l07\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l07\\)" "gimple" } } */
-  #pragma omp parallel for simd lastprivate (l07)
+  #pragma omp parallel for simd lastprivate (l07) default(none)
   for (int i = 0; i < 64; i++)
     l07 = i;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j00\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*lastprivate\\(j00\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j00\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp parallel loop lastprivate (j00)
+  #pragma omp parallel loop lastprivate (j00) default(none)
   for (j00 = 0; j00 < 64; j00++)
     ;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(l08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*lastprivate\\(l08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(l08\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l08\\)" "gimple" } } */
-  #pragma omp parallel master taskloop lastprivate (l08)
+  #pragma omp parallel master taskloop lastprivate (l08) default(none)
   for (int i = 0; i < 64; i++)
     l08 = i;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(l09\\)" "gimple" } } */
@@ -80,13 +80,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(l09\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l09\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd lastprivate (l09)
+  #pragma omp parallel master taskloop simd lastprivate (l09) default(none)
   for (int i = 0; i < 64; i++)
     l09 = i;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l10\\)" "gimple" } } *//* FIXME: This should be on sections instead.  */
   /* { dg-final { scan-tree-dump-not "omp sections\[^\n\r]*lastprivate\\(l10\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp section \[^\n\r]*lastprivate\\(l10\\)" "gimple" } } */
-  #pragma omp parallel sections lastprivate (l10)
+  #pragma omp parallel sections lastprivate (l10) default(none)
   {
     l10 = 1;
     #pragma omp section
@@ -96,7 +96,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(l11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l11\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l11\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp target parallel for lastprivate (l11)
+  #pragma omp target parallel for lastprivate (l11) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l11 = i;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l12" "gimple" } } */
@@ -104,7 +104,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l12\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l12\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l12\\)" "gimple" } } */
-  #pragma omp target parallel for simd lastprivate (l12)
+  #pragma omp target parallel for simd lastprivate (l12) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l12 = i;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j01" "gimple" } } */
@@ -112,14 +112,14 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j01\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*lastprivate\\(j01\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j01\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp target parallel loop lastprivate (j01)
+  #pragma omp target parallel loop lastprivate (j01) default(none) defaultmap(none)
   for (j01 = 0; j01 < 64; j01++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l13" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(l13\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(l13\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(l13\\)" "gimple" } } */
-  #pragma omp target teams distribute lastprivate (l13)
+  #pragma omp target teams distribute lastprivate (l13) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l13 = i;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l14" "gimple" } } */
@@ -128,7 +128,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(l14\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l14\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l14\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp target teams distribute parallel for lastprivate (l14)
+  #pragma omp target teams distribute parallel for lastprivate (l14) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l14 = i;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l15" "gimple" } } */
@@ -138,7 +138,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l15\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l15\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l15\\)" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd lastprivate (l15)
+  #pragma omp target teams distribute parallel for simd lastprivate (l15) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l15 = i;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l16" "gimple" } } */
@@ -146,7 +146,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(l16\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(l16\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l16\\)" "gimple" } } */
-  #pragma omp target teams distribute simd lastprivate (l16)
+  #pragma omp target teams distribute simd lastprivate (l16) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l16 = i;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j02" "gimple" } } */
@@ -156,31 +156,31 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j02\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*lastprivate\\(j02\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j02\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp target teams loop lastprivate (j02)
+  #pragma omp target teams loop lastprivate (j02) default(none) defaultmap(none)
   for (j02 = 0; j02 < 64; j02++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l17" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(l17\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l17\\)" "gimple" } } */
-  #pragma omp target simd lastprivate (l17)
+  #pragma omp target simd lastprivate (l17) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l17 = i;
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(l18\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l18\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l18\\)" "gimple" } } */
-  #pragma omp taskloop simd lastprivate (l18)
+  #pragma omp taskloop simd lastprivate (l18) default(none)
   for (int i = 0; i < 64; i++)
     l18 = i;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(l19\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(l19\\)" "gimple" } } */
-  #pragma omp teams distribute lastprivate (l19)
+  #pragma omp teams distribute lastprivate (l19) default(none)
   for (int i = 0; i < 64; i++)
     l19 = i;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(l20\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(l20\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l20\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l20\\)" "gimple" } } *//* FIXME.  */
- #pragma omp teams distribute parallel for lastprivate (l20)
+ #pragma omp teams distribute parallel for lastprivate (l20) default(none)
   for (int i = 0; i < 64; i++)
     l20 = i;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(l21\\)" "gimple" } } */
@@ -188,13 +188,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l21\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l21\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l21\\)" "gimple" } } */
- #pragma omp teams distribute parallel for simd lastprivate (l21)
+ #pragma omp teams distribute parallel for simd lastprivate (l21) default(none)
   for (int i = 0; i < 64; i++)
     l21 = i;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(l22\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(l22\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l22\\)" "gimple" } } */
-  #pragma omp teams distribute simd lastprivate (l22)
+  #pragma omp teams distribute simd lastprivate (l22) default(none)
   for (int i = 0; i < 64; i++)
     l22 = i;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j03\\)" "gimple" } } */
@@ -202,7 +202,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j03\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*lastprivate\\(j03\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(j03\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp teams loop lastprivate (j03)
+  #pragma omp teams loop lastprivate (j03) default(none)
   for (j03 = 0; j03 < 64; j03++)
     ;
 }
index cf9c72d75b88f06c9df740d04e5915f75fae70ab..8e8cf938ef6c5bd805a922fb5f45601c521ed18f 100644 (file)
@@ -20,7 +20,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*lastprivate\\(l01\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(l01\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l01\\)" "gimple" } } */
-  #pragma omp master taskloop firstprivate (l01) lastprivate (l01)
+  #pragma omp master taskloop firstprivate (l01) lastprivate (l01) default(none)
   for (int i = 0; i < 64; i++)
     l01 = i;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*firstprivate\\(l02\\)" "gimple" } } */
@@ -29,14 +29,14 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l02\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(l02\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l02\\)" "gimple" } } */
-  #pragma omp master taskloop simd firstprivate (l02) lastprivate (l02)
+  #pragma omp master taskloop simd firstprivate (l02) lastprivate (l02) default(none)
   for (int i = 0; i < 64; i++)
     l02 = i;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(l03\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l03\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(l03\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l03\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp parallel for firstprivate (l03) lastprivate (l03)
+  #pragma omp parallel for firstprivate (l03) lastprivate (l03) default(none)
   for (int i = 0; i < 64; i++)
     l03 = i;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(l04\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
@@ -45,7 +45,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l04\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(l04\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l04\\)" "gimple" } } */
-  #pragma omp parallel for simd firstprivate (l04) lastprivate (l04)
+  #pragma omp parallel for simd firstprivate (l04) lastprivate (l04) default(none)
   for (int i = 0; i < 64; i++)
     l04 = i;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(l05\\)" "gimple" } } */
@@ -53,7 +53,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*lastprivate\\(l05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(l05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l05\\)" "gimple" } } */
-  #pragma omp parallel master taskloop firstprivate (l05) lastprivate (l05)
+  #pragma omp parallel master taskloop firstprivate (l05) lastprivate (l05) default(none)
   for (int i = 0; i < 64; i++)
     l05 = i;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(l06\\)" "gimple" } } */
@@ -63,7 +63,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l06\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(l06\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l06\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd firstprivate (l06) lastprivate (l06)
+  #pragma omp parallel master taskloop simd firstprivate (l06) lastprivate (l06) default(none)
   for (int i = 0; i < 64; i++)
     l06 = i;
   /* FIXME: OpenMP 5.0/5.1 broken here, conceptually it should be shared on parallel and
@@ -76,7 +76,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp sections\[^\n\r]*lastprivate\\(l07\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp section \[^\n\r]*firstprivate\\(l07\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp section \[^\n\r]*lastprivate\\(l07\\)" "gimple" } } */
-  #pragma omp parallel sections firstprivate (l07) lastprivate (l07)
+  #pragma omp parallel sections firstprivate (l07) lastprivate (l07) default(none)
   {
     l07 = 1;
     #pragma omp section
@@ -88,7 +88,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(l08\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(l08\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l08\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp target parallel for firstprivate (l08) lastprivate (l08)
+  #pragma omp target parallel for firstprivate (l08) lastprivate (l08) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l08 = i;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l09" "gimple" } } */
@@ -99,21 +99,21 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l09\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(l09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l09\\)" "gimple" } } */
-  #pragma omp target parallel for simd firstprivate (l09) lastprivate (l09)
+  #pragma omp target parallel for simd firstprivate (l09) lastprivate (l09) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l09 = i;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l10" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(l10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(l10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l10\\)" "gimple" } } */
-  #pragma omp target simd firstprivate (l10) lastprivate (l10)
+  #pragma omp target simd firstprivate (l10) lastprivate (l10) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l10 = i;
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(l11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp simd\[^\n\r]*firstprivate\\(l11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*lastprivate\\(l11\\)" "gimple" } } */
- #pragma omp taskloop simd firstprivate (l11) lastprivate (l11)
+ #pragma omp taskloop simd firstprivate (l11) lastprivate (l11) default(none)
   for (int i = 0; i < 64; i++)
     l11 = i;
 }
index f35e7343db49da060c8e1d29b5deb574c9990765..915a8657b91f5e2e659b263b5984469b57100b40 100644 (file)
@@ -19,12 +19,12 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(l01\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l01\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(l01:1\\)" "gimple" } } */
-  #pragma omp master taskloop simd linear (l01)
+  #pragma omp master taskloop simd linear (l01) default(none)
   for (int i = 0; i < 64; i++)
     l01++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(l02\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*linear\\(l02:1\\)" "gimple" } } */
-  #pragma omp parallel for linear (l02)
+  #pragma omp parallel for linear (l02) default(none)
   for (int i = 0; i < 64; i++)
     l02++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*firstprivate\\(l03\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
@@ -32,7 +32,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(l03\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l03\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(l03:1\\)" "gimple" } } */
-  #pragma omp parallel for simd linear (l03)
+  #pragma omp parallel for simd linear (l03) default(none)
   for (int i = 0; i < 64; i++)
     l03++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(l04\\)" "gimple" } } */
@@ -41,14 +41,14 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(l04\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l04\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(l04:1\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd linear (l04)
+  #pragma omp parallel master taskloop simd linear (l04) default(none)
   for (int i = 0; i < 64; i++)
     l04++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l05" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(l05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(l05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*linear\\(l05:1\\)" "gimple" } } */
-  #pragma omp target parallel for linear (l05)
+  #pragma omp target parallel for linear (l05) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l05++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l06" "gimple" } } */
@@ -58,19 +58,19 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*firstprivate\\(l06\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(l06\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(l06:1\\)" "gimple" } } */
-  #pragma omp target parallel for simd linear (l06)
+  #pragma omp target parallel for simd linear (l06) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l06++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:l07" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(l07\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(l07:1\\)" "gimple" } } */
-  #pragma omp target simd linear (l07)
+  #pragma omp target simd linear (l07) defaultmap(none)
   for (int i = 0; i < 64; i++)
     l07++;
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*firstprivate\\(l08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(l08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(l08:1\\)" "gimple" } } */
-  #pragma omp taskloop simd linear (l08)
+  #pragma omp taskloop simd linear (l08) default(none)
   for (int i = 0; i < 64; i++)
     l08++;
 }
index 7405188556ee59e5a21bf763619c94ad7ba598a6..26da0ac433a1c6a7f1bc3109af41e448635ff809 100644 (file)
@@ -12,7 +12,7 @@ foo (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j00\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j00\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j00:1\\)" "gimple" } } */
-  #pragma omp distribute parallel for simd linear (j00)
+  #pragma omp distribute parallel for simd linear (j00) default(none)
   for (j00 = 0; j00 < 64; j00++)
     ;
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j01\\)" "gimple" } } */
@@ -35,13 +35,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j03\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j03\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j03:1\\)" "gimple" } } */
-  #pragma omp master taskloop simd linear (j03)
+  #pragma omp master taskloop simd linear (j03) default(none)
   for (j03 = 0; j03 < 64; j03++)
     ;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j04\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j04\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j04:1\\)" "gimple" } } */
-  #pragma omp parallel for simd linear (j04)
+  #pragma omp parallel for simd linear (j04) default(none)
   for (j04 = 0; j04 < 64; j04++)
     ;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j05\\)" "gimple" } } */
@@ -49,7 +49,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j05\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j05:1\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd linear (j05)
+  #pragma omp parallel master taskloop simd linear (j05) default(none)
   for (j05 = 0; j05 < 64; j05++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j06" "gimple" } } */
@@ -57,13 +57,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j06\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j06\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j06:1\\)" "gimple" } } */
-  #pragma omp target parallel for simd linear (j06)
+  #pragma omp target parallel for simd linear (j06) default(none) defaultmap(none)
   for (j06 = 0; j06 < 64; j06++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j07" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(j07\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j07:1\\)" "gimple" } } */
-  #pragma omp target simd linear (j07)
+  #pragma omp target simd linear (j07) defaultmap(none)
   for (j07 = 0; j07 < 64; j07++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j08" "gimple" } } */
@@ -73,7 +73,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j08\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j08\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j08:1\\)" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd linear (j08)
+  #pragma omp target teams distribute parallel for simd linear (j08) default(none) defaultmap(none)
   for (j08 = 0; j08 < 64; j08++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j09" "gimple" } } */
@@ -81,13 +81,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j09:1\\)" "gimple" } } */
-  #pragma omp target teams distribute simd linear (j09)
+  #pragma omp target teams distribute simd linear (j09) default(none) defaultmap(none)
   for (j09 = 0; j09 < 64; j09++)
     ;
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j10\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j10:1\\)" "gimple" } } */
-  #pragma omp taskloop simd linear (j10)
+  #pragma omp taskloop simd linear (j10) default(none)
   for (j10 = 0; j10 < 64; j10++)
     ;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j11\\)" "gimple" } } */
@@ -95,13 +95,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j11\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j11\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j11:1\\)" "gimple" } } */
-  #pragma omp teams distribute parallel for simd linear (j11)
+  #pragma omp teams distribute parallel for simd linear (j11) default(none)
   for (j11 = 0; j11 < 64; j11++)
     ;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j12\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j12\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j12:1\\)" "gimple" } } */
-  #pragma omp teams distribute simd linear (j12)
+  #pragma omp teams distribute simd linear (j12) default(none)
   for (j12 = 0; j12 < 64; j12++)
     ;
 }
index 918a97e8167f536f7ba6b9c642e031bbf515f889..d37587c13133167b450915a64356efd38b2f7038 100644 (file)
@@ -12,7 +12,7 @@ foo (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j00\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j00\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j00:1\\)" "gimple" } } */
-  #pragma omp distribute parallel for simd
+  #pragma omp distribute parallel for simd default(none)
   for (j00 = 0; j00 < 64; j00++)
     ;
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j01\\)" "gimple" } } */
@@ -35,13 +35,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j03\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j03\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j03:1\\)" "gimple" } } */
-  #pragma omp master taskloop simd
+  #pragma omp master taskloop simd default(none)
   for (j03 = 0; j03 < 64; j03++)
     ;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j04\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j04\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j04:1\\)" "gimple" } } */
-  #pragma omp parallel for simd
+  #pragma omp parallel for simd default(none)
   for (j04 = 0; j04 < 64; j04++)
     ;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(j05\\)" "gimple" } } */
@@ -49,7 +49,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j05\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j05:1\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd
+  #pragma omp parallel master taskloop simd default(none)
   for (j05 = 0; j05 < 64; j05++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j06" "gimple" } } */
@@ -57,13 +57,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j06\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j06\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j06:1\\)" "gimple" } } */
-  #pragma omp target parallel for simd
+  #pragma omp target parallel for simd default(none) defaultmap(none)
   for (j06 = 0; j06 < 64; j06++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j07" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(j07\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j07:1\\)" "gimple" } } */
-  #pragma omp target simd
+  #pragma omp target simd defaultmap(none)
   for (j07 = 0; j07 < 64; j07++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j08" "gimple" } } */
@@ -73,7 +73,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j08\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j08\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j08:1\\)" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd
+  #pragma omp target teams distribute parallel for simd default(none) defaultmap(none)
   for (j08 = 0; j08 < 64; j08++)
     ;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:j09" "gimple" } } */
@@ -81,13 +81,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j09:1\\)" "gimple" } } */
-  #pragma omp target teams distribute simd
+  #pragma omp target teams distribute simd default(none) defaultmap(none)
   for (j09 = 0; j09 < 64; j09++)
     ;
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*shared\\(j10\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*lastprivate\\(j10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j10:1\\)" "gimple" } } */
-  #pragma omp taskloop simd
+  #pragma omp taskloop simd default(none)
   for (j10 = 0; j10 < 64; j10++)
     ;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j11\\)" "gimple" } } */
@@ -95,13 +95,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*lastprivate\\(j11\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j11\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j11:1\\)" "gimple" } } */
-  #pragma omp teams distribute parallel for simd
+  #pragma omp teams distribute parallel for simd default(none)
   for (j11 = 0; j11 < 64; j11++)
     ;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(j12\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp distribute\[^\n\r]*lastprivate\\(j12\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j12:1\\)" "gimple" } } */
-  #pragma omp teams distribute simd
+  #pragma omp teams distribute simd default(none)
   for (j12 = 0; j12 < 64; j12++)
     ;
 }
index 5db1101e23bdf9e4e995a656aab1dab94defd8aa..e6e0e929dd23c0f518b0228f440a9b4cf9080bdd 100644 (file)
@@ -9,7 +9,7 @@ foo (void)
   /* { dg-final { scan-tree-dump-not "omp parallel\[^\n\r]*lastprivate\\(j00\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j00\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j00:1\\)" "gimple" } } */
-  #pragma omp distribute parallel for simd
+  #pragma omp distribute parallel for simd default(none)
   for (int j00 = 0; j00 < 64; j00++)
     ;
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*lastprivate\\(j01\\)" "gimple" } } */
@@ -30,20 +30,20 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*lastprivate\\(j03\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp taskloop\[^\n\r]*lastprivate\\(j03\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j03:1\\)" "gimple" } } */
-  #pragma omp master taskloop simd
+  #pragma omp master taskloop simd default(none)
   for (int j03 = 0; j03 < 64; j03++)
     ;
   /* { dg-final { scan-tree-dump-not "omp parallel\[^\n\r]*lastprivate\\(j04\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j04\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j04:1\\)" "gimple" } } */
-  #pragma omp parallel for simd
+  #pragma omp parallel for simd default(none)
   for (int j04 = 0; j04 < 64; j04++)
     ;
   /* { dg-final { scan-tree-dump-not "omp parallel\[^\n\r]*shared\\(j05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*lastprivate\\(j05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp taskloop\[^\n\r]*lastprivate\\(j05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j05:1\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd
+  #pragma omp parallel master taskloop simd default(none)
   for (int j05 = 0; j05 < 64; j05++)
     ;
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*map\\(tofrom:j06" "gimple" } } */
@@ -52,13 +52,13 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp parallel\[^\n\r]*lastprivate\\(j06\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j06\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j06:1\\)" "gimple" } } */
-  #pragma omp target parallel for simd
+  #pragma omp target parallel for simd default(none) defaultmap(none)
   for (int j06 = 0; j06 < 64; j06++)
     ;
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*map\\(tofrom:j07" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(j07\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j07:1\\)" "gimple" } } */
-  #pragma omp target simd
+  #pragma omp target simd defaultmap(none)
   for (int j07 = 0; j07 < 64; j07++)
     ;
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*map\\(tofrom:j08" "gimple" } } */
@@ -69,7 +69,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp parallel\[^\n\r]*lastprivate\\(j08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j08:1\\)" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd
+  #pragma omp target teams distribute parallel for simd default(none) defaultmap(none)
   for (int j08 = 0; j08 < 64; j08++)
     ;
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*map\\(tofrom:j09" "gimple" } } */
@@ -77,12 +77,12 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp teams\[^\n\r]*shared\\(j09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*lastprivate\\(j09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j09:1\\)" "gimple" } } */
-  #pragma omp target teams distribute simd
+  #pragma omp target teams distribute simd default(none) defaultmap(none)
   for (int j09 = 0; j09 < 64; j09++)
     ;
   /* { dg-final { scan-tree-dump-not "omp taskloop\[^\n\r]*lastprivate\\(j10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j10:1\\)" "gimple" } } */
-  #pragma omp taskloop simd
+  #pragma omp taskloop simd default(none)
   for (int j10 = 0; j10 < 64; j10++)
     ;
   /* { dg-final { scan-tree-dump-not "omp teams\[^\n\r]*shared\\(j11\\)" "gimple" } } */
@@ -91,13 +91,13 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp parallel\[^\n\r]*lastprivate\\(j11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*lastprivate\\(j11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j11:1\\)" "gimple" } } */
-  #pragma omp teams distribute parallel for simd
+  #pragma omp teams distribute parallel for simd default(none)
   for (int j11 = 0; j11 < 64; j11++)
     ;
   /* { dg-final { scan-tree-dump-not "omp teams\[^\n\r]*shared\\(j12\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*lastprivate\\(j12\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*linear\\(j12:1\\)" "gimple" } } */
-  #pragma omp teams distribute simd
+  #pragma omp teams distribute simd default(none)
   for (int j12 = 0; j12 < 64; j12++)
     ;
 }
index 27e6ad1eb36d479b51f401b30540cc1b817fd32b..ad36f3ede542a3ed82e063b0e124abb04dc61851 100644 (file)
@@ -12,14 +12,14 @@ foo (void)
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:r00\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r00\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r00\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp distribute parallel for reduction(+:r00)
+  #pragma omp distribute parallel for reduction(+:r00) default(none)
   for (int i = 0; i < 64; i++)
     r00++;
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:r01\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r01\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r01\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r01\\)" "gimple" } } */
-  #pragma omp distribute parallel for simd reduction(+:r01)
+  #pragma omp distribute parallel for simd reduction(+:r01) default(none)
   for (int i = 0; i < 64; i++)
     r01++;
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:r02\\)" "gimple" } } */
@@ -42,53 +42,53 @@ bar (void)
     r03++;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:r04\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:r04\\)" "gimple" } } */
-  #pragma omp master taskloop reduction(+:r04)
+  #pragma omp master taskloop reduction(+:r04) default(none)
   for (int i = 0; i < 64; i++)
     r04++;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:r05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:r05\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r05\\)" "gimple" } } */
-  #pragma omp master taskloop simd reduction(+:r05)
+  #pragma omp master taskloop simd reduction(+:r05) default(none)
   for (int i = 0; i < 64; i++)
     r05++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r06\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r06\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp parallel for reduction(+:r06)
+  #pragma omp parallel for reduction(+:r06) default(none)
   for (int i = 0; i < 64; i++)
     r06++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r07\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r07\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r07\\)" "gimple" } } */
-  #pragma omp parallel for simd reduction(+:r07)
+  #pragma omp parallel for simd reduction(+:r07) default(none)
   for (int i = 0; i < 64; i++)
     r07++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:r08\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r08\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp parallel loop reduction(+:r08)
+  #pragma omp parallel loop reduction(+:r08) default(none)
   for (int i = 0; i < 64; i++)
     r08++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r09\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:r09\\)" "gimple" } } */
-  #pragma omp parallel master reduction(+:r09)
+  #pragma omp parallel master reduction(+:r09) default(none)
   r09++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:r10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:r10\\)" "gimple" } } */
-  #pragma omp parallel master taskloop reduction(+:r10)
+  #pragma omp parallel master taskloop reduction(+:r10) default(none)
   for (int i = 0; i < 64; i++)
     r10++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:r11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:r11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r11\\)" "gimple" } } */
-  #pragma omp parallel master taskloop simd reduction(+:r11)
+  #pragma omp parallel master taskloop simd reduction(+:r11) default(none)
   for (int i = 0; i < 64; i++)
     r11++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r12\\)" "gimple" } } *//* FIXME: This should be on sections instead.  */
   /* { dg-final { scan-tree-dump-not "omp sections\[^\n\r]*reduction\\(\\+:r12\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp section \[^\n\r]*reduction\\(\\+:r12\\)" "gimple" } } */
-  #pragma omp parallel sections reduction(+:r12)
+  #pragma omp parallel sections reduction(+:r12) default(none)
   {
     r12++;
     #pragma omp section
@@ -97,13 +97,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r13" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r13\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r13\\)" "gimple" } } */
-  #pragma omp target parallel reduction(+:r13)
+  #pragma omp target parallel reduction(+:r13) default(none) defaultmap(none)
   r13++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r14" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r14\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r14\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r14\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp target parallel for reduction(+:r14)
+  #pragma omp target parallel for reduction(+:r14) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r14++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r15" "gimple" } } */
@@ -111,7 +111,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r15\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r15\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r15\\)" "gimple" } } */
-  #pragma omp target parallel for simd reduction(+:r15)
+  #pragma omp target parallel for simd reduction(+:r15) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r15++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r16" "gimple" } } */
@@ -119,19 +119,19 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r16\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:r16\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r16\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp target parallel loop reduction(+:r16)
+  #pragma omp target parallel loop reduction(+:r16) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r16++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r17" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r17\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:r17\\)" "gimple" } } */
-  #pragma omp target teams reduction(+:r17)
+  #pragma omp target teams reduction(+:r17) default(none) defaultmap(none)
   r17++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r18" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r18\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:r18\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:r18\\)" "gimple" } } */
-  #pragma omp target teams distribute reduction(+:r18)
+  #pragma omp target teams distribute reduction(+:r18) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r18++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r19" "gimple" } } */
@@ -140,7 +140,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:r19\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r19\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r19\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp target teams distribute parallel for reduction(+:r19)
+  #pragma omp target teams distribute parallel for reduction(+:r19) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r19++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r20" "gimple" } } */
@@ -150,7 +150,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r20\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r20\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r20\\)" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd reduction(+:r20)
+  #pragma omp target teams distribute parallel for simd reduction(+:r20) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r20++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r21" "gimple" } } */
@@ -158,7 +158,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:r21\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:r21\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r21\\)" "gimple" } } */
-  #pragma omp target teams distribute simd reduction(+:r21)
+  #pragma omp target teams distribute simd reduction(+:r21) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r21++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r22" "gimple" } } */
@@ -168,30 +168,30 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r22\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:r22\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r22\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp target teams loop reduction(+:r22)
+  #pragma omp target teams loop reduction(+:r22) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r22++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r23" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r23\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r23\\)" "gimple" } } */
-  #pragma omp target simd reduction(+:r23)
+  #pragma omp target simd reduction(+:r23) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r23++;
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:r24\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r24\\)" "gimple" } } */
-  #pragma omp taskloop simd reduction(+:r24)
+  #pragma omp taskloop simd reduction(+:r24) default(none)
   for (int i = 0; i < 64; i++)
     r24++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:r25\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:r25\\)" "gimple" } } */
-  #pragma omp teams distribute reduction(+:r25)
+  #pragma omp teams distribute reduction(+:r25) default(none)
   for (int i = 0; i < 64; i++)
     r25++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:r26\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:r26\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r26\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r26\\)" "gimple" } } *//* FIXME.  */
-  #pragma omp teams distribute parallel for reduction(+:r26)
+  #pragma omp teams distribute parallel for reduction(+:r26) default(none)
   for (int i = 0; i < 64; i++)
     r26++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:r27\\)" "gimple" } } */
@@ -199,13 +199,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:r27\\)" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:r27\\)" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r27\\)" "gimple" } } */
-  #pragma omp teams distribute parallel for simd reduction(+:r27)
+  #pragma omp teams distribute parallel for simd reduction(+:r27) default(none)
   for (int i = 0; i < 64; i++)
     r27++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:r28\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:r28\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r28\\)" "gimple" } } */
-  #pragma omp teams distribute simd reduction(+:r28)
+  #pragma omp teams distribute simd reduction(+:r28) default(none)
   for (int i = 0; i < 64; i++)
     r28++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(r29\\)" "gimple" } } */
@@ -213,7 +213,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r29\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:r29\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:r29\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp teams loop reduction(+:r29)
+  #pragma omp teams loop reduction(+:r29) default(none)
   for (int i = 0; i < 64; i++)
     r29++;
 }
index 862352776674e412c913d745ea08e0222f89a177..a7d970ac157dff73cb7f268360a53197841ec4aa 100644 (file)
@@ -12,14 +12,14 @@ foo (void)
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r00 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r00 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r00 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp distribute parallel for reduction(+:r00[1:2])
+  #pragma omp distribute parallel for reduction(+:r00[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r00[1]++;
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r01 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r01 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r01 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r01 \\+ 4" "gimple" } } */
-  #pragma omp distribute parallel for simd reduction(+:r01[1:2])
+  #pragma omp distribute parallel for simd reduction(+:r01[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r01[1]++;
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r02 \\+ 4" "gimple" } } */
@@ -42,53 +42,53 @@ bar (void)
     r03[1]++;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r04 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r04 \\+ 4" "gimple" } } */
-  #pragma omp master taskloop reduction(+:r04[1:2])
+  #pragma omp master taskloop reduction(+:r04[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r04[1]++;
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r05 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r05 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r05 \\+ 4" "gimple" } } */
-  #pragma omp master taskloop simd reduction(+:r05[1:2])
+  #pragma omp master taskloop simd reduction(+:r05[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r05[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r06 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r06 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp parallel for reduction(+:r06[1:2])
+  #pragma omp parallel for reduction(+:r06[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r06[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r07 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r07 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r07 \\+ 4" "gimple" } } */
-  #pragma omp parallel for simd reduction(+:r07[1:2])
+  #pragma omp parallel for simd reduction(+:r07[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r07[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r08\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r08 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r08 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp parallel loop reduction(+:r08[1:2])
+  #pragma omp parallel loop reduction(+:r08[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r08[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r09 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r09 \\+ 4" "gimple" } } */
-  #pragma omp parallel master reduction(+:r09[1:2])
+  #pragma omp parallel master reduction(+:r09[1:2]) default(none)
   r09[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r10\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r10 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r10 \\+ 4" "gimple" } } */
-  #pragma omp parallel master taskloop reduction(+:r10[1:2])
+  #pragma omp parallel master taskloop reduction(+:r10[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r10[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r11\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp master\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r11 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r11 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r11 \\+ 4" "gimple" } } */
-  #pragma omp parallel master taskloop simd reduction(+:r11[1:2])
+  #pragma omp parallel master taskloop simd reduction(+:r11[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r11[1]++;
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r12 \\+ 4" "gimple" } } *//* FIXME: This should be on sections instead.  */
   /* { dg-final { scan-tree-dump-not "omp sections\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r12 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump-not "omp section \[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r12 \\+ 4" "gimple" } } */
-  #pragma omp parallel sections reduction(+:r12[1:2])
+  #pragma omp parallel sections reduction(+:r12[1:2]) default(none)
   {
     r12[1]++;
     #pragma omp section
@@ -97,13 +97,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r13\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r13\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r13 \\+ 4" "gimple" } } */
-  #pragma omp target parallel reduction(+:r13[1:2])
+  #pragma omp target parallel reduction(+:r13[1:2]) default(none) defaultmap(none)
   r13[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r14\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r14" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r14 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r14 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp target parallel for reduction(+:r14[1:2])
+  #pragma omp target parallel for reduction(+:r14[1:2]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r14[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r15\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
@@ -111,7 +111,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r15 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r15 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r15 \\+ 4" "gimple" } } */
-  #pragma omp target parallel for simd reduction(+:r15[1:2])
+  #pragma omp target parallel for simd reduction(+:r15[1:2]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r15[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r16\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
@@ -119,19 +119,19 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r16\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r16 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r16 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp target parallel loop reduction(+:r16[1:2])
+  #pragma omp target parallel loop reduction(+:r16[1:2]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r16[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r17\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r17\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r17 \\+ 4" "gimple" } } */
-  #pragma omp target teams reduction(+:r17[1:2])
+  #pragma omp target teams reduction(+:r17[1:2]) default(none) defaultmap(none)
   r17[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r18\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r18\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r18 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r18 \\+ 4" "gimple" } } */
-  #pragma omp target teams distribute reduction(+:r18[1:2])
+  #pragma omp target teams distribute reduction(+:r18[1:2]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r18[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r19\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
@@ -140,7 +140,7 @@ bar (void)
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r19 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r19 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r19 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp target teams distribute parallel for reduction(+:r19[1:2])
+  #pragma omp target teams distribute parallel for reduction(+:r19[1:2]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r19[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r20\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
@@ -150,7 +150,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r20 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r20 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r20 \\+ 4" "gimple" } } */
-  #pragma omp target teams distribute parallel for simd reduction(+:r20[1:2])
+  #pragma omp target teams distribute parallel for simd reduction(+:r20[1:2]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r20[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r21\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
@@ -158,7 +158,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r21 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r21 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r21 \\+ 4" "gimple" } } */
-  #pragma omp target teams distribute simd reduction(+:r21[1:2])
+  #pragma omp target teams distribute simd reduction(+:r21[1:2]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r21[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r22\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
@@ -168,30 +168,30 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r22\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r22 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r22 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp target teams loop reduction(+:r22[1:2])
+  #pragma omp target teams loop reduction(+:r22[1:2]) default(none) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r22[1]++;
   /* { dg-final { scan-tree-dump "omp target\[^\n\r]*map\\(tofrom:r23\\\[1\\\] \\\[len: 8\\\]" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp target\[^\n\r]*firstprivate\\(r23\\)" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r23 \\+ 4" "gimple" } } */
-  #pragma omp target simd reduction(+:r23[1:2])
+  #pragma omp target simd reduction(+:r23[1:2]) defaultmap(none)
   for (int i = 0; i < 64; i++)
     r23[1]++;
   /* { dg-final { scan-tree-dump "omp taskloop\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r24 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r24 \\+ 4" "gimple" } } */
-  #pragma omp taskloop simd reduction(+:r24[1:2])
+  #pragma omp taskloop simd reduction(+:r24[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r24[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r25 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r25 \\+ 4" "gimple" } } */
-  #pragma omp teams distribute reduction(+:r25[1:2])
+  #pragma omp teams distribute reduction(+:r25[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r25[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r26 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r26 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r26 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r26 \\+ 4" "gimple" } } *//* FIXME.  */
-  #pragma omp teams distribute parallel for reduction(+:r26[1:2])
+  #pragma omp teams distribute parallel for reduction(+:r26[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r26[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r27 \\+ 4" "gimple" } } */
@@ -199,13 +199,13 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r27 \\+ 4" "gimple" } } *//* FIXME: This should be on for instead.  */
   /* { dg-final { scan-tree-dump-not "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r27 \\+ 4" "gimple" } } *//* FIXME.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r27 \\+ 4" "gimple" } } */
-  #pragma omp teams distribute parallel for simd reduction(+:r27[1:2])
+  #pragma omp teams distribute parallel for simd reduction(+:r27[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r27[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r28 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump-not "omp distribute\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r28 \\+ 4" "gimple" } } */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r28 \\+ 4" "gimple" } } */
-  #pragma omp teams distribute simd reduction(+:r28[1:2])
+  #pragma omp teams distribute simd reduction(+:r28[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r28[1]++;
   /* { dg-final { scan-tree-dump "omp teams\[^\n\r]*shared\\(r29\\)" "gimple" } } */
@@ -213,7 +213,7 @@ bar (void)
   /* { dg-final { scan-tree-dump "omp parallel\[^\n\r]*shared\\(r29\\)" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp for\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r29 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
   /* { dg-final { scan-tree-dump "omp simd\[^\n\r]*reduction\\(\\+:MEM\[^\n\r]*&r29 \\+ 4" "gimple" } } *//* NOTE: This is implementation detail.  */
-  #pragma omp teams loop reduction(+:r29[1:2])
+  #pragma omp teams loop reduction(+:r29[1:2]) default(none)
   for (int i = 0; i < 64; i++)
     r29[1]++;
 }