[Mlir-commits] [mlir] [mlir][Vector] Reject scalable outer dim in multi_reduction unrolling (PR #224174)
Cheng-Chieh Liu
llvmlistbot at llvm.org
Tue Nov 3 08:00:16 PST 2026
================
@@ -64,6 +64,50 @@ func.func @vector_multi_reduction_masked(%arg0: vector<2x4xf32>, %acc: vector<2x
// -----
+// ALL-LABEL: @negative_multi_reduction_scalable_outer
+// ALL-SAME: %[[INPUT:.+]]: vector<[2]x4xf32>, %[[ACC:.+]]: vector<[2]xf32>
+// INNER-REDUCTION: vector.multi_reduction <mul>, %[[INPUT]], %[[ACC]] [1] : vector<[2]x4xf32> to vector<[2]xf32>
+// INNER-PARALLEL: vector.transpose %[[INPUT]], [1, 0] : vector<[2]x4xf32> to vector<4x[2]xf32>
+func.func @negative_multi_reduction_scalable_outer(%arg0: vector<[2]x4xf32>, %acc: vector<[2]xf32>) -> vector<[2]xf32> {
----------------
jay87406 wrote:
Makes sense, dropped the `negative_` prefix. The tests are now named after which dim is scalable (`@vector_multi_reduction_scalable_parallel_dim[_masked]` / `@vector_multi_reduction_scalable_reduction_dim[_masked]`), and each has a comment saying which strategy bails and which one lowers it.
https://github.com/llvm/llvm-project/pull/224174
More information about the Mlir-commits
mailing list