)]}'
{
  "commit": "95a00359cc0d7af31bac1dc05d675a5c35771103",
  "tree": "f1891076a85235c0a0103aa79c24a23b20c976af",
  "parents": [
    "cf9453f236135f92b6d4bcc72e0058ad06b80487"
  ],
  "author": {
    "name": "Artem Gindinson",
    "email": "gindinson@roofline.ai",
    "time": "Fri Aug 14 13:59:54 2026 +0200"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Aug 14 13:59:54 2026 +0200"
  },
  "message": "[Codegen] Support multi-output consumers with permuted indexing maps (#24768)\n\nExtend lowering of fused \u0026 tiled consumer ops from the basic case\n(strictly identical indexing over the output operands). We now\ngeneralize the logic for input indexing to support different output maps\nthat are simple permutations.\n\nThis allows to support some fusion cases where a simple transposition\nfrom one of the consumer\u0027s connections get fused into the elementwise\ngeneric, and then the consumer gets fused \u0026 tiled together with the\nmatmul. Whether we want such consumer fusion is a separate matter\nsubject to performance investigations, and in my reproducer there\u0027d also\nbe an opportunity to fold redundant `tranpose(transpose(x))` instances,\navoiding the multi-output fusion altogether. For better stability, this\nextension of the codegen is preferred as the first step.\n\nSigned-off-by: Artem Gindinson \u003cgindinson@roofline.ai\u003e\nAssisted by: Codex\n\n---------\n\nSigned-off-by: Artem Gindinson \u003cgindinson@roofline.ai\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3ddee797b73533a5069debde2d432a959875d036",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/test/materialize_encoding_aarch64.mlir",
      "new_id": "137de9e72be22c5beda89fd97c0bb389bf93757a",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/test/materialize_encoding_aarch64.mlir"
    },
    {
      "type": "modify",
      "old_id": "c44abb218a38a1237acbae5379b84bf38c3bdd6d",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/test/materialize_encoding_gfx942.mlir",
      "new_id": "ad86732e3ac7db43846d05b6960a0b80ab4b7aeb",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/test/materialize_encoding_gfx942.mlir"
    },
    {
      "type": "modify",
      "old_id": "23797528ba988d43db704c92edf302cba30ab57b",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/test/materialize_encoding_x86_64.mlir",
      "new_id": "4ccb59bba20be2998e920da015fe773d623dfa1c",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/test/materialize_encoding_x86_64.mlir"
    },
    {
      "type": "modify",
      "old_id": "652c59ce75c4aba5b1bd4dc966299596866322a2",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.cpp",
      "new_id": "b3ce347afc7d65bf9a3f954828a81e2ca31db164",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.cpp"
    },
    {
      "type": "modify",
      "old_id": "83c4cdf0449767239c2c15b6f5d2aca64eb1ca26",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h",
      "new_id": "ff517a4480d297c312dd84f3ce988752e6d43910",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/Utils.h"
    },
    {
      "type": "modify",
      "old_id": "9f62cb2c27247d51dfa04647ef988cc793b09bc0",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/test/BUILD.bazel",
      "new_id": "b28f5aec634af27acb8451cc91e975a498918311",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/test/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "c9e3f88a26ed7f1651669ba870faac1010f67e89",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/test/CMakeLists.txt",
      "new_id": "1e88689afa71f36743f91ddcbccc3ecaa122f7a1",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/test/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fe0df344a73121f21000e3e45d60f70fd4569893",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/ExternalInterfaces/test/materialize_encoding_invalid.mlir"
    }
  ]
}
