From: Thomas Schwinge <thomas@codesourcery.com>
To: Jakub Jelinek <jakub@redhat.com>, <gcc-patches@gcc.gnu.org>
Cc: Kirill Yukhin <kirill.yukhin@gmail.com>, Ilya Verbin <iverbin@gmail.com>
Subject: Re: [gomp4.1] map clause parsing improvements
Date: Thu, 17 Mar 2016 14:34:00 -0000 [thread overview]
Message-ID: <877fh1tbq6.fsf@kepler.schwinge.homeip.net> (raw)
In-Reply-To: <20151019103408.GP478@tucnak.redhat.com>
[-- Attachment #1: Type: text/plain, Size: 8074 bytes --]
Hi!
On Mon, 19 Oct 2015 12:34:08 +0200, Jakub Jelinek <jakub@redhat.com> wrote:
> On Mon, Oct 19, 2015 at 12:20:23PM +0200, Thomas Schwinge wrote:
> > > @@ -77,7 +79,21 @@ enum gomp_map_kind
> > > + /* OpenMP 4.1 alias for forced deallocation. */
> > > + GOMP_MAP_DELETE = GOMP_MAP_FORCE_DEALLOC,
> >
> > To avoid confusion about two different identifiers naming the same
> > functionality, I'd prefer to avoid such aliases ("GOMP_MAP_DELETE =
> > GOMP_MAP_FORCE_DEALLOC"), and instead just rename GOMP_MAP_FORCE_DEALLOC
> > to GOMP_MAP_DELETE, if that's the name you prefer.
>
> If you are ok with removing GOMP_MAP_FORCE_DEALLOC and just use
> GOMP_MAP_DELETE, that is ok by me, just post a patch.
That's simple enouch; OK to commit? (I'm also including the related
change, to rename the Fortran OMP_MAP_FORCE_DEALLOC to OMP_MAP_DELETE,
because I think that's what you'd do, once starting the OpenMP 4.5
Fortran front end work.)
commit d60e36a2a935a9319602221360b1a6abf282f434
Author: Thomas Schwinge <thomas@codesourcery.com>
Date: Wed Mar 16 18:10:26 2016 +0100
Rename GOMP_MAP_FORCE_DEALLOC to GOMP_MAP_DELETE
Also rename the Fortran OMP_MAP_FORCE_DEALLOC to OMP_MAP_DELETE.
include/
* gomp-constants.h (enum gomp_map_kind): Rename
GOMP_MAP_FORCE_DEALLOC to GOMP_MAP_DELETE. Adjust all users.
gcc/fortran/
* gfortran.h (enum gfc_omp_map_op): Rename OMP_MAP_FORCE_DEALLOC
to OMP_MAP_DELETE. Adjust all users.
---
gcc/c/c-parser.c | 2 +-
gcc/cp/parser.c | 2 +-
gcc/fortran/gfortran.h | 2 +-
gcc/fortran/openmp.c | 2 +-
gcc/fortran/trans-openmp.c | 6 +++---
gcc/gimplify.c | 2 +-
gcc/omp-low.c | 2 +-
gcc/tree-pretty-print.c | 2 +-
include/gomp-constants.h | 6 ++----
libgomp/oacc-parallel.c | 6 +++---
10 files changed, 15 insertions(+), 17 deletions(-)
diff --git gcc/c/c-parser.c gcc/c/c-parser.c
index 60ec996..82d6eca 100644
--- gcc/c/c-parser.c
+++ gcc/c/c-parser.c
@@ -10715,7 +10715,7 @@ c_parser_oacc_data_clause (c_parser *parser, pragma_omp_clause c_kind,
kind = GOMP_MAP_FORCE_ALLOC;
break;
case PRAGMA_OACC_CLAUSE_DELETE:
- kind = GOMP_MAP_FORCE_DEALLOC;
+ kind = GOMP_MAP_DELETE;
break;
case PRAGMA_OACC_CLAUSE_DEVICE:
kind = GOMP_MAP_FORCE_TO;
diff --git gcc/cp/parser.c gcc/cp/parser.c
index 62570d4..8ba4ffe 100644
--- gcc/cp/parser.c
+++ gcc/cp/parser.c
@@ -30086,7 +30086,7 @@ cp_parser_oacc_data_clause (cp_parser *parser, pragma_omp_clause c_kind,
kind = GOMP_MAP_FORCE_ALLOC;
break;
case PRAGMA_OACC_CLAUSE_DELETE:
- kind = GOMP_MAP_FORCE_DEALLOC;
+ kind = GOMP_MAP_DELETE;
break;
case PRAGMA_OACC_CLAUSE_DEVICE:
kind = GOMP_MAP_FORCE_TO;
diff --git gcc/fortran/gfortran.h gcc/fortran/gfortran.h
index 33fffd8..a0fb5fd 100644
--- gcc/fortran/gfortran.h
+++ gcc/fortran/gfortran.h
@@ -1112,8 +1112,8 @@ enum gfc_omp_map_op
OMP_MAP_TO,
OMP_MAP_FROM,
OMP_MAP_TOFROM,
+ OMP_MAP_DELETE,
OMP_MAP_FORCE_ALLOC,
- OMP_MAP_FORCE_DEALLOC,
OMP_MAP_FORCE_TO,
OMP_MAP_FORCE_FROM,
OMP_MAP_FORCE_TOFROM,
diff --git gcc/fortran/openmp.c gcc/fortran/openmp.c
index 51ab96e..a6c39cd 100644
--- gcc/fortran/openmp.c
+++ gcc/fortran/openmp.c
@@ -764,7 +764,7 @@ 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_FORCE_DEALLOC))
+ OMP_MAP_DELETE))
continue;
if ((mask & OMP_CLAUSE_PRESENT)
&& gfc_match ("present ( ") == MATCH_YES
diff --git gcc/fortran/trans-openmp.c gcc/fortran/trans-openmp.c
index 5990202..a905ca6 100644
--- gcc/fortran/trans-openmp.c
+++ gcc/fortran/trans-openmp.c
@@ -2119,12 +2119,12 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses,
case OMP_MAP_TOFROM:
OMP_CLAUSE_SET_MAP_KIND (node, GOMP_MAP_TOFROM);
break;
+ case OMP_MAP_DELETE:
+ OMP_CLAUSE_SET_MAP_KIND (node, GOMP_MAP_DELETE);
+ break;
case OMP_MAP_FORCE_ALLOC:
OMP_CLAUSE_SET_MAP_KIND (node, GOMP_MAP_FORCE_ALLOC);
break;
- case OMP_MAP_FORCE_DEALLOC:
- OMP_CLAUSE_SET_MAP_KIND (node, GOMP_MAP_FORCE_DEALLOC);
- break;
case OMP_MAP_FORCE_TO:
OMP_CLAUSE_SET_MAP_KIND (node, GOMP_MAP_FORCE_TO);
break;
diff --git gcc/gimplify.c gcc/gimplify.c
index f3e5c39..3687e7a 100644
--- gcc/gimplify.c
+++ gcc/gimplify.c
@@ -8194,7 +8194,7 @@ gimplify_oacc_declare_1 (tree clause)
case GOMP_MAP_ALLOC:
case GOMP_MAP_FORCE_ALLOC:
case GOMP_MAP_FORCE_TO:
- new_op = GOMP_MAP_FORCE_DEALLOC;
+ new_op = GOMP_MAP_DELETE;
ret = true;
break;
diff --git gcc/omp-low.c gcc/omp-low.c
index 82dec9d..3fd6eb3 100644
--- gcc/omp-low.c
+++ gcc/omp-low.c
@@ -15746,7 +15746,7 @@ lower_omp_target (gimple_stmt_iterator *gsi_p, omp_context *ctx)
case GOMP_MAP_TOFROM:
case GOMP_MAP_POINTER:
case GOMP_MAP_TO_PSET:
- case GOMP_MAP_FORCE_DEALLOC:
+ case GOMP_MAP_DELETE:
case GOMP_MAP_RELEASE:
case GOMP_MAP_ALWAYS_TO:
case GOMP_MAP_ALWAYS_FROM:
diff --git gcc/tree-pretty-print.c gcc/tree-pretty-print.c
index 9c13d84..39e3691 100644
--- gcc/tree-pretty-print.c
+++ gcc/tree-pretty-print.c
@@ -621,7 +621,7 @@ dump_omp_clause (pretty_printer *pp, tree clause, int spc, int flags)
case GOMP_MAP_FORCE_PRESENT:
pp_string (pp, "force_present");
break;
- case GOMP_MAP_FORCE_DEALLOC:
+ case GOMP_MAP_DELETE:
pp_string (pp, "delete");
break;
case GOMP_MAP_FORCE_DEVICEPTR:
diff --git include/gomp-constants.h include/gomp-constants.h
index a8e7723..e31c2e0 100644
--- include/gomp-constants.h
+++ include/gomp-constants.h
@@ -67,7 +67,7 @@ enum gomp_map_kind
/* Must already be present. */
GOMP_MAP_FORCE_PRESENT = (GOMP_MAP_FLAG_SPECIAL_0 | 2),
/* Deallocate a mapping, without copying from device. */
- GOMP_MAP_FORCE_DEALLOC = (GOMP_MAP_FLAG_SPECIAL_0 | 3),
+ GOMP_MAP_DELETE = (GOMP_MAP_FLAG_SPECIAL_0 | 3),
/* Is a device pointer. OMP_CLAUSE_SIZE for these is unused; is implicitly
POINTER_SIZE_UNITS. */
GOMP_MAP_FORCE_DEVICEPTR = (GOMP_MAP_FLAG_SPECIAL_1 | 0),
@@ -125,11 +125,9 @@ enum gomp_map_kind
GOMP_MAP_DELETE_ZERO_LEN_ARRAY_SECTION
= (GOMP_MAP_FLAG_SPECIAL_2
| GOMP_MAP_FLAG_SPECIAL | 3),
- /* OpenMP 4.5 alias for forced deallocation. */
- GOMP_MAP_DELETE = GOMP_MAP_FORCE_DEALLOC,
/* Decrement usage count and deallocate if zero. */
GOMP_MAP_RELEASE = (GOMP_MAP_FLAG_SPECIAL_2
- | GOMP_MAP_FORCE_DEALLOC),
+ | GOMP_MAP_DELETE),
/* Internal to GCC, not used in libgomp. */
/* Do not map, but pointer assign a pointer instead. */
diff --git libgomp/oacc-parallel.c libgomp/oacc-parallel.c
index f795bf7..1fdb01d 100644
--- libgomp/oacc-parallel.c
+++ libgomp/oacc-parallel.c
@@ -307,7 +307,7 @@ GOACC_enter_exit_data (int device, size_t mapnum,
break;
}
- if (kind == GOMP_MAP_FORCE_DEALLOC
+ if (kind == GOMP_MAP_DELETE
|| kind == GOMP_MAP_FORCE_FROM)
break;
@@ -374,7 +374,7 @@ GOACC_enter_exit_data (int device, size_t mapnum,
== GOMP_MAP_FORCE_FROM,
async, 1);
break;
- case GOMP_MAP_FORCE_DEALLOC:
+ case GOMP_MAP_DELETE:
acc_delete (hostaddrs[i], sizes[i]);
break;
case GOMP_MAP_FORCE_FROM:
@@ -522,10 +522,10 @@ GOACC_declare (int device, size_t mapnum,
switch (kind)
{
case GOMP_MAP_FORCE_ALLOC:
- case GOMP_MAP_FORCE_DEALLOC:
case GOMP_MAP_FORCE_FROM:
case GOMP_MAP_FORCE_TO:
case GOMP_MAP_POINTER:
+ case GOMP_MAP_DELETE:
GOACC_enter_exit_data (device, 1, &hostaddrs[i], &sizes[i],
&kinds[i], 0, 0);
break;
Grüße
Thomas
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 472 bytes --]
next prev parent reply other threads:[~2016-03-17 14:34 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-29 11:44 [gomp4.1] Initial support for some OpenMP 4.1 construct parsing Jakub Jelinek
2015-04-29 11:55 ` Thomas Schwinge
2015-04-29 12:31 ` Jakub Jelinek
2015-04-29 15:20 ` Thomas Schwinge
2015-06-09 18:39 ` Ilya Verbin
2015-06-09 20:25 ` Jakub Jelinek
2015-06-25 19:47 ` Ilya Verbin
2015-06-25 20:31 ` Jakub Jelinek
2015-07-17 16:47 ` Ilya Verbin
2015-07-17 16:54 ` Jakub Jelinek
2015-07-20 16:18 ` Jakub Jelinek
2015-07-20 18:31 ` Jakub Jelinek
2015-07-23 0:50 ` Jakub Jelinek
2015-07-24 20:33 ` Jakub Jelinek
2015-07-29 17:30 ` [gomp4.1] Various accelerator updates from OpenMP 4.1 Jakub Jelinek
2015-09-04 18:17 ` Ilya Verbin
2015-09-04 18:25 ` Jakub Jelinek
2015-09-07 12:48 ` Jakub Jelinek
2015-07-20 19:40 ` [gomp4.1] Initial support for some OpenMP 4.1 construct parsing Ilya Verbin
2015-08-24 12:38 ` Jakub Jelinek
2015-08-24 19:10 ` Ilya Verbin
2015-06-11 12:52 ` [gomp4.1] map clause parsing improvements Jakub Jelinek
2015-10-19 10:34 ` Thomas Schwinge
2015-10-19 10:46 ` Jakub Jelinek
2015-10-19 15:14 ` Thomas Schwinge
2015-10-20 10:10 ` Jakub Jelinek
2015-10-26 13:04 ` Ilya Verbin
2015-10-26 13:17 ` Jakub Jelinek
2015-10-26 14:16 ` Ilya Verbin
2016-03-17 14:34 ` Thomas Schwinge [this message]
2016-03-17 14:37 ` Jakub Jelinek
2016-03-17 14:55 ` Jakub Jelinek
2016-03-17 15:13 ` Rename GOMP_MAP_FORCE_DEALLOC to GOMP_MAP_DELETE (was: [gomp4.1] map clause parsing improvements) Thomas Schwinge
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=877fh1tbq6.fsf@kepler.schwinge.homeip.net \
--to=thomas@codesourcery.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=iverbin@gmail.com \
--cc=jakub@redhat.com \
--cc=kirill.yukhin@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).