On Thu, Nov 03, 2022 at 02:35:03PM +0100, Tobias Burnus wrote:
> On 03.11.22 13:44, Jakub Jelinek wrote:
> > [...]
> > Otherwise LGTM, assuming it actually works correctly.
> >
> > I don't remember support for non-contiguous copying to/from devices
> > being actually added, [...] And I think it is not ok to copy bytes
> > that aren't requested to be copied.
>
> I have now removed that stride support and only kept the bug fix and the
> DT component parts of the patch.
>
> The only code change is to remove the stride check disabling in
> openmp.cc and in one testcase, to remove the stride part.
>
> I will commit it as attached, unless there are further comments (or the
> just started reg testing shows that something does not work).
>
> Tobias
>
> PS: For strides, I now filed: PR middle-end/107517 "[OpenMP][5.0]
> 'target update' with strides — for C/C++ and Fortran"
> https://gcc.gnu.org/PR107517
> -----------------
> Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634
> München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas
> Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht
> München, HRB 106955
> OpenMP/Fortran: 'target update' with DT components
>
> OpenMP 5.0 permits to use arrays with derived type components for the list
> items to the 'from'/'to' clauses of the 'target update' directive.
>
> gcc/fortran/ChangeLog:
>
> * openmp.cc (gfc_match_omp_clauses): Permit derived types for
> the 'to' and 'from' clauses of 'target update'.
> * trans-openmp.cc (gfc_trans_omp_clauses): Fixes for
> derived-type changes; fix size for scalars.
>
> libgomp/ChangeLog:
>
> * testsuite/libgomp.fortran/target-11.f90: New test.
> * testsuite/libgomp.fortran/target-13.f90: New test.
LGTM, thanks.
Jakub