[all-commits] [llvm/llvm-project] e3d6a3: [flang][runtime] Support non contiguous array in F...
jeanPerier via All-commits
all-commits at lists.llvm.org
Mon Sep 25 09:17:07 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: e3d6a3ac6925862f5829e4883942be9eec591164
https://github.com/llvm/llvm-project/commit/e3d6a3ac6925862f5829e4883942be9eec591164
Author: jeanPerier <jperier at nvidia.com>
Date: 2023-09-25 (Mon, 25 Sep 2023)
Changed paths:
M flang/include/flang/Runtime/descriptor.h
M flang/runtime/derived.cpp
Log Message:
-----------
[flang][runtime] Support non contiguous array in Finalize/Initialize (#67295)
Finalize/Initialize may be called on non contiguous arrays when dealing
with INTENT(OUT) dummies or non contiguous LHS. Update the related
element access to use indices instead of assuming contiguity and
manually computing the byte offset.
Also, the descriptor passed to parent type final routines should be set
to the parent type, otherwise descriptor.IsContiguous() may wrongfully
return true when finalizing parent components. Create a pointer to the
parent component when recursing in Finalize.
More information about the All-commits
mailing list