)]}'
{
  "commit": "7a6674622603c76274959a9797c0fafb4bc84c44",
  "tree": "d9b2f711ae967a4ccbcb231b9b6a381e3da2e301",
  "parents": [
    "3a5af231fd3af4b5890ed28f7792b17e56386ffd"
  ],
  "author": {
    "name": "Charitha Saumya",
    "email": "136391709+charithaintc@users.noreply.github.com",
    "time": "Thu May 08 10:35:32 2025 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu May 08 10:35:32 2025 -0700"
  },
  "message": "[mlir][xegpu] Handle scalar uniform ops in SIMT distribution.  (#138593)\n\nThis PR adds support for moving scalar uniform (gpu index ops, constants\netc) outside the `gpu.warp_execute_on_lane0` op. These kinds of ops do\nnot require distribution and are safe to move out of the warp op. This\nalso avoid adding separate distribution patterns for these ops.\n\nExample:\n```\n   %1 \u003d gpu.warp_execute_on_lane_0(%laneid) -\u003e (index) {\n     ...\n     %block_id_x \u003d gpu.block_id x\n     gpu.yield %block_id_x\n   }\n  // use %1\n```\nTo:\n```\n   %block_id_x \u003d gpu.block_id x\n   %1 \u003d gpu.warp_execute_on_lane_0(%laneid) -\u003e (index) {\n     ...\n     \n     gpu.yield %block_id_x\n   }\n  // use %1\n\n```",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "deb3a35529ad097826f6a3085669583f6531c94f",
      "old_mode": 33188,
      "old_path": "mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp",
      "new_id": "7f783cd2ff39f210dba28cd8c142eada403ec1c1",
      "new_mode": 33188,
      "new_path": "mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp"
    },
    {
      "type": "modify",
      "old_id": "f8f2cd55c28d07a7c0b6880c6fd413d0e9572652",
      "old_mode": 33188,
      "old_path": "mlir/test/Dialect/XeGPU/subgroup-distribution.mlir",
      "new_id": "4e50771c26283a7c871d56a23b338b123c96812f",
      "new_mode": 33188,
      "new_path": "mlir/test/Dialect/XeGPU/subgroup-distribution.mlir"
    }
  ]
}
