[all-commits] [llvm/llvm-project] a9e4bb: [flang][hlfir] Array constructor lowering [part 2/4]

jeanPerier via All-commits all-commits at lists.llvm.org
Thu Feb 16 06:21:34 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a9e4bb387b21ca2ef931778ff5015bd6c3278ad2
      https://github.com/llvm/llvm-project/commit/a9e4bb387b21ca2ef931778ff5015bd6c3278ad2
  Author: Jean Perier <jperier at nvidia.com>
  Date:   2023-02-16 (Thu, 16 Feb 2023)

  Changed paths:
    M flang/lib/Lower/ConvertArrayConstructor.cpp
    A flang/test/Lower/HLFIR/array-ctor-as-elemental.f90

  Log Message:
  -----------
  [flang][hlfir] Array constructor lowering [part 2/4]

This patch adds the lowering strategy that lowers an array constructor
to an hlfir.elemental (without creating any temporary yet in lowering).
This will allow more high level array expression optimization to elide
the array constructor temporary when possible, but this is only doable
for a restricted although common form of array constructors:
"[(pure_scalar_expr(i),i=lower,upper,stride)]".

Differential Revision: https://reviews.llvm.org/D144111




More information about the All-commits mailing list