[flang-commits] [PATCH] D156760: [flang][runtime] Recognize and handle FINAL subroutines with contiguous dummy arrays when data are not so
Peter Klausler via Phabricator via flang-commits
flang-commits at lists.llvm.org
Mon Jul 31 16:16:30 PDT 2023
klausler created this revision.
klausler added a reviewer: vzakhari.
klausler added a project: Flang.
Herald added subscribers: sunshaoce, jdoerfert.
Herald added a project: All.
klausler requested review of this revision.
When a FINAL subroutine is being invoked for a discontiguous array, which can
happen for INTENT(OUT) dummy arguments and for some left-hand side variables
in intrinsic assignment statements, it may be the case that the subroutine
being called was defined with a dummy argument that requires contiguous data.
Extend the derived type descriptions used by the runtime to signify when
a special procedure binding requires contiguity; set the flags accordingly;
check them in the runtime support library, and, when necessary, use a
temporary shallow copy of the finalized array data in the call to the
final subroutine.
https://reviews.llvm.org/D156760
Files:
flang/include/flang/Runtime/descriptor.h
flang/lib/Semantics/runtime-type-info.cpp
flang/module/__fortran_type_info.f90
flang/runtime/allocatable.cpp
flang/runtime/assign.cpp
flang/runtime/derived-api.cpp
flang/runtime/derived.cpp
flang/runtime/derived.h
flang/runtime/descriptor-io.h
flang/runtime/descriptor.cpp
flang/runtime/pointer.cpp
flang/runtime/tools.cpp
flang/runtime/tools.h
flang/runtime/type-info.cpp
flang/runtime/type-info.h
flang/test/Semantics/typeinfo01.f90
flang/test/Semantics/typeinfo02.f90
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D156760.545855.patch
Type: text/x-patch
Size: 34435 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/flang-commits/attachments/20230731/4079eaae/attachment-0001.bin>
More information about the flang-commits
mailing list