[all-commits] [llvm/llvm-project] b77a06: [flang][hlfir] Added hlfir.get_length to inquire c...

Slava Zakharin via All-commits all-commits at lists.llvm.org
Thu Jul 6 13:22:04 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b77a06084ae72c6f65a342548ef423b10d25b7a9
      https://github.com/llvm/llvm-project/commit/b77a06084ae72c6f65a342548ef423b10d25b7a9
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
    M flang/include/flang/Optimizer/HLFIR/HLFIRDialect.h
    M flang/include/flang/Optimizer/HLFIR/HLFIROpBase.td
    M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
    M flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    A flang/test/HLFIR/get_length.fir
    M flang/test/HLFIR/invalid.fir

  Log Message:
  -----------
  [flang][hlfir] Added hlfir.get_length to inquire char length from hlfir.expr.

We will use hlfir.get_length to lower inquiries of char length
applied to hlfir.expr character values.

Reviewed By: tblah, jeanPerier

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


  Commit: 4642198b654064929ec7ae5de02de67e24158f81
      https://github.com/llvm/llvm-project/commit/4642198b654064929ec7ae5de02de67e24158f81
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
    A flang/test/HLFIR/get_length_codegen.fir

  Log Message:
  -----------
  [flang][hlfir] Codegen for hlfir.get_length.

Lower hlfir.get_length into the char length inquiry of the bufferized
entity. In some cases the codegen will fail with
`hlfir.associate of hlfir.expr with more than one use` - this will be fixed
separately (after D154521).

Depends on D154560

Reviewed By: tblah, jeanPerier

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


  Commit: a94eedc7d89fc0850e883411bd0ec24622b29349
      https://github.com/llvm/llvm-project/commit/a94eedc7d89fc0850e883411bd0ec24622b29349
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/test/Lower/HLFIR/elemental-array-ops.f90
    M flang/test/Lower/HLFIR/user-defined-assignment.f90

  Log Message:
  -----------
  [flang][hlfir] Lower char length inquiry via hlfir.get_length.

ApplyOp provides the type parameters in its argument, so we can
take it from there. For hlfir.expr block arguments (such as with
user-defined assignments) we use hlfir.get_length in lowering.

Depends on D154561

Reviewed By: jeanPerier

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


Compare: https://github.com/llvm/llvm-project/compare/a9f5119a78aa...a94eedc7d89f


More information about the All-commits mailing list