[Mlir-commits] [mlir] [mlir][sme] Include hoisting in the mult-tile e2e test (PR #202979)

Andrzej WarzyƄski llvmlistbot at llvm.org
Wed Jun 10 06:58:30 PDT 2026


https://github.com/banach-space created https://github.com/llvm/llvm-project/pull/202979

None

>From c9016a4ca213944940dd50cdcfd403cd4a8492a7 Mon Sep 17 00:00:00 2001
From: Andrzej Warzynski <andrzej.warzynski at arm.com>
Date: Wed, 10 Jun 2026 13:57:01 +0000
Subject: [PATCH] [mlir][sme] Include hoisting in the mult-tile e2e test

---
 .../Dialect/Linalg/CPU/ArmSME/multi-tile-matmul.mlir        | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul.mlir b/mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul.mlir
index 007189ad9d578..66440aee544a7 100644
--- a/mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul.mlir
+++ b/mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul.mlir
@@ -76,6 +76,12 @@ module attributes {transform.with_named_sequence} {
     %tiled_linalg_op, %loop_i, %loop_j, %loop_k = transform.structured.tile_using_for %matmul tile_sizes [[8], [8], 4]
       : (!transform.any_op) -> (!transform.any_op, !transform.op<"scf.for">, !transform.op<"scf.for">, !transform.op<"scf.for">)
 
+    // Step 1a: Hoist read/write ops for the output tensor.
+    %all_loops = transform.structured.match interface{LoopLikeInterface} in %module
+      : (!transform.any_op) -> !transform.any_op
+    transform.apply_licm to %all_loops : !transform.any_op
+    transform.loop.hoist_loop_invariant_subsets %all_loops : !transform.any_op
+
     // Step 2: Vectorize.
     transform.structured.vectorize %tiled_linalg_op vector_sizes [[8], [8], 4]
       : !transform.any_op



More information about the Mlir-commits mailing list