[all-commits] [llvm/llvm-project] a1a686: [mlir][VectorOps] Add unrolling for n-D vector.int...
Benjamin Maxwell via All-commits
all-commits at lists.llvm.org
Tue Feb 20 06:33:45 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a1a68603145a39e6abdd35bf7a01535eb53826b1
https://github.com/llvm/llvm-project/commit/a1a68603145a39e6abdd35bf7a01535eb53826b1
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-02-20 (Tue, 20 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h
M mlir/include/mlir/Dialect/Vector/Utils/VectorUtils.h
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Vector/Transforms/LowerVectorInterleave.cpp
M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
A mlir/test/Dialect/Vector/vector-interleave-lowering-transforms.mlir
Log Message:
-----------
[mlir][VectorOps] Add unrolling for n-D vector.interleave ops (#80967)
This unrolls n-D vector.interleave ops like:
```mlir
vector.interleave %i, %j : vector<6x3xf32>
```
To a sequence of 1-D operations:
```mlir
%i_0 = vector.extract %i[0]
%j_0 = vector.extract %j[0]
%res_0 = vector.interleave %i_0, %j_0 : vector<3xf32>
vector.insert %res_0, %result[0] :
// ... repeated x6
```
The 1-D operations can then be directly lowered to LLVM.
Depends on: #80966
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