public inbox for fortran@gcc.gnu.org
 help / color / mirror / Atom feed
From: Julian Brown <julian@codesourcery.com>
To: <gcc-patches@gcc.gnu.org>
Cc: Chung-Lin Tang <cltang@codesourcery.com>,
	Jakub Jelinek <jakub@redhat.com>,
	Thomas Schwinge <thomas@codesourcery.com>, <fortran@gcc.gnu.org>,
	Tobias Burnus <tobias@codesourcery.com>
Subject: [PATCH 0/7] [og10] OpenACC/OpenMP: Rework struct component handling
Date: Tue, 11 May 2021 01:56:30 -0700	[thread overview]
Message-ID: <cover.1620721888.git.julian@codesourcery.com> (raw)

Hi,

This patch series reworks how indirect struct (or class or derived-type)
component mappings are lowered for OpenMP and OpenACC.  The series is
currently based on the og10 branch, but I'm planning to rebase it to
trunk and repost soon.

Currently on og10, there are some conflicts with Chung-Lin's recent
work to support indirect struct component mapping and (particularly) C++
lambdas for OpenMP -- some of those conflicts are addressed by this
patch series, but some still need attention.  There are a couple of
regressions (see the last patch in the series) so the whole series isn't
quite ready for og10 yet.  Hopefully posting now will help us resolve
those last bits!

The first two patches in the series have been tested by themselves
however, and those ones do *not* cause regressions. If it seems helpful,
I can commit those now.

Julian

Julian Brown (7):
  [og10] Unify ARRAY_REF/INDIRECT_REF stripping code in
    extract_base_bit_offset
  [og10] Refactor struct lowering for OpenMP/OpenACC in gimplify.c
  [og10] Revert gimplify.c parts of "Fix template case of non-static
    member access inside member functions"
  [og10] Revert gimplify.c parts of "Arrow operator handling for C
    front-end in OpenMP map clauses"
  [og10] Rewrite GOMP_MAP_ATTACH_DETACH mappings for OpenMP also
  [og10] Rework indirect struct handling for OpenACC/OpenMP in
    gimplify.c
  [og10] WIP GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION changes

 gcc/fortran/trans-openmp.c                    |   20 +-
 gcc/gimplify.c                                | 1178 ++++++++++-------
 gcc/omp-low.c                                 |   16 +-
 gcc/testsuite/g++.dg/goacc/member-array-acc.C |   13 +
 gcc/testsuite/g++.dg/gomp/member-array-omp.C  |   13 +
 gcc/testsuite/g++.dg/gomp/target-3.C          |    4 +-
 gcc/testsuite/g++.dg/gomp/target-this-2.C     |    2 +-
 .../libgomp.oacc-c-c++-common/deep-copy-15.c  |   68 +
 .../libgomp.oacc-c-c++-common/deep-copy-16.c  |   95 ++
 9 files changed, 921 insertions(+), 488 deletions(-)
 create mode 100644 gcc/testsuite/g++.dg/goacc/member-array-acc.C
 create mode 100644 gcc/testsuite/g++.dg/gomp/member-array-omp.C
 create mode 100644 libgomp/testsuite/libgomp.oacc-c-c++-common/deep-copy-15.c
 create mode 100644 libgomp/testsuite/libgomp.oacc-c-c++-common/deep-copy-16.c

-- 
2.29.2


             reply	other threads:[~2021-05-11  8:56 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-11  8:56 Julian Brown [this message]
2021-05-11  8:56 ` [PATCH 1/7] [og10] Unify ARRAY_REF/INDIRECT_REF stripping code in extract_base_bit_offset Julian Brown
2021-05-11  8:56 ` [PATCH 2/7] [og10] Refactor struct lowering for OpenMP/OpenACC in gimplify.c Julian Brown
2021-05-11  8:56 ` [PATCH 3/7] [og10] Revert gimplify.c parts of "Fix template case of non-static member access inside member functions" Julian Brown
2021-05-11  8:56 ` [PATCH 4/7] [og10] Revert gimplify.c parts of "Arrow operator handling for C front-end in OpenMP map clauses" Julian Brown
2021-05-11  8:57 ` [PATCH 5/7] [og10] Rewrite GOMP_MAP_ATTACH_DETACH mappings for OpenMP also Julian Brown
2021-05-11  8:57 ` [PATCH 6/7] [og10] Rework indirect struct handling for OpenACC/OpenMP in gimplify.c Julian Brown
2021-05-11  8:57 ` [PATCH 7/7] [og10] WIP GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION changes Julian Brown
2021-05-17 13:14   ` Chung-Lin Tang
2021-05-17 14:26     ` Julian Brown
2021-05-18 11:13       ` Chung-Lin Tang

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=cover.1620721888.git.julian@codesourcery.com \
    --to=julian@codesourcery.com \
    --cc=cltang@codesourcery.com \
    --cc=fortran@gcc.gnu.org \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=jakub@redhat.com \
    --cc=thomas@codesourcery.com \
    --cc=tobias@codesourcery.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).