aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Support/ErrorTest.cpp
diff options
context:
space:
mode:
authorAndrzej WarzyƄski <andrzej.warzynski@arm.com>2025-02-06 09:18:13 +0000
committerGitHub <noreply@github.com>2025-02-06 09:18:13 +0000
commit80fd902573f860001af08d75f15d8f92005bae90 (patch)
treefd0bca016b387a6ab6b0edac500a054b12d8ca8d /llvm/unittests/Support/ErrorTest.cpp
parentd2b45ce100d641a8f1690e30843bb9c5ea71ab86 (diff)
downloadllvm-80fd902573f860001af08d75f15d8f92005bae90.zip
llvm-80fd902573f860001af08d75f15d8f92005bae90.tar.gz
llvm-80fd902573f860001af08d75f15d8f92005bae90.tar.bz2
[mlir][tensor] Introduce `TensorRelayoutOpInterface` (#125823)
The newly introduced `TensorRelayoutOpInterface` is created specifically for `tensor.pack` + `tensor.unpack`. Although the interface is currently empty, it enables us to refactor the logic in `FoldTensorCastProducerOp` within the Tensor dialect as follows: ```cpp // OLD // Reject tensor::PackOp - there's dedicated pattern for that instead. if (!foldTensorCastPrecondition(op) || isa<tensor::PackOp, tensor::UnPackOp>(*op)) return failure(); ``` is replaced with: ```cpp // NEW // Reject tensor::PackOp - there's dedicated pattern for that instead. if (!foldTensorCastPrecondition(op) || isa<tensor::RelayoutOpInterface>(*op)) return failure(); ``` This will be crucial once `tensor.pack` + `tensor.pack` are replaced with `linalg.pack` + `linalg.unpack` (i.e. moved to Linalg): * https://github.com/llvm/llvm-project/pull/123902, * https://discourse.llvm.org/t/rfc-move-tensor-pack-and-tensor-unpack-into-linalg/. Note that the interface itself will later be moved to the Linalg dialect. This decoupling ensures that the Tensor dialect does not require an understanding of Linalg ops, thus keeping the dependency lightweight. This PR is effectively a preparatory step for moving PackOp and UnpackOp to Linalg. Once that's completed, most CMake changes from this PR will be effectively reverted.
Diffstat (limited to 'llvm/unittests/Support/ErrorTest.cpp')
0 files changed, 0 insertions, 0 deletions