]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Fortran/OpenMP: Add missing EXEC_OMP_DEPOBJ case val [PR100642]
authorTobias Burnus <tobias@codesourcery.com>
Tue, 18 May 2021 18:14:42 +0000 (20:14 +0200)
committerTobias Burnus <tobias@codesourcery.com>
Tue, 18 May 2021 18:14:42 +0000 (20:14 +0200)
PR fortran/100642

gcc/fortran/ChangeLog:

* openmp.c (omp_code_to_statement): Add missing EXEC_OMP_DEPOBJ.

gcc/testsuite/ChangeLog:

* gfortran.dg/goacc-gomp/depobj.f90: New test.

(cherry picked from commit cc193ac840d58ee0ffb57b14b542706cde3db0e7)

gcc/fortran/ChangeLog.omp
gcc/fortran/openmp.c
gcc/testsuite/ChangeLog.omp
gcc/testsuite/gfortran.dg/goacc-gomp/depobj.f90 [new file with mode: 0644]

index dcf88c28a9fc2e8ec13e3950666a2a8179d77744..f59fea039c03553cd013ee1d437ab524f58d1010 100644 (file)
@@ -1,3 +1,11 @@
+2021-05-18  Tobias Burnus  <tobias@codesourcery.com>
+
+       Backported from master:
+       2021-05-18  Tobias Burnus  <tobias@codesourcery.com>
+
+       PR fortran/100642
+       * openmp.c (omp_code_to_statement): Add missing EXEC_OMP_DEPOBJ.
+
 2021-05-17  Tobias Burnus  <tobias@codesourcery.com>
 
        Backported from master:
index e17cdf5707697a0937400c783a863f0306acb8d1..eaddca5212b9d797fcfbe86ca758f58c4010a016 100644 (file)
@@ -6939,7 +6939,8 @@ omp_code_to_statement (gfc_code *code)
       return ST_OMP_PARALLEL_DO;
     case EXEC_OMP_PARALLEL_DO_SIMD:
       return ST_OMP_PARALLEL_DO_SIMD;
-
+    case EXEC_OMP_DEPOBJ:
+      return ST_OMP_DEPOBJ;
     default:
       gcc_unreachable ();
     }
index ac4146b2d74a7113493ba3e1a9f28b0d6d8f97d1..5a90ab78ca591c6ad65fd23a3cabe442dd4e8976 100644 (file)
@@ -1,3 +1,11 @@
+2021-05-18  Tobias Burnus  <tobias@codesourcery.com>
+
+       Backported from master:
+       2021-05-18  Tobias Burnus  <tobias@codesourcery.com>
+
+       PR fortran/100642
+       * gfortran.dg/goacc-gomp/depobj.f90: New test.
+
 2021-05-17  Tobias Burnus  <tobias@codesourcery.com>
 
        Backported from master:
diff --git a/gcc/testsuite/gfortran.dg/goacc-gomp/depobj.f90 b/gcc/testsuite/gfortran.dg/goacc-gomp/depobj.f90
new file mode 100644 (file)
index 0000000..e1c6830
--- /dev/null
@@ -0,0 +1,11 @@
+! PR fortran/100642
+! Contributed by G. Steinmetz
+program p
+   !use omp_lib, only: omp_depend_kind
+   use iso_c_binding, only: c_intptr_t
+   integer, parameter :: omp_depend_kind = 2*c_intptr_t
+   integer(omp_depend_kind) :: a, b
+   !$acc data
+   !$omp depobj(b) depend(out:a)  ! { dg-error "The !\\\$OMP DEPOBJ directive cannot be specified within a !\\\$ACC DATA region" }
+   !$acc end data
+end