[all-commits] [llvm/llvm-project] 2b78c6: [flang] add API to copy and update descriptors for...

jeanPerier via All-commits all-commits at lists.llvm.org
Mon May 27 01:32:55 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2b78c641525b7cea9dec8125b7f5cd06d7ce8fff
      https://github.com/llvm/llvm-project/commit/2b78c641525b7cea9dec8125b7f5cd06d7ce8fff
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-05-27 (Mon, 27 May 2024)

  Changed paths:
    M flang/include/flang/Runtime/support.h
    M flang/runtime/support.cpp
    M flang/unittests/Runtime/CMakeLists.txt
    A flang/unittests/Runtime/Support.cpp

  Log Message:
  -----------
  [flang] add API to copy and update descriptors for assumed ranks (#93305)

When passing assumed-rank around, the lower bounds, dynamic type and
attribute must sometimes be updated to match the dummy attributes. See
https://github.com/llvm/llvm-project/blob/main/flang/docs/AssumedRank.md#annex-1---descriptor-temporary-for-the-dummy-arguments
for more details.

Doing it inline would require generating many instructions and block CFG
at the LLVM IR dialect level in codegen. Go for a simple runtime API
instead.
A matching fir.rebox_assumed_rank operation will be created and will
allow for easier future optimizations when inlining is done in FIR.



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