)]}'
{
  "commit": "ea72d000f9ed3e11fb3192177aaf2ecd11bee4e8",
  "tree": "65875f3573e83254bc9919e8178e6abada2ffcf0",
  "parents": [
    "34d2446a50a94668ef878f49d76844980e6385cc"
  ],
  "author": {
    "name": "Max191",
    "email": "44243577+Max191@users.noreply.github.com",
    "time": "Thu Jan 29 12:00:23 2026 -0500"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Jan 29 12:00:23 2026 -0500"
  },
  "message": "[GPU] Don\u0027t swap expand with slice in the same block (#23267)\n\nPrevents swapping tensor.extract_slice ops with tensor.expand_shape ops\nwhen they are in the same block during GPUFuseAndHoistParallelLoops.\nThis pattern is intended to be a tiling fusion pattern for\ntensor.expand_shape operations, which always begin with the ops in\ndifferent blocks. When the ops are in the same block, this does not open\nup more fusions, and instead moves the extract_slice further compute ops\nthat produce loads. This can block later optimizations that fold the\nslice into loading operations like vector.transfer_read.\n\nThis restriction is done through a control function to maintain the\nability to swap same-block slice + expand ops, in case it is needed for\nother use cases.\n\nci-extra: test_torch\n\n---------\n\nSigned-off-by: Max Dawkins \u003cmax.dawkins@gmail.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "48f4e11ba04c3f3189b53d7b3d5e78a34ac1a7c8",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/GPU/GPUFuseAndHoistParallelLoops.cpp",
      "new_id": "d8230ef343d6829037f2a269e81dd3fc9bf1aa55",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/GPUFuseAndHoistParallelLoops.cpp"
    },
    {
      "type": "modify",
      "old_id": "278dcdb894747dcbfa2f260811f9282eeaa03dc4",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/GPU/test/gpu_fuse_and_hoist_forall.mlir",
      "new_id": "baaa99c39bab9799cc0995d6380111081276877f",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/test/gpu_fuse_and_hoist_forall.mlir"
    },
    {
      "type": "modify",
      "old_id": "945ffdffb3a38ba775972cffdb52274203c07b7d",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/Transforms.cpp",
      "new_id": "311bd8e1f1f680c7c2c5004310466256cb5b5419",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/Transforms.cpp"
    },
    {
      "type": "modify",
      "old_id": "413cfb17a584fe7965d1f502e86dabfc07b0c634",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/Transforms.h",
      "new_id": "5d77f550bcb4d3ef7d410e27598f45f9e584b7ab",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/Transforms.h"
    },
    {
      "type": "modify",
      "old_id": "ea58e80c70a7c74aa77aa0bd8d230b7cde1639d3",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/ROCDL/pipeline_igemm_tile_and_fuse.mlir",
      "new_id": "2ff6547fb995f7173baf7f395314bce74f0392a9",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/ROCDL/pipeline_igemm_tile_and_fuse.mlir"
    }
  ]
}
