[Mlir-commits] [mlir] 74a512d - [mlir][vector] Populate sink patterns in apply_patterns.vector.reduction_to_contract (#104754)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Mon Aug 19 03:20:21 PDT 2024
Author: Benjamin Maxwell
Date: 2024-08-19T11:20:18+01:00
New Revision: 74a512df2bea0f0d1f314c6b8dc33c97f9086336
URL: https://github.com/llvm/llvm-project/commit/74a512df2bea0f0d1f314c6b8dc33c97f9086336
DIFF: https://github.com/llvm/llvm-project/commit/74a512df2bea0f0d1f314c6b8dc33c97f9086336.diff
LOG: [mlir][vector] Populate sink patterns in apply_patterns.vector.reduction_to_contract (#104754)
This restores the functionality to before:
https://github.com/llvm/llvm-project/commit/42944da5ba7617bbc02f341e9ef401c325310a73
This fixes a buildbot failure:
https://lab.llvm.org/buildbot/#/builders/143/builds/1487
Added:
Modified:
mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
Removed:
################################################################################
diff --git a/mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td b/mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
index 820a18731ffdb0..aad2eab83dbd38 100644
--- a/mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
+++ b/mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
@@ -410,7 +410,7 @@ def ApplyFoldElementwiseToVectorPatternsOp : Op<Transform_Dialect,
"apply_patterns.vector.elementwise_to_vector",
[DeclareOpInterfaceMethods<PatternDescriptorOpInterface>]> {
let description = [{
- Collect a set of patterns that fold elementwise op on vectors to the vector
+ Collect a set of patterns that fold elementwise op on vectors to the vector
dialect.
}];
@@ -426,8 +426,9 @@ def ApplyVectorReductionToContractPatternsOp : Op<Transform_Dialect,
- CombineContractBroadcast
- CombineContractABTranspose
- CombineContractResultTranspose
- - ReorderCastOpsOnBroadcast
- ReorderElementwiseOpsOnTranspose
+ - ReorderElementwiseOpsOnBroadcast
+ - ReorderCastOpsOnBroadcast
These patterns have the effect of rewriting a vector.multi_reduce into a
vector.contract.
diff --git a/mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp b/mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
index bc423a3781bf04..3ae70ace3934cd 100644
--- a/mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
+++ b/mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
@@ -67,6 +67,7 @@ void transform::ApplyFoldElementwiseToVectorPatternsOp::populatePatterns(
void transform::ApplyVectorReductionToContractPatternsOp::populatePatterns(
RewritePatternSet &patterns) {
vector::populateVectorReductionToContractPatterns(patterns);
+ vector::populateSinkVectorOpsPatterns(patterns);
}
void transform::ApplyLowerCreateMaskPatternsOp::populatePatterns(
More information about the Mlir-commits
mailing list