public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH 0/7] [og10] OpenACC/OpenMP: Rework struct component handling
@ 2021-05-11  8:56 Julian Brown
  2021-05-11  8:56 ` [PATCH 1/7] [og10] Unify ARRAY_REF/INDIRECT_REF stripping code in extract_base_bit_offset Julian Brown
                   ` (6 more replies)
  0 siblings, 7 replies; 11+ messages in thread
From: Julian Brown @ 2021-05-11  8:56 UTC (permalink / raw)
  To: gcc-patches
  Cc: Chung-Lin Tang, Jakub Jelinek, Thomas Schwinge, fortran, Tobias Burnus

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


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2021-05-18 11:13 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-11  8:56 [PATCH 0/7] [og10] OpenACC/OpenMP: Rework struct component handling Julian Brown
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

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).