[all-commits] [llvm/llvm-project] 75e5f0: [mlir] factor memref-to-llvm lowering out of std-t...
ftynse via All-commits
all-commits at lists.llvm.org
Fri Jul 9 05:50:08 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 75e5f0aac97dca0507a391f3418b18f4f6e44cd7
https://github.com/llvm/llvm-project/commit/75e5f0aac97dca0507a391f3418b18f4f6e44cd7
Author: Alex Zinenko <zinenko at google.com>
Date: 2021-07-09 (Fri, 09 Jul 2021)
Changed paths:
M mlir/examples/toy/Ch6/CMakeLists.txt
M mlir/examples/toy/Ch6/mlir/LowerToLLVM.cpp
M mlir/examples/toy/Ch7/CMakeLists.txt
M mlir/examples/toy/Ch7/mlir/LowerToLLVM.cpp
M mlir/include/mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h
A mlir/include/mlir/Conversion/LLVMCommon/ConversionTarget.h
M mlir/include/mlir/Conversion/LinalgToLLVM/LinalgToLLVM.h
A mlir/include/mlir/Conversion/MemRefToLLVM/AllocLikeConversion.h
A mlir/include/mlir/Conversion/MemRefToLLVM/MemRefToLLVM.h
M mlir/include/mlir/Conversion/OpenACCToLLVM/ConvertOpenACCToLLVM.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVM.h
M mlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp
M mlir/lib/Conversion/AsyncToLLVM/CMakeLists.txt
M mlir/lib/Conversion/CMakeLists.txt
M mlir/lib/Conversion/ComplexToLLVM/CMakeLists.txt
M mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
M mlir/lib/Conversion/GPUCommon/CMakeLists.txt
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.h
M mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp
M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
M mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h
M mlir/lib/Conversion/GPUToNVVM/CMakeLists.txt
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/GPUToNVVM/WmmaOpsToNvvm.cpp
M mlir/lib/Conversion/GPUToROCDL/CMakeLists.txt
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/lib/Conversion/LLVMCommon/CMakeLists.txt
A mlir/lib/Conversion/LLVMCommon/ConversionTarget.cpp
M mlir/lib/Conversion/LinalgToLLVM/CMakeLists.txt
M mlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
A mlir/lib/Conversion/MemRefToLLVM/AllocLikeConversion.cpp
A mlir/lib/Conversion/MemRefToLLVM/CMakeLists.txt
A mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Conversion/OpenACCToLLVM/CMakeLists.txt
M mlir/lib/Conversion/OpenACCToLLVM/OpenACCToLLVM.cpp
M mlir/lib/Conversion/OpenMPToLLVM/CMakeLists.txt
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Conversion/SPIRVToLLVM/CMakeLists.txt
M mlir/lib/Conversion/SPIRVToLLVM/ConvertLaunchFuncToLLVMCalls.cpp
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVMPass.cpp
M mlir/lib/Conversion/StandardToLLVM/CMakeLists.txt
M mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
M mlir/lib/Conversion/VectorToROCDL/CMakeLists.txt
M mlir/lib/Conversion/VectorToROCDL/VectorToROCDL.cpp
M mlir/lib/Dialect/AMX/Transforms/CMakeLists.txt
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/ArmSVE/Transforms/CMakeLists.txt
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
A mlir/test/Conversion/MemRefToLLVM/convert-alloca-scope.mlir
A mlir/test/Conversion/MemRefToLLVM/convert-dynamic-memref-ops.mlir
A mlir/test/Conversion/MemRefToLLVM/convert-static-memref-ops.mlir
A mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Conversion/StandardToLLVM/calling-convention.mlir
R mlir/test/Conversion/StandardToLLVM/convert-alloca-scope.mlir
M mlir/test/Conversion/StandardToLLVM/convert-argattrs.mlir
R mlir/test/Conversion/StandardToLLVM/convert-dynamic-memref-ops.mlir
R mlir/test/Conversion/StandardToLLVM/convert-static-memref-ops.mlir
R mlir/test/Conversion/StandardToLLVM/convert-to-llvmir.mlir
A mlir/test/Conversion/StandardToLLVM/func-memref.mlir
M mlir/test/Conversion/StandardToLLVM/standard-to-llvm.mlir
M mlir/test/Integration/Dialect/Async/CPU/microbench-linalg-async-parallel-for.mlir
M mlir/test/Integration/Dialect/Async/CPU/microbench-scf-async-parallel-for.mlir
M mlir/test/Integration/Dialect/Async/CPU/test-async-parallel-for-1d.mlir
M mlir/test/Integration/Dialect/Async/CPU/test-async-parallel-for-2d.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/benchmark_matmul.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/benchmark_matmul_column_major_as_row_major.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/benchmark_matmul_i8_i8_i32.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/matmul-vs-matvec.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/rank-reducing-subview.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-comprehensive-bufferize.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-1d-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-1d-input-ncw-filter-wcf-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-1d-input-nwc-filter-wcf-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-1d-ncw-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-1d-nwc-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-2d-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-2d-input-nchw-filter-hwcf-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-2d-input-nhwc-filter-hwcf-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-2d-nchw-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-2d-nhwc-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-3d-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-3d-input-ncdhw-filter-dhwcf-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-3d-input-ndhwc-filter-dhwcf-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-3d-ncdhw-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-conv-3d-ndhwc-call.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-elementwise.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-padtensor.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert-multiple-uses.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-tensor-e2e.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-tensor-matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_flatten.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matvec.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_mttkrp.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_out_simple.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_spmm.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum.mlir
M mlir/test/Integration/Dialect/Standard/CPU/test-ceil-floor-pos-neg.mlir
M mlir/test/Integration/Dialect/Standard/CPU/test_subview.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-compress.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-expand.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-gather.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-maskedload.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-maskedstore.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-scatter.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-sparse-dot-matvec.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-sparse-saxpy-jagged-matvec.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-1d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-2d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-3d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-transfer-read.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-transfer-to-loops.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-transfer-write.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-vector-distribute.mlir
M mlir/test/lib/Conversion/StandardToLLVM/CMakeLists.txt
M mlir/test/lib/Conversion/StandardToLLVM/TestConvertCallOp.cpp
M mlir/test/mlir-cpu-runner/async-value.mlir
M mlir/test/mlir-cpu-runner/async.mlir
M mlir/test/mlir-cpu-runner/bare_ptr_call_conv.mlir
M mlir/test/mlir-cpu-runner/copy.mlir
M mlir/test/mlir-cpu-runner/global_memref.mlir
M mlir/test/mlir-cpu-runner/memref_reinterpret_cast.mlir
M mlir/test/mlir-cpu-runner/memref_reshape.mlir
M mlir/test/mlir-cpu-runner/sgemm_naive_codegen.mlir
M mlir/test/mlir-cpu-runner/unranked_memref.mlir
M mlir/test/mlir-cpu-runner/utils.mlir
M mlir/test/python/execution_engine.py
M mlir/test/python/integration/dialects/linalg/opsrun.py
M mlir/tools/mlir-vulkan-runner/CMakeLists.txt
M mlir/tools/mlir-vulkan-runner/mlir-vulkan-runner.cpp
M mlir/unittests/ExecutionEngine/CMakeLists.txt
M mlir/unittests/ExecutionEngine/Invoke.cpp
Log Message:
-----------
[mlir] factor memref-to-llvm lowering out of std-to-llvm
After the MemRef has been split out of the Standard dialect, the
conversion to the LLVM dialect remained as a huge monolithic pass.
This is undesirable for the same complexity management reasons as having
a huge Standard dialect itself, and is even more confusing given the
existence of a separate dialect. Extract the conversion of the MemRef
dialect operations to LLVM into a separate library and a separate
conversion pass.
Reviewed By: herhut, silvas
Differential Revision: https://reviews.llvm.org/D105625
More information about the All-commits
mailing list