[all-commits] [llvm/llvm-project] b5d847: [mlir] factor out common parts of the converstion ...

ftynse via All-commits all-commits at lists.llvm.org
Wed Jul 7 01:51:25 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b5d847b1b95750d0af40cfc8c71a8fec50bb8613
      https://github.com/llvm/llvm-project/commit/b5d847b1b95750d0af40cfc8c71a8fec50bb8613
  Author: Alex Zinenko <zinenko at google.com>
  Date:   2021-07-07 (Wed, 07 Jul 2021)

  Changed paths:
    M mlir/include/mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h
    M mlir/include/mlir/Conversion/GPUToNVVM/GPUToNVVMPass.h
    M mlir/include/mlir/Conversion/GPUToROCDL/GPUToROCDLPass.h
    A mlir/include/mlir/Conversion/LLVMCommon/LoweringOptions.h
    A mlir/include/mlir/Conversion/LLVMCommon/MemRefBuilder.h
    A mlir/include/mlir/Conversion/LLVMCommon/StructBuilder.h
    A mlir/include/mlir/Conversion/LLVMCommon/TypeConverter.h
    M mlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVM.h
    M mlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVMPass.h
    M mlir/lib/Conversion/CMakeLists.txt
    M mlir/lib/Conversion/ComplexToLLVM/CMakeLists.txt
    M mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
    M mlir/lib/Conversion/GPUToNVVM/CMakeLists.txt
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToROCDL/CMakeLists.txt
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    A mlir/lib/Conversion/LLVMCommon/CMakeLists.txt
    A mlir/lib/Conversion/LLVMCommon/LoweringOptions.cpp
    A mlir/lib/Conversion/LLVMCommon/MemRefBuilder.cpp
    A mlir/lib/Conversion/LLVMCommon/MemRefDescriptor.h
    A mlir/lib/Conversion/LLVMCommon/StructBuilder.cpp
    A mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
    M mlir/lib/Conversion/SPIRVToLLVM/CMakeLists.txt
    M mlir/lib/Conversion/SPIRVToLLVM/ConvertLaunchFuncToLLVMCalls.cpp
    M mlir/lib/Conversion/StandardToLLVM/CMakeLists.txt
    M mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
    M mlir/tools/mlir-vulkan-runner/CMakeLists.txt
    M mlir/tools/mlir-vulkan-runner/mlir-vulkan-runner.cpp

  Log Message:
  -----------
  [mlir] factor out common parts of the converstion to the LLVM dialect

"Standard-to-LLVM" conversion is one of the oldest passes in existence. It has
become quite large due to the size of the Standard dialect itself, which is
being split into multiple smaller dialects. Furthermore, several conversion
features are useful for any dialect that is being converted to the LLVM
dialect, which, without this refactoring, creates a dependency from those
conversions to the "standard-to-llvm" one.

Put several of the reusable utilities from this conversion to a separate
library, namely:
- type converter from builtin to LLVM dialect types;
- utility for building and accessing values of LLVM structure type;
- utility for building and accessing values that represent memref in the LLVM
  dialect;
- lowering options applicable everywhere.

Additionally, remove the type wrapping/unwrapping notion from the type
converter that is no longer relevant since LLVM types has been reimplemented as
first-class MLIR types.

Reviewed By: pifon2a

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




More information about the All-commits mailing list