[all-commits] [llvm/llvm-project] f80a97: [mlir][vector] Add gather lowering patterns
Jakub Kuderski via All-commits
all-commits at lists.llvm.org
Tue Mar 14 08:00:20 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: f80a976acd85611acd795225999a92bba57c76e6
https://github.com/llvm/llvm-project/commit/f80a976acd85611acd795225999a92bba57c76e6
Author: Jakub Kuderski <kubak at google.com>
Date: 2023-03-14 (Tue, 14 Mar 2023)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
A mlir/test/Dialect/Vector/vector-gather-lowering.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][vector] Add gather lowering patterns
This is for targets that do not support gather-like ops, e.g., SPIR-V.
Gather is expanded into lower-level vector ops with memory accesses
guarded with `scf.if`.
I also considered generating `vector.maskedload`s, but decided against
it to keep the `memref` and `tensor` codepath closer together. There's a
good chance that if a target doesn't support gather it does not support
masked loads either.
Issue: https://github.com/llvm/llvm-project/issues/60905
Reviewed By: ThomasRaoux
Differential Revision: https://reviews.llvm.org/D145942
More information about the All-commits
mailing list