)]}'
{
  "commit": "09350084469f7c49e09d3f4348bdd706627eacd4",
  "tree": "9c3c8c10a4376c37b220a650ea7e75bf8330af9a",
  "parents": [
    "f4d1908e89fece7e0bf5cebd606b69a9483817f3"
  ],
  "author": {
    "name": "Vivian Zhang",
    "email": "zhyuhang88@gmail.com",
    "time": "Fri May 01 21:37:30 2026 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri May 01 21:37:30 2026 -0700"
  },
  "message": "[DispatchCreation] Tighten scatter-skip predicate in CollapseDimensions (#24334)\n\nPR #24034 skipped collapse for any `linalg.generic` with a\n`tensor.extract` and a `linalg.index` in its body, in order to avoid an\nexpensive delinearization on strided-scatter generics produced by\n`ConvertStridedInsertSliceToGeneric`. That predicate was too broad and\ncaught the RoPE + FP8 dispatch in Llama-8B, whose fused body also has\n`tensor.extract` + `linalg.index` (rotate_half lookup) but is not a\nstrided scatter; the collateral block prevents the `4×batch×seq` outer\ncollapse and produces a 5-D dispatch (`4x2048x8x2x64`) that tiles ~3.5x\nslower on gfx942 than the pre-#24034 `8192x8x128` shape.\n\nTighten the predicate to require all three signals of the\nstrided-scatter shape: empty `ins` operands (source captured via\n`tensor.extract`), at least one `linalg.index`, and a `tensor.extract`\nwhose result is consumed by an `arith.select` (the bounds check).\n\nFixes: https://github.com/iree-org/iree/issues/24322\n\n---------\n\nSigned-off-by: yzhang93 \u003czhyuhang88@gmail.com\u003e\nCo-authored-by: Claude \u003cnoreply@anthropic.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2560c5f4be8f96a68a68f5bc3fcf19fac76ae9d5",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/DispatchCreation/CollapseDimensions.cpp",
      "new_id": "00aceb628922b5d30610e4ec8d5cba4344c6c2a0",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/DispatchCreation/CollapseDimensions.cpp"
    },
    {
      "type": "modify",
      "old_id": "3b9350a88b5834dc89ae6bde0d807481be11e646",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/DispatchCreation/test/collapse_dimensions.mlir",
      "new_id": "83647cd9e60a5e4fac8b3cadc630bf3844717f56",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/DispatchCreation/test/collapse_dimensions.mlir"
    },
    {
      "type": "modify",
      "old_id": "744c802c94ac32b8d02eda8f7d1a730cb55f48ab",
      "old_mode": 33188,
      "old_path": "tests/e2e/stablehlo_ops/reverse.mlir",
      "new_id": "3d00ca188cabb659552b16fd5c998e51a1d57c78",
      "new_mode": 33188,
      "new_path": "tests/e2e/stablehlo_ops/reverse.mlir"
    }
  ]
}
