)]}'
{
  "commit": "d1d03cb7e620564fe81d4db70233f0c72f3de777",
  "tree": "b8839d05d958527664be8241a8e336cbcaafa4b8",
  "parents": [
    "b41df2ff65860eb8ed0d7333075b59f86da249a2"
  ],
  "author": {
    "name": "Lei Zhang",
    "email": "antiagainst@google.com",
    "time": "Mon Aug 07 13:52:56 2023 -0400"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Mon Aug 07 10:52:56 2023 -0700"
  },
  "message": "[metal] Move to hal/drivers and default build for Apple silicon (#14129)\n\nThis commit moves the metal HAL driver from the `experimental/`\r\ndirectory to the `iree/hal/drivers/`, and turns on building by\r\ndefault for arm64 Apple devices. x86_64 Apple devices are not\r\nsupported right now with missing features and such; that\u0027s to\r\ncome later.\r\n\r\nThese existing code is already extensively reviewed and passing\r\nvarious in-tree tests. Further improvements are for performance\r\nand tracked in https://github.com/openxla/iree/issues/14050.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d82e8e9de72b6d9b4904d8a874d7f62ae5101767",
      "old_mode": 33188,
      "old_path": ".github/CODEOWNERS",
      "new_id": "96db1034d2fcaff67266f45a6005f56bf20f7e62",
      "new_mode": 33188,
      "new_path": ".github/CODEOWNERS"
    },
    {
      "type": "modify",
      "old_id": "9493b1b12079de693b562ec4f8280b3cf784181a",
      "old_mode": 33188,
      "old_path": "CMakeLists.txt",
      "new_id": "441769753211a779819db1af2af4d08165edadf4",
      "new_mode": 33188,
      "new_path": "CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "a474b170bf1968e0302fd82bdaaab853ba44b216",
      "old_mode": 33188,
      "old_path": "docs/website/docs/index.md",
      "new_id": "f345f77202d92bbdbcd9e6249bc3cdf1259a0483",
      "new_mode": 33188,
      "new_path": "docs/website/docs/index.md"
    },
    {
      "type": "delete",
      "old_id": "33551b5769745f1f44939dee0c0a7b6de19f356b",
      "old_mode": 33188,
      "old_path": "experimental/metal/tests/CMakeLists.txt",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "e4e05d081731a5fc5f0e95b17f63fe6d1700432a",
      "old_mode": 33188,
      "old_path": "experimental/metal/tests/stablehlo_ops/CMakeLists.txt",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "161a9fc5ce5ddce4936b0aeed3a87d8cf6a6c655",
      "old_mode": 33188,
      "old_path": "experimental/metal/tests/tosa_ops/CMakeLists.txt",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "711b493e829031db90c304eafe3dc111e54d482b",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/hal/drivers/CMakeLists.txt",
      "new_id": "ac9906f8ea5d2b4eb0da597cdac84b62e4f69d0a",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "f39140d1213db2c1957443a5010ad502cf887dff",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/hal/drivers/init.c",
      "new_id": "e2d1f659f4b62bb98f274d754bf2aa5d43dcba06",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/init.c"
    },
    {
      "type": "rename",
      "old_id": "88b75030fd0e6f22b7aed66b10e2a2d8dc658d98",
      "old_mode": 33188,
      "old_path": "experimental/metal/CMakeLists.txt",
      "new_id": "384005dff4bf88037cc3c215336ca3a15c9e1fa2",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/CMakeLists.txt",
      "score": 83
    },
    {
      "type": "rename",
      "old_id": "5eecd362d393cf4c9037e328231c31ab1aa2b249",
      "old_mode": 33188,
      "old_path": "experimental/metal/README.md",
      "new_id": "4ec5abe6fb4ac22814bd082535f54379fb327129",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/README.md",
      "score": 97
    },
    {
      "type": "rename",
      "old_id": "b2c9728f2621fc0c2b7c898cf20ea11085ba6d70",
      "old_mode": 33188,
      "old_path": "experimental/metal/api.h",
      "new_id": "f8056c49aa7c8017a6788585cb58bf79bee8d42e",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/api.h",
      "score": 96
    },
    {
      "type": "rename",
      "old_id": "5c0c0e10e1272cfe1640ac0b6b9d93d78a13a4ee",
      "old_mode": 33188,
      "old_path": "experimental/metal/builtin/CMakeLists.txt",
      "new_id": "5c0c0e10e1272cfe1640ac0b6b9d93d78a13a4ee",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/builtin/CMakeLists.txt",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "ea66a5d715daeb50c908d6cafe5344a341fa9558",
      "old_mode": 33188,
      "old_path": "experimental/metal/builtin/copy_buffer_generic.metal",
      "new_id": "ea66a5d715daeb50c908d6cafe5344a341fa9558",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/builtin/copy_buffer_generic.metal",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "64ac2df38ec821d1f856c229513a884efed7a547",
      "old_mode": 33188,
      "old_path": "experimental/metal/builtin/fill_buffer_generic.metal",
      "new_id": "64ac2df38ec821d1f856c229513a884efed7a547",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/builtin/fill_buffer_generic.metal",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "a50ba6f5f32e0c994a2bbd01b18c7db65f69dec1",
      "old_mode": 33188,
      "old_path": "experimental/metal/builtin_executables.h",
      "new_id": "08fc065e3811b97a8e4b14e8cf767ffb0715db40",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/builtin_executables.h",
      "score": 91
    },
    {
      "type": "rename",
      "old_id": "e20ff0269f528b8df4ecd8471c529416e9ff975f",
      "old_mode": 33188,
      "old_path": "experimental/metal/builtin_executables.m",
      "new_id": "77912ab9afee369e25459512a419a5091f43905b",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/builtin_executables.m",
      "score": 98
    },
    {
      "type": "rename",
      "old_id": "543d8c3c6ff5d436855f2631e10c34a4d907a622",
      "old_mode": 33188,
      "old_path": "experimental/metal/cts/CMakeLists.txt",
      "new_id": "4d99591808ce23a387d6a878aed6933fb3ef87be",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/cts/CMakeLists.txt",
      "score": 82
    },
    {
      "type": "rename",
      "old_id": "ae39a181789948311482ec6a67e92c8d128a6540",
      "old_mode": 33188,
      "old_path": "experimental/metal/direct_allocator.h",
      "new_id": "bbd460916ce8f586a8546079744784a318bdaebf",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/direct_allocator.h",
      "score": 87
    },
    {
      "type": "rename",
      "old_id": "99968996b1019fcf63febd54b33e09630b38731a",
      "old_mode": 33188,
      "old_path": "experimental/metal/direct_allocator.m",
      "new_id": "0b3a84122ae184e0c8873f37238daa79429c2353",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/direct_allocator.m",
      "score": 98
    },
    {
      "type": "rename",
      "old_id": "7ab8a6e073a8c8ae392c40fd37771df282d64a27",
      "old_mode": 33188,
      "old_path": "experimental/metal/direct_command_buffer.h",
      "new_id": "49e82a514498a456750e8c6fd0d570aefcdfd490",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/direct_command_buffer.h",
      "score": 86
    },
    {
      "type": "rename",
      "old_id": "c3dfdf029abb43079525b336a16b91142c8b6973",
      "old_mode": 33188,
      "old_path": "experimental/metal/direct_command_buffer.m",
      "new_id": "a833ed9da547b4a8ba9efa38fd9502615b138cdd",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/direct_command_buffer.m",
      "score": 98
    },
    {
      "type": "rename",
      "old_id": "9cb11e71239758f8604614c7bb61f808a11e763d",
      "old_mode": 33188,
      "old_path": "experimental/metal/kernel_library.h",
      "new_id": "aa7c95742b7722438044a88a50d321b479f3c021",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/kernel_library.h",
      "score": 92
    },
    {
      "type": "rename",
      "old_id": "156b7d3bb7beeaed6c7ed34dbb15fc4dfc2a77d9",
      "old_mode": 33188,
      "old_path": "experimental/metal/kernel_library.m",
      "new_id": "f759f5e69c3b98beb1ad10641a006143e99574f9",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/kernel_library.m",
      "score": 99
    },
    {
      "type": "rename",
      "old_id": "b7f0b6549f57bf0442702d941df65da33ece88d4",
      "old_mode": 33188,
      "old_path": "experimental/metal/metal_buffer.h",
      "new_id": "2325b7436e87df79e81d9dacd32c6e31c284c596",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/metal_buffer.h",
      "score": 89
    },
    {
      "type": "rename",
      "old_id": "5fa909edc01af82f5f3778bbfa45501daff63cce",
      "old_mode": 33188,
      "old_path": "experimental/metal/metal_buffer.m",
      "new_id": "9ec1a85942aa9e6daceb048a97e02c1e8437f098",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/metal_buffer.m",
      "score": 97
    },
    {
      "type": "rename",
      "old_id": "3348913fadf1f719725e0eab9122406768aeb10e",
      "old_mode": 33188,
      "old_path": "experimental/metal/metal_device.h",
      "new_id": "0013733fcfe7cd5962cb68d40b3b6eb05c3058f3",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/metal_device.h",
      "score": 83
    },
    {
      "type": "rename",
      "old_id": "e01442ce8aa4b23a83ee026e2d28d7cdc473e1b5",
      "old_mode": 33188,
      "old_path": "experimental/metal/metal_device.m",
      "new_id": "4deb54df7fb042e6454601cc6bb1f31533dd570f",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/metal_device.m",
      "score": 97
    },
    {
      "type": "rename",
      "old_id": "9f7be100cd018974c9cadeec520b300d054c4344",
      "old_mode": 33188,
      "old_path": "experimental/metal/metal_driver.m",
      "new_id": "993b5ac366c6477624fde632d326428ac6726530",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/metal_driver.m",
      "score": 99
    },
    {
      "type": "rename",
      "old_id": "a75856561aeda0cfd5b05aea19bf89ad685b899d",
      "old_mode": 33188,
      "old_path": "experimental/metal/nop_executable_cache.h",
      "new_id": "507b4c348662456ddda7f378e05361d1c01858f7",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/nop_executable_cache.h",
      "score": 82
    },
    {
      "type": "rename",
      "old_id": "ace2c82a4e5221474e0c29702b8d498ed14e3101",
      "old_mode": 33188,
      "old_path": "experimental/metal/nop_executable_cache.m",
      "new_id": "347ce7d72a7a529a751f743532d122f9f4524419",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/nop_executable_cache.m",
      "score": 96
    },
    {
      "type": "rename",
      "old_id": "63ed66b5a2b772df707c0fc26ddd747c29486b00",
      "old_mode": 33188,
      "old_path": "experimental/metal/pipeline_layout.h",
      "new_id": "b97225b4b9d83ade1d6e74e27645d9ff7ad5ded2",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/pipeline_layout.h",
      "score": 95
    },
    {
      "type": "rename",
      "old_id": "4a687ed19365f771348ad2fead41c22ee72793f9",
      "old_mode": 33188,
      "old_path": "experimental/metal/pipeline_layout.m",
      "new_id": "b7899bb901b01c2fe628e8cbf749e6af529e4ea7",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/pipeline_layout.m",
      "score": 98
    },
    {
      "type": "rename",
      "old_id": "b4691a0c7ed1325c59526ed5dc95d29ce9fd05d0",
      "old_mode": 33188,
      "old_path": "experimental/metal/registration/CMakeLists.txt",
      "new_id": "0280231a44263bcbe0c0767790da7827abff6f3f",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/registration/CMakeLists.txt",
      "score": 93
    },
    {
      "type": "rename",
      "old_id": "da3569804afda63d814438d79ad95c3018d1425b",
      "old_mode": 33188,
      "old_path": "experimental/metal/registration/driver_module.c",
      "new_id": "d2e20ebe340ddf1a9881db5820b83800bb32ffa1",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/registration/driver_module.c",
      "score": 96
    },
    {
      "type": "rename",
      "old_id": "abdef86556cbab99c08e00d9966ea64ccc73ed69",
      "old_mode": 33188,
      "old_path": "experimental/metal/registration/driver_module.h",
      "new_id": "72acfde1c27e0b22e927dedc29b8e19b6de54ef2",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/registration/driver_module.h",
      "score": 72
    },
    {
      "type": "rename",
      "old_id": "7961dcef39d59d30800873814d55e37298bb062a",
      "old_mode": 33188,
      "old_path": "experimental/metal/shared_event.h",
      "new_id": "4e3b8274e130b9f976dba08531663e2627dd8d24",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/shared_event.h",
      "score": 89
    },
    {
      "type": "rename",
      "old_id": "796707f226ef241a07bd5bae91f21e449a8a576f",
      "old_mode": 33188,
      "old_path": "experimental/metal/shared_event.m",
      "new_id": "fee92a13d3c4052c44ae64393898dc1db8566099",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/shared_event.m",
      "score": 99
    },
    {
      "type": "rename",
      "old_id": "c46df94e2471cd19434cbbbed6d81f3e39be165f",
      "old_mode": 33188,
      "old_path": "experimental/metal/staging_buffer.h",
      "new_id": "63c6ea1c3bd3a0957af2a317d33edcc75a930e3e",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/staging_buffer.h",
      "score": 95
    },
    {
      "type": "rename",
      "old_id": "08791b4678e2f9f06c0a180fcf5464939de66b32",
      "old_mode": 33188,
      "old_path": "experimental/metal/staging_buffer.m",
      "new_id": "a7eb80603236def59043ce801677ec724ed571c6",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/metal/staging_buffer.m",
      "score": 98
    },
    {
      "type": "modify",
      "old_id": "451a00373dd57bb63ab8343e4f2a1902be3c235f",
      "old_mode": 33188,
      "old_path": "tests/e2e/stablehlo_ops/CMakeLists.txt",
      "new_id": "ccd338895788878b7194d6ca43f59ce4a3bd696f",
      "new_mode": 33188,
      "new_path": "tests/e2e/stablehlo_ops/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "296c223abe37ea78b16dcfc026643c55131d1762",
      "old_mode": 33188,
      "old_path": "tests/e2e/tosa_ops/CMakeLists.txt",
      "new_id": "a4a0d7ea99ab42ea17d0b2d3b46f921879ed974b",
      "new_mode": 33188,
      "new_path": "tests/e2e/tosa_ops/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "a0fb766752859f714b1b7d104327896517ffcd40",
      "old_mode": 33188,
      "old_path": "tools/build_config_template.txt.in",
      "new_id": "fa4263e125cb1c320a6ca9ada85b808053cf309b",
      "new_mode": 33188,
      "new_path": "tools/build_config_template.txt.in"
    }
  ]
}
