)]}'
{
  "commit": "0df50f9a8e40ab1878479124b952f45d9f8c0650",
  "tree": "9edbe91607d5128aef0f806bbb8d7741d1d5b98c",
  "parents": [
    "d7e6e3925d6a57787ec3bd9b03545d2516a7e60d"
  ],
  "author": {
    "name": "Ege Beysel",
    "email": "beysel@roofline.ai",
    "time": "Fri Sep 11 13:38:17 2026 +0300"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Sep 11 13:38:17 2026 +0300"
  },
  "message": "[LLVMCPU] `vlen` attribute for DataTiledMMAAttr for RISCV + FP16 port (#24858)\n\nFor RISC-V, the vector length per SIMD register is not fixed and is configurable. Therefore, the tile shape of an intrinsic and the total SIMD register bit budget is also parameterized by the vector length. In order for all of these vector length configurations to share a single intrinsic and not duplicate it per-configurable-vlen, we add a `vlen` parameter to the `DataTiledMMAAttr`, which in combination with the intrinsic itself gives the exact shape information, as well as the register budget. These are derived from the `+zvl*b` flags.\n\nFurthermore, add materialization for data-tiled f16 matmul encodings to `iree_codegen.inner_tiled` on RISC-V V targets with Zvfh, as the first consumer of the `vlen` attribute parameter. Lowering to LLVM intrinsics\nis not included.\n\nTowards https://github.com/iree-org/iree/issues/24311\n\nAssisted-by: Claude Code\n\n---------\n\nSigned-off-by: Ege Beysel \u003cbeyselege@gmail.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fbc1e5ace96e4326c9b144d3a52ab3e53a21eca5",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/test/BUILD.bazel",
      "new_id": "806e8c3404d78df6f309bf06f6a06860e6de267e",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/test/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "f3220e204a86b2e07a1cca58fc6e7a1262a709f8",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/test/CMakeLists.txt",
      "new_id": "b2e6024c5869d9e202c6a1b612732ab1342a980a",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/test/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2ef3a359d3726e3cb683765b8fb649007bf0ef2a",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/test/materialize_encoding_riscv_inner_tiled.mlir"
    },
    {
      "type": "modify",
      "old_id": "61ae8a652517eec1845496e7e7f7c678988a6863",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/IREECPUAttrs.cpp",
      "new_id": "357920d48dbbe8ae1cea8c8e8994945d352ba2b6",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/IREECPUAttrs.cpp"
    },
    {
      "type": "modify",
      "old_id": "5fcfe91bfbbf222e6c36b5646b9ba8d02eb69210",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/IREECPUAttrs.td",
      "new_id": "ca8fc8e233f21cff2ee74e67dd1aa7ee1cf1cd4e",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/IREECPUAttrs.td"
    },
    {
      "type": "modify",
      "old_id": "c635d515b88cd9ed303d1ce3e8e5aaa8b3c92a7b",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/IREECPUEnums.td",
      "new_id": "84ed10607cd03baf5399f6d98ff3b0eb8cc25428",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/IREECPUEnums.td"
    },
    {
      "type": "modify",
      "old_id": "e0a6da350b49fc3d7693d2cfd56ffc2d09275b1d",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/IREECPUTypes.h",
      "new_id": "50c21408fc941cdd4d98de9515c9e97c9499ea21",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/IREECPUTypes.h"
    },
    {
      "type": "modify",
      "old_id": "0a6b31f43308ea5d3af6ec87958c355fa960db20",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/test/invalid.mlir",
      "new_id": "3bbb7ccdf0f2e969b98906a6711ee015d2c2bc5f",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/test/invalid.mlir"
    },
    {
      "type": "modify",
      "old_id": "f76f8ff92b8e93d0a6ecccc615eb22f45cb7ae26",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/test/iree_cpu_inner_tiled_ops.mlir",
      "new_id": "45ea76cc50970ae372473e19605f94d101bf9db2",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Dialect/CPU/IR/test/iree_cpu_inner_tiled_ops.mlir"
    },
    {
      "type": "modify",
      "old_id": "e922b33cd2d9a3680197165a9a67e6b3db61736f",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/CPUEncodingExternalModels.cpp",
      "new_id": "27561e06c5d93cee6aba72f7efa3cb3f290fa79a",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/CPUEncodingExternalModels.cpp"
    }
  ]
}
