[Mlir-commits] [mlir] [mlir][transform] Consistent `linalg` `transform` op syntax for dynamic index lists (PR #90897)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Sun May 5 08:55:04 PDT 2024


================
@@ -1899,7 +1897,17 @@ def TileUsingForOp : Op<Transform_Dialect, "structured.tile_using_for",
                       $scalableSizes)>,
   ];
 
-  let hasCustomAssemblyFormat = 1;
+  let assemblyFormat = [{
+    $target oilist(
----------------
srcarroll wrote:

hmm. so actually `oilist` seems to still serve two purposes here. One is that it makes the `vector_sizes` keyword optional. Second is that it will elide `vector_sizes` when the list is empty.  If I change to something like 
```
  let assemblyFormat = [{
    $target
      (`vector_sizes` custom<DynamicIndexList>(
        $vector_sizes,
        $static_vector_sizes,
        $scalable_sizes)^)?
    attr-dict
    `:` type($target)(`,`type($vector_sizes)^)? 
  }];

```
then this still handles the first thing, but not the second. any suggestions?

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


More information about the Mlir-commits mailing list