[all-commits] [llvm/llvm-project] 49c08a: [Flang] Add the FIR LLVMPointer Type

kiranchandramohan via All-commits all-commits at lists.llvm.org
Mon Nov 15 07:58:29 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 49c08a22edc36abc3c6bf381565bf1963338a57d
      https://github.com/llvm/llvm-project/commit/49c08a22edc36abc3c6bf381565bf1963338a57d
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2021-11-15 (Mon, 15 Nov 2021)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/lib/Optimizer/CodeGen/TypeConverter.h
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/fir-types.fir
    M flang/test/Fir/types-to-llvm.fir

  Log Message:
  -----------
  [Flang] Add the FIR LLVMPointer Type

Add a fir.llvm_ptr type to allow any level of indirections

Currently, fir pointer types (fir.ref, fir.ptr, and fir.heap) carry
a special Fortran semantics, and cannot be freely combined/nested.

When implementing some features, lowering sometimes needs more liberty
regarding the number of indirection levels. Add a fir.llvm_ptr that has
no constraints.

Allow its usage in fir.coordinate_op, fir.load, and fir.store.

Convert the FIR LLVMPointer to an LLVMPointer in the LLVM dialect.

Reviewed By: clementval

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

Co-authored-by: Jean Perier <jperier at nvidia.com>




More information about the All-commits mailing list