[all-commits] [llvm/llvm-project] 54c563: [fir] Add fir.extract_value and fir.insert_value c...

Valentin Clement (バレンタイン クレメン) via All-commits all-commits at lists.llvm.org
Sun Nov 7 12:59:26 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 54c563474ab69fa8fbbbf68da6fab84cb0ee6e6b
      https://github.com/llvm/llvm-project/commit/54c563474ab69fa8fbbbf68da6fab84cb0ee6e6b
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2021-11-07 (Sun, 07 Nov 2021)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    A flang/lib/Optimizer/CodeGen/DescriptorModel.h
    M flang/lib/Optimizer/CodeGen/TypeConverter.h
    M flang/test/Fir/convert-to-llvm.fir

  Log Message:
  -----------
  [fir] Add fir.extract_value and fir.insert_value conversion

This patch add the conversion pattern for fir.extract_value
and fir.insert_value. fir.extract_value is lowered to llvm.extractvalue
anf fir.insert_value is lowered to llvm.insertvalue.
This patch also adds the type conversion for the BoxType and RecordType
needed to have some comprehensive tests.

This patch is part of the upstreaming effort from fir-dev branch.

This patch was landed and reverted once.
TypeBuilderFunc getModel<Fortran::ISO::CFI_index_t>() was clashing
with getModel<long long> on windows since they both are 64 bits
signed interger. On linux CFI_index_t is long. Change CFI_index_t
to getModel<long>.

Reviewed By: awarzynski

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

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




More information about the All-commits mailing list