[Mlir-commits] [mlir] [mlir][linalg/scf/transform] scalable tiling and fusion for pack/unpack ops (PR #204007)

Ege Beysel llvmlistbot at llvm.org
Mon Jun 29 09:57:32 PDT 2026


================
@@ -432,6 +432,14 @@ def FuseOp : Op<Transform_Dialect, "structured.fuse",
     If `apply_cleanup` is true then slice canonicalization is applied between
     fusion steps. If `use_forall` is true then tiling method generates a
     `scf.forall` loop instead of `scf.for` loops.
+
+    The optional `inner_tile_alignments` attribute forwards a per-dimension
+    `InnerTileAlignment` hint to the tiling driver for pack/unpack tiling.
+    Entries are indexed in iteration-domain order; an empty array (the default)
+    preserves the prior behavior and the hint is ignored by ops that do not
+    consume it. The hint is a caller assertion: for genuinely scalable/dynamic
+    sizes it cannot be verified, so an incorrect entry silently produces invalid
+    tiling -- the caller owns its correctness.
----------------
egebeysel wrote:

I actually limited the descriptions here to what the inner tile alignment is, and made it explicit that it is only relevant for pack/unpack ops.

https://github.com/llvm/llvm-project/pull/204007


More information about the Mlir-commits mailing list