)]}'
{
  "commit": "137e36507aeeefa0aecf12bbd3fbaf2defbfe376",
  "tree": "e8fe2c00e2d6ce1da19b0b37c474214d82996732",
  "parents": [
    "5beb9ad73626beb8fd5d0e769f0923161b76ab27"
  ],
  "author": {
    "name": "Quinn Dawkins",
    "email": "quinn.dawkins@gmail.com",
    "time": "Tue Aug 20 13:23:08 2024 -0400"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Aug 20 13:23:08 2024 -0400"
  },
  "message": "[Codegen][GPU] Add pass to annotate memory spaces on allocations (#18251)\n\nTrying to infer the memory space of an allocation from within the\r\nbufferization alloc callback function is too late. This adds a\r\nrudimentary pass to annotate the memory space in obvious situations\r\nand then disallows all cases of a bufferization allocation without an\r\nalready pre-determined memory space (for the LLVMGPUTileAndFuse\r\npipeline). This gives us correctness guarantees that were somewhat hand\r\nwavy before.\r\n\r\nThis makes all allocations that aren\u0027t marked explicitly as shared (or can\r\nbe obviously inferred as shared) as thread local. Any previous lowerings\r\nthat violate this invariant is a bug (most likely from a failure to tile\r\nan operation).",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4a0b879b94ee5ff69142190432331c4e84749bf4",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/GPU/BUILD.bazel",
      "new_id": "64d0412bf76db729d89add86c4c550e5975086e0",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "eb51b3ec2408d6f1086524fbb4a401310abcabfc",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/GPU/CMakeLists.txt",
      "new_id": "5a376fdcc5e3feca1dc42c3a0b5c62b514156915",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "64fed3b038c966fb7d17a0ccd866c4d5592e7d23",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/GPUInferMemorySpace.cpp"
    },
    {
      "type": "modify",
      "old_id": "273cadfff5a845600ed6e86da64613407d4fbe17",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/GPU/GPUVerifyDistribution.cpp",
      "new_id": "fe4738034b3c578f5ed92633e20895cad3606bd7",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/GPUVerifyDistribution.cpp"
    },
    {
      "type": "modify",
      "old_id": "cec8ba43a0302a88e2d37f7db8e9d76642a084f0",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/GPU/Passes.td",
      "new_id": "f02205aae0ace9367999d0665daa0d97a476a0bd",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/Passes.td"
    },
    {
      "type": "modify",
      "old_id": "5854bd5ca9322c5b1384073d906cf4421ba2f6df",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/GPU/test/BUILD.bazel",
      "new_id": "257cbe82db800fd6a4fe9a87d135541d016dfc5e",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/test/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "a61138be693a25b2cd4f06cd0184ad421dbf8058",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/GPU/test/CMakeLists.txt",
      "new_id": "a67de538082d63df8d6b818962dfa1ce97907909",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/test/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7d1533ab5b01d547f58db5cf2d4085ef86d35291",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/test/gpu_infer_memory_space.mlir"
    },
    {
      "type": "modify",
      "old_id": "9ef45c757d634bf68c8d5f8b24e7dff5eacb90e9",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/BUILD.bazel",
      "new_id": "35bafc739f14b805e215febbc0d609bb2ae48dda",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "a5d3b0844462a1351f8fe2940bede91984e93aae",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/CMakeLists.txt",
      "new_id": "0f8b40b34bc57140bd749489d03a3e5bcaf9b85c",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "f71f616e3e32cbc98c3f7bd72f2687749fb4eeba",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/Passes.cpp",
      "new_id": "7c71f8675717668631b44d328d93165aeba8bff7",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/Passes.cpp"
    },
    {
      "type": "modify",
      "old_id": "4f5425a52b48d8dc4d9ff805a8b67004599a07c8",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/ROCDL/pipeline_tile_and_fuse.mlir",
      "new_id": "991450905b73c96b64f1cb712d9aebfe54b9aaef",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/ROCDL/pipeline_tile_and_fuse.mlir"
    },
    {
      "type": "modify",
      "old_id": "b34209ac9ba02d63903fc709939b1d227f8ecaa9",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Utils/GPUUtils.h",
      "new_id": "7cbddf4e79bc69cf8ea338e8d4f654c108a67026",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Utils/GPUUtils.h"
    }
  ]
}
