[all-commits] [llvm/llvm-project] 2c91f1: [flang] Fixed repacking for TARGET and INTENT(OUT)...

Slava Zakharin via All-commits all-commits at lists.llvm.org
Wed Mar 19 17:12:53 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2c91f10362502ebfb464691cdde1ba05be7cb50e
      https://github.com/llvm/llvm-project/commit/2c91f10362502ebfb464691cdde1ba05be7cb50e
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/docs/ArrayRepacking.md
    M flang/lib/Lower/ConvertVariable.cpp
    A flang/test/Lower/repack-arrays-asynchronous.f90
    A flang/test/Lower/repack-arrays-finalized-dummy.f90
    A flang/test/Lower/repack-arrays-target.f90

  Log Message:
  -----------
  [flang] Fixed repacking for TARGET and INTENT(OUT) (#131972)

TARGET dummy arrays can be accessed indirectly, so it is unsafe
to repack them.
INTENT(OUT) dummy arrays that require finalization on entry
to their subroutine must be copied-in by `fir.pack_arrays`.

In addition, based on my testing results, I think it will be useful
to document that `LOC` and `IS_CONTIGUOUS` will have different values
for the repacked arrays. I still need to decide where to document
this, so just added a note in the design doc for the time being.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list