)]}'
{
  "commit": "886ac3e269454180b149abd68e230ca079a3744a",
  "tree": "df37444e6154c5a0aaaf15a8ecb684d9c35ec2d8",
  "parents": [
    "f1bbc5703cd907133b885e5807a09bd1afd5d3b8"
  ],
  "author": {
    "name": "bjacob",
    "email": "benoitjacob@google.com",
    "time": "Tue Mar 07 14:25:01 2023 -0500"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Mar 07 14:25:01 2023 -0500"
  },
  "message": "Centralize CPU features, fix `iree_cpu_lookup_data_by_key`, add a `iree-cpuinfo` tool (#12498)\n\nThe starting point of this PR was that I realized that I had forgotten\r\nto update `iree_cpu_lookup_data_by_key`.\r\n\r\nThat sent me looking for a way to have it automatically sync\u0027d with the\r\nrest of the code, resulting in the present `.inl` approach.\r\n\r\nAs a bonus, I added a `iree-cpuinfo` tool, also automatically sync\u0027d\r\nwith the `.inl` and just a few lines of impl. This is a quick debugging\r\ntool allowing to answer quickly the question \"which CPU features are we\r\nactually detecting on this machine\". Obviously the point is not provide\r\nthe best CPU feature detection tool, the point is that it\u0027s by\r\nconstruction bug-for-bug equivalent to IREE\u0027s actual CPU feature\r\ndetection.\r\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3bc25f1a168e1155ec105adb30f78a23ffbb8c70",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/base/internal/cpu.c",
      "new_id": "66f784c6358271bf664b25bd8f1520c18f3a212a",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/base/internal/cpu.c"
    },
    {
      "type": "modify",
      "old_id": "1abd987b602c1e7e082c0d3d7533bea126a4d47e",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/base/target_platform.h",
      "new_id": "376fb27fa5313123687929a24b14d4e252cca6b7",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/base/target_platform.h"
    },
    {
      "type": "modify",
      "old_id": "6f4464a43e4b9ae6a7fe616a5b1d23efe1cadbbf",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/schemas/BUILD",
      "new_id": "33af0e2bdb0a01cef50c0c0b79d0c0a2b98efbf5",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/schemas/BUILD"
    },
    {
      "type": "modify",
      "old_id": "78a8e9ac9caa26ed34803fa0a4a7e8bfb9e85832",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/schemas/CMakeLists.txt",
      "new_id": "5e9696218b598502d38acc5bc64b44e51bddaea5",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/schemas/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "50a4ab32161848aa83b1cd69d86d1696c90b6a7c",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/schemas/cpu_data.h",
      "new_id": "46df305ad8c79dca679e4669cba00abc810058fb",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/schemas/cpu_data.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "93ef0a92ea98d39b98b20a0ff4ac5c0b89cae33e",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/schemas/cpu_feature_bits.inl"
    },
    {
      "type": "modify",
      "old_id": "a6bdb90792f4049ddbcc48cd0f78e24dd05016e9",
      "old_mode": 33188,
      "old_path": "tools/BUILD",
      "new_id": "c21ee686988ab36491d2cc5b004351a608e75be2",
      "new_mode": 33188,
      "new_path": "tools/BUILD"
    },
    {
      "type": "modify",
      "old_id": "7d37b6cdb9b4871ed5689934c0a1b1ea735caccd",
      "old_mode": 33188,
      "old_path": "tools/CMakeLists.txt",
      "new_id": "aac88a35060171664659606c4856de5600f74230",
      "new_mode": 33188,
      "new_path": "tools/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d7404652d2b112a5bd5959210fc689aa9efdc8ff",
      "new_mode": 33188,
      "new_path": "tools/iree-cpuinfo.c"
    }
  ]
}
