diff mbox

[gomp4] backport misc OMP 4.5 changes from trunk

Message ID 871srnzp8a.fsf@euler.schwinge.homeip.net
State New
Headers show

Commit Message

Thomas Schwinge May 17, 2017, 11:39 a.m. UTC
Hi!

On Wed, 15 Mar 2017 07:21:26 -0700, Cesar Philippidis <cesar@codesourcery.com> wrote:
> This patch backports Jakub's Fortran OMP 4.5 changes to gomp-4_0-branch.
> The original patch may be found here
> <https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00930.html>. I've applied
> it to gomp-4_0-branch.

> --- a/gcc/fortran/openmp.c
> +++ b/gcc/fortran/openmp.c

> @@ -835,6 +1122,19 @@ gfc_match_omp_clauses (gfc_omp_clauses **cp, uint64_t mask,

> +	  if ((mask & OMP_CLAUSE_DELETE)
> +	      && gfc_match ("delete ( ") == MATCH_YES
> +	      && gfc_match_omp_map_clause (&c->lists[OMP_LIST_MAP],
> +					   OMP_MAP_DELETE, openacc,
> +					   allow_derived))
> +	    continue;

I noticed that in that backport, the handling of the OpenACC delete
clause (harmlessly) got duplicated.  Cleaned up on gomp-4_0-branch in
r248146:

commit 3463026a7bfd6e704454d3ce8489d3b6b5295ab5
Author: tschwinge <tschwinge@138bc75d-0d04-0410-961f-82ee72b054a4>
Date:   Wed May 17 11:37:00 2017 +0000

    Clean up handling of Fortran OpenACC delete clause
    
            gcc/fortran/
            * openmp.c (gfc_match_omp_clauses): Handle "OMP_CLAUSE_DELETE"
            just once.
    
    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@248146 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/fortran/ChangeLog.gomp | 5 +++++
 gcc/fortran/openmp.c       | 7 +------
 2 files changed, 6 insertions(+), 6 deletions(-)



Grüße
 Thomas
diff mbox

Patch

diff --git gcc/fortran/ChangeLog.gomp gcc/fortran/ChangeLog.gomp
index 0f7c5d2..03bc82e 100644
--- gcc/fortran/ChangeLog.gomp
+++ gcc/fortran/ChangeLog.gomp
@@ -1,3 +1,8 @@ 
+2017-05-17  Thomas Schwinge  <thomas@codesourcery.com>
+
+	* openmp.c (gfc_match_omp_clauses): Handle "OMP_CLAUSE_DELETE"
+	just once.
+
 2017-05-16  Chung-Lin Tang  <cltang@codesourcery.com>
 
 	* gfortran.h (struct gfc_omp_clauses): Add 'finalize:1' bitfield.
diff --git gcc/fortran/openmp.c gcc/fortran/openmp.c
index 1734b7c..0992f0a 100644
--- gcc/fortran/openmp.c
+++ gcc/fortran/openmp.c
@@ -1117,11 +1117,6 @@  gfc_match_omp_clauses (gfc_omp_clauses **cp, omp_mask mask,
 	    continue;
 	  break;
 	case 'd':
-	  if ((mask & OMP_CLAUSE_DELETE)
-	      && gfc_match ("delete ( ") == MATCH_YES
-	      && gfc_match_omp_map_clause (&c->lists[OMP_LIST_MAP],
-					   OMP_MAP_DELETE, true, allow_derived))
-	    continue;
 	  if ((mask & OMP_CLAUSE_DEFAULT)
 	      && c->default_sharing == OMP_DEFAULT_UNKNOWN)
 	    {
@@ -1154,7 +1149,7 @@  gfc_match_omp_clauses (gfc_omp_clauses **cp, omp_mask mask,
 	  if ((mask & OMP_CLAUSE_DELETE)
 	      && gfc_match ("delete ( ") == MATCH_YES
 	      && gfc_match_omp_map_clause (&c->lists[OMP_LIST_MAP],
-					   OMP_MAP_DELETE, openacc,
+					   OMP_MAP_DELETE, true,
 					   allow_derived))
 	    continue;
 	  if ((mask & OMP_CLAUSE_DEPEND)