[PATCH 0/3] OpenACC "exit data" copyout, and Fortran derived-type members

Julian Brown julian@codesourcery.com
Thu Jun 4 13:40:52 GMT 2020


This is a split version of the patch previously posted here:

  https://gcc.gnu.org/legacy-ml/gcc-patches/2020-01/msg00512.html

There were actually a couple of different issues addressed by that patch,
and Thomas raised another (or so).  This separated-out version should
be more-obviously safe (in terms of maintaining backwards compatibility,
where that makes sense).  Further commentary on individual patches.

Tested (as a series) with offloading to NVPTX. OK?

Julian

Julian Brown (3):
  OpenACC "exit data" copyout for struct members
  Strip GOMP_MAP_STRUCT from OpenACC exit data mappings
  Fortran derived-type mapping fix

 gcc/fortran/trans-openmp.c                    |  4 +-
 gcc/gimplify.c                                |  3 +-
 .../goacc/struct-enter-exit-data-1.c          | 35 +++++++++++++++
 .../gfortran.dg/goacc/mapping-tests-3.f90     | 15 +++++++
 .../gfortran.dg/goacc/mapping-tests-4.f90     | 17 +++++++
 libgomp/oacc-mem.c                            | 32 --------------
 .../struct-copyout-1.c                        | 38 ++++++++++++++++
 .../struct-copyout-2.c                        | 44 +++++++++++++++++++
 8 files changed, 153 insertions(+), 35 deletions(-)
 create mode 100644 gcc/testsuite/c-c++-common/goacc/struct-enter-exit-data-1.c
 create mode 100644 gcc/testsuite/gfortran.dg/goacc/mapping-tests-3.f90
 create mode 100644 gcc/testsuite/gfortran.dg/goacc/mapping-tests-4.f90
 create mode 100644 libgomp/testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c
 create mode 100644 libgomp/testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c

-- 
2.23.0



More information about the Gcc-patches mailing list