]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testsuite: Fix up gfortran.dg/gomp/strictly*.f90 testcases
authorJakub Jelinek <jakub@redhat.com>
Thu, 21 Oct 2021 09:12:55 +0000 (11:12 +0200)
committerJakub Jelinek <jakub@redhat.com>
Thu, 21 Oct 2021 09:17:57 +0000 (11:17 +0200)
While these testcases are dg-do compile only, I think it is better not to
give users bad examples and avoid unnecessary data races in testcases (unless
it is exactly what we want to test).  Perhaps one day we'll do some analysis
and warn about data races...

2021-10-21  Jakub Jelinek  <jakub@redhat.com>

* gfortran.dg/gomp/strictly-structured-block-1.f90: Use call do_work
instead of x = x + 1 in places where the latter could be a data race.
* gfortran.dg/gomp/strictly-structured-block-2.f90: Likewise.
* gfortran.dg/gomp/strictly-structured-block-3.f90: Likewise.

gcc/testsuite/gfortran.dg/gomp/strictly-structured-block-1.f90
gcc/testsuite/gfortran.dg/gomp/strictly-structured-block-2.f90
gcc/testsuite/gfortran.dg/gomp/strictly-structured-block-3.f90

index 00a018c6145805c733984811ea8398f11bd733ed..ef8507eb7f019bd27b1e3687f909873aaa2d6c52 100644 (file)
@@ -9,23 +9,23 @@ program main
 
   !$omp parallel
   block
-    x = x + 1
+    call do_work
   end block
 
   !$omp parallel
   block
-    x = x + 1
+    call do_work
   end block
   !$omp end parallel
 
   !$omp teams
   block
-    x = x + 1
+    call do_work
   end block
 
   !$omp teams
   block
-    x = x + 1
+    call do_work
   end block
   !$omp end teams
 
@@ -42,12 +42,12 @@ program main
 
   !$omp scope
   block
-    x = x + 1
+    call do_work
   end block
 
   !$omp scope
   block
-    x = x + 1
+    call do_work
   end block
   !$omp end scope
 
@@ -75,12 +75,12 @@ program main
 
   !$omp task
   block
-    x = x + 1
+    call do_work
   end block
 
   !$omp task
   block
-    x = x + 1
+    call do_work
   end block
   !$omp end task
 
@@ -130,23 +130,23 @@ program main
 
   !$omp target parallel
   block
-    x = x + 1
+    call do_work
   end block
 
   !$omp target parallel
   block
-    x = x + 1
+    call do_work
   end block
   !$omp end target parallel
 
   !$omp target teams
   block
-    x = x + 1
+    call do_work
   end block
 
   !$omp target teams
   block
-    x = x + 1
+    call do_work
   end block
   !$omp end target teams
 
@@ -176,7 +176,7 @@ program main
   do i = 1, n
      !$omp ordered
      block
-       x = x + 1
+       call do_work
      end block
   end do
 
@@ -184,7 +184,7 @@ program main
   do i = 1, n
      !$omp ordered
      block
-       x = x + 1
+       call do_work
      end block
      !$omp end ordered
   end do
index a99616980c05b4f7b5dff2fd97f9755472a67d33..ad4d08a1d49574da774b96338c56afcacd3b38dd 100644 (file)
@@ -9,16 +9,16 @@ program main
 
   !$omp parallel
   block
-    x = x + 1
+    call do_work
   end block
-  x = x + 1
+  call do_work
   !$omp end parallel ! { dg-error "Unexpected !.OMP END PARALLEL statement" }
 
   !$omp teams
   block
-    x = x + 1
+    call do_work
   end block
-  x = x + 1
+  call do_work
   !$omp end teams ! { dg-error "Unexpected !.OMP END TEAMS statement" }
 
   !$omp masked
@@ -30,9 +30,9 @@ program main
 
   !$omp scope
   block
-    x = x + 1
+    call do_work
   end block
-  x = x + 1
+  call do_work
   !$omp end scope ! { dg-error "Unexpected !.OMP END SCOPE statement" }
 
   !$omp single
@@ -51,9 +51,9 @@ program main
 
   !$omp task
   block
-    x = x + 1
+    call do_work
   end block
-  x = x + 1
+  call do_work
   !$omp end task ! { dg-error "Unexpected !.OMP END TASK statement" }
 
   !$omp target data map(x)
@@ -86,16 +86,16 @@ program main
 
   !$omp target parallel
   block
-    x = x + 1
+    call do_work
   end block
-  x = x + 1
+  call do_work
   !$omp end target parallel ! { dg-error "Unexpected !.OMP END TARGET PARALLEL statement" }
 
   !$omp target teams
   block
-    x = x + 1
+    call do_work
   end block
-  x = x + 1
+  call do_work
   !$omp end target teams ! { dg-error "Unexpected !.OMP END TARGET TEAMS statement" }
 
   !$omp critical
@@ -116,9 +116,9 @@ program main
   do i = 1, n
      !$omp ordered
      block
-       x = x + 1
+       call do_work
      end block
-     x = x + 1
+     call do_work
      !$omp end ordered ! { dg-error "Unexpected !.OMP END ORDERED statement" }
   end do
 
index f9c76d641204fe74d6bb0500de33bde68ed18f9c..ae85fa0864386d8b167a3ae4fac17c7b921a1074 100644 (file)
@@ -10,7 +10,7 @@ program main
   !$omp parallel
     !$omp parallel
     block
-      x = x + 1
+      call do_work
     end block
     !$omp end parallel
   !$omp end parallel
@@ -32,7 +32,7 @@ program main
     end block
     x = x + 2
     !$omp section
-    x = x + 4
+    call do_work
   end block
 
   !$omp sections