[all-commits] [llvm/llvm-project] 5a9bdd: [mlir] split transform interfaces into a separate ...
ftynse via All-commits
all-commits at lists.llvm.org
Wed Mar 20 14:15:39 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 5a9bdd85ee4d8527e2cedf44f3ce26ff414f9b6a
https://github.com/llvm/llvm-project/commit/5a9bdd85ee4d8527e2cedf44f3ce26ff414f9b6a
Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M mlir/docs/Tutorials/transform/Ch2.md
M mlir/examples/transform/Ch2/include/MyExtension.h
M mlir/examples/transform/Ch2/include/MyExtension.td
M mlir/examples/transform/Ch2/lib/MyExtension.cpp
M mlir/examples/transform/Ch3/include/MyExtension.h
M mlir/examples/transform/Ch3/include/MyExtension.td
M mlir/examples/transform/Ch3/include/MyExtensionTypes.td
M mlir/examples/transform/Ch3/lib/MyExtension.cpp
M mlir/examples/transform/Ch4/include/MyExtension.h
M mlir/examples/transform/Ch4/include/MyExtension.td
M mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.h
M mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.td
M mlir/include/mlir/Dialect/Affine/TransformOps/AffineTransformOps.h
M mlir/include/mlir/Dialect/Affine/TransformOps/AffineTransformOps.td
M mlir/include/mlir/Dialect/Bufferization/TransformOps/BufferizationTransformOps.h
M mlir/include/mlir/Dialect/Bufferization/TransformOps/BufferizationTransformOps.td
M mlir/include/mlir/Dialect/Func/TransformOps/FuncTransformOps.h
M mlir/include/mlir/Dialect/Func/TransformOps/FuncTransformOps.td
M mlir/include/mlir/Dialect/GPU/TransformOps/GPUTransformOps.h
M mlir/include/mlir/Dialect/GPU/TransformOps/GPUTransformOps.td
M mlir/include/mlir/Dialect/GPU/TransformOps/Utils.h
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.h
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/MemRef/TransformOps/MemRefTransformOps.h
M mlir/include/mlir/Dialect/MemRef/TransformOps/MemRefTransformOps.td
M mlir/include/mlir/Dialect/NVGPU/TransformOps/NVGPUTransformOps.h
M mlir/include/mlir/Dialect/NVGPU/TransformOps/NVGPUTransformOps.td
M mlir/include/mlir/Dialect/SCF/TransformOps/SCFTransformOps.h
M mlir/include/mlir/Dialect/SCF/TransformOps/SCFTransformOps.td
M mlir/include/mlir/Dialect/SparseTensor/TransformOps/SparseTensorTransformOps.h
M mlir/include/mlir/Dialect/Tensor/TransformOps/TensorTransformOps.h
M mlir/include/mlir/Dialect/Tensor/TransformOps/TensorTransformOps.td
M mlir/include/mlir/Dialect/Transform/CMakeLists.txt
M mlir/include/mlir/Dialect/Transform/DebugExtension/DebugExtensionOps.h
M mlir/include/mlir/Dialect/Transform/DebugExtension/DebugExtensionOps.td
M mlir/include/mlir/Dialect/Transform/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/Transform/IR/MatchInterfaces.h
M mlir/include/mlir/Dialect/Transform/IR/MatchInterfaces.td
M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.td
R mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.h
R mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.td
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.h
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
M mlir/include/mlir/Dialect/Transform/IR/TransformTypes.h
M mlir/include/mlir/Dialect/Transform/IR/TransformTypes.td
A mlir/include/mlir/Dialect/Transform/Interfaces/CMakeLists.txt
A mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
A mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.td
M mlir/include/mlir/Dialect/Transform/LoopExtension/LoopExtensionOps.h
M mlir/include/mlir/Dialect/Transform/LoopExtension/LoopExtensionOps.td
M mlir/include/mlir/Dialect/Transform/PDLExtension/PDLExtensionOps.h
M mlir/include/mlir/Dialect/Transform/PDLExtension/PDLExtensionOps.td
M mlir/include/mlir/Dialect/Transform/Transforms/TransformInterpreterPassBase.h
M mlir/include/mlir/Dialect/Transform/Transforms/TransformInterpreterUtils.h
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.h
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/lib/CAPI/Dialect/TransformInterpreter.cpp
M mlir/lib/Dialect/Affine/TransformOps/AffineTransformOps.cpp
M mlir/lib/Dialect/Func/TransformOps/FuncTransformOps.cpp
M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
M mlir/lib/Dialect/GPU/TransformOps/Utils.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgMatchOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/MemRef/TransformOps/MemRefTransformOps.cpp
M mlir/lib/Dialect/SCF/TransformOps/SCFTransformOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorDialect.cpp
M mlir/lib/Dialect/Tensor/TransformOps/TensorTransformOps.cpp
M mlir/lib/Dialect/Transform/CMakeLists.txt
M mlir/lib/Dialect/Transform/IR/CMakeLists.txt
M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
R mlir/lib/Dialect/Transform/IR/TransformInterfaces.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Dialect/Transform/IR/TransformTypes.cpp
A mlir/lib/Dialect/Transform/Interfaces/CMakeLists.txt
A mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp
M mlir/lib/Dialect/Transform/Transforms/InferEffects.cpp
M mlir/lib/Dialect/Transform/Transforms/InterpreterPass.cpp
M mlir/lib/Dialect/Transform/Transforms/TransformInterpreterPassBase.cpp
M mlir/lib/Dialect/Transform/Transforms/TransformInterpreterUtils.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/test/Dialect/Tensor/decompose-concat.mlir
M mlir/test/Dialect/Tensor/fold-empty-op.mlir
M mlir/test/Dialect/Tensor/fold-tensor-subset-ops-into-vector-transfers.mlir
M mlir/test/Dialect/Tensor/rewrite-as-constant.mlir
M mlir/test/Dialect/Vector/vector-contract-to-outerproduct-matvec-transforms.mlir
M mlir/test/Dialect/Vector/vector-materialize-mask.mlir
M mlir/test/Dialect/Vector/vector-multi-reduction-lowering.mlir
M mlir/test/Dialect/Vector/vector-multi-reduction-outer-lowering.mlir
M mlir/test/Dialect/Vector/vector-transfer-drop-unit-dims-patterns.mlir
M mlir/test/Dialect/Vector/vector-transfer-full-partial-split-copy-transform.mlir
M mlir/test/Dialect/Vector/vector-transfer-full-partial-split.mlir
M mlir/test/Dialect/Vector/vector-transfer-to-vector-load-store.mlir
M mlir/test/Dialect/Vector/vector-transpose-lowering.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-shuffle16x16.mlir
M mlir/test/lib/Dialect/Tensor/TestTensorTransforms.cpp
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.h
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.td
M mlir/test/lib/Dialect/Transform/TestTransformDialectInterpreter.cpp
M mlir/test/lib/Dialect/Transform/TestTransformStateExtension.h
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.td
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[mlir] split transform interfaces into a separate library (#85221)
Transform interfaces are implemented, direction or via extensions, in
libraries belonging to multiple other dialects. Those dialects don't
need to depend on the non-interface part of the transform dialect, which
includes the growing number of ops and transitive dependency footprint.
Split out the interfaces into a separate library. This in turn requires
flipping the dependency from the interface on the dialect that has crept
in because both co-existed in one library. The interface shouldn't
depend on the transform dialect either.
As a consequence of splitting, the capability of the interpreter to
automatically walk the payload IR to identify payload ops of a certain
kind based on the type used for the entry point symbol argument is
disabled. This is a good move by itself as it simplifies the interpreter
logic. This functionality can be trivially replaced by a
`transform.structured.match` operation.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list