)]}'
{
  "commit": "91e73d39692f8079add68b4307edb0e63e61b347",
  "tree": "00487a526e6e8275ca0f581c5a5f6c7ba65d53eb",
  "parents": [
    "8883247a1e2004fd7ae6d91c8e3bcee03de1f797"
  ],
  "author": {
    "name": "Ben Vanik",
    "email": "ben.vanik@gmail.com",
    "time": "Fri Feb 24 22:55:37 2023 -0800"
  },
  "committer": {
    "name": "Ben Vanik",
    "email": "ben.vanik@gmail.com",
    "time": "Fri Mar 03 19:36:06 2023 -0800"
  },
  "message": "Adding requirement bits to bytecode modules and bumping version.\nThe compiler now emits per-module and per-function requirement bitfields\nthat indicate extensions needed to execute the bytecode they contain.\nThis allows for nice error messages on loading when the runtime has\ncertain extensions omitted:\n```\nD:\\Dev\\iree\\runtime\\src\\iree\\vm\\bytecode\\module.c:309: INVALID_ARGUMENT; required module features [EXT_F32] are not available in this runtime configuration; have [] while module requires [EXT_F32]; while invoking native function hal.executable.create; while calling import;\n[ 1]   native hal.executable.create:0 -\n[ 0] bytecode module.__init:446 D:\\Dev\\iree/tests/e2e/models/unidirectional_lstm.mlir:0:0\n```\n\nWhile making the breaking change I\u0027m also adding a block_count field\nto each function descriptor and a special block opcode that can be\nused for verification and disassembly. All functions now have their\nsignatures embedded (not just exports) to allow for internal function\ncall verification.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "dcf0a1bcde80aa7cc5fd32d4fee30d50260f80eb",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/API2/Internal/Embed.cpp",
      "new_id": "ca3bc2396112d0689da6f7f1e42f51d036309a3b",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/API2/Internal/Embed.cpp"
    },
    {
      "type": "modify",
      "old_id": "95317b3e2b038d6fa1912940de4fbdb0ab3b0c54",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/API2/Internal/MLIRInterop.cpp",
      "new_id": "ad09f51bba97ebbaf7302f723dd72b10a37ff676",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/API2/Internal/MLIRInterop.cpp"
    },
    {
      "type": "modify",
      "old_id": "51d191faaf63ac9f76a9dd7f41838aca6a229af2",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/ConstEval/Runtime.cpp",
      "new_id": "d14198a321d9e4e7179eac82272cddaec6b715dd",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/ConstEval/Runtime.cpp"
    },
    {
      "type": "modify",
      "old_id": "031e7d4b80beecd9b4f2b73a82d0f93af89fe6ec",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/HAL/Target/VMVX/VMVXTarget.cpp",
      "new_id": "c7016892417ba92e97d57be30d3310a3a083412c",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/HAL/Target/VMVX/VMVXTarget.cpp"
    },
    {
      "type": "modify",
      "old_id": "b170040e4b7b423f4798ecefafe7606cfa189d33",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/IR/VMOpcodesCore.td",
      "new_id": "b271b5c3bd86893a8509bdd3e3cf49fea79d9fa7",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/IR/VMOpcodesCore.td"
    },
    {
      "type": "modify",
      "old_id": "70faec2f04efd3a9e49938251839b6fd6f632294",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/IR/VMTraits.h",
      "new_id": "7a0c981ed1b712af634ae251db86170db90b67ff",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/IR/VMTraits.h"
    },
    {
      "type": "modify",
      "old_id": "43b609a1153a35e707243642c953a660ff020a10",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BUILD",
      "new_id": "9cf32a18144718e6a5a2d69ca47f2c0c8d320bf0",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BUILD"
    },
    {
      "type": "modify",
      "old_id": "85e1d4e2ee0236210d087e8f9eedd86990aaa477",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BytecodeEncoder.cpp",
      "new_id": "9dedbdbdd07bba7ecfed8eac6114bbe210ac71c7",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BytecodeEncoder.cpp"
    },
    {
      "type": "modify",
      "old_id": "f1e7eeb5b3f91f3c0999826441bd93c55c575c71",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BytecodeEncoder.h",
      "new_id": "84639806726afd86ec1a3a2485ee0dc2e0c25a5c",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BytecodeEncoder.h"
    },
    {
      "type": "modify",
      "old_id": "31cbebe123e89b093806b0ced059281fef55ba4c",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BytecodeModuleTarget.cpp",
      "new_id": "2ab87ebec388bac218ea68db7a03b4007639c3ee",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BytecodeModuleTarget.cpp"
    },
    {
      "type": "modify",
      "old_id": "6d4e884354bbe93e8bb3f1d0c3ee65019fe7fc11",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BytecodeModuleTarget.h",
      "new_id": "aeed3c18b186a741bd87418b9a1ddfdae1755e46",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/BytecodeModuleTarget.h"
    },
    {
      "type": "modify",
      "old_id": "6484f0b97fb9d055fb107621828fbfe702ca4f42",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/CMakeLists.txt",
      "new_id": "a5092dba86b050edbe7e7311ec2ddc41db66bd03",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "b654328ccb3590368086d6801d1096478f6651cb",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/TranslationRegistration.cpp",
      "new_id": "35879f81b7cce4a1ff9fd0ae276c7f629f36fb37",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/TranslationRegistration.cpp"
    },
    {
      "type": "modify",
      "old_id": "7cbdc658af328a54630fb8f42a251c39f839248d",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/test/module_encoding_smoke.mlir",
      "new_id": "3ebcb22cd04c9a07b6a701d31b965d038e6a6154",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/Target/Bytecode/test/module_encoding_smoke.mlir"
    },
    {
      "type": "modify",
      "old_id": "26d6d2171f14f87236149a42dc3f27147815c7ce",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/VM/Transforms/Passes.cpp",
      "new_id": "53baa1caabc76ff601f241cb614eba2c7050a7d0",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/VM/Transforms/Passes.cpp"
    },
    {
      "type": "modify",
      "old_id": "259ba9172fe41608c3ef3a84745db853b2fe39da",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/schemas/bytecode_module_def.fbs",
      "new_id": "a281e97db28646edc4a63a33fc6b15a33d953519",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/schemas/bytecode_module_def.fbs"
    },
    {
      "type": "modify",
      "old_id": "6b0f5bfd2de9aabfd04da3f5054b3f7345369c31",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/vm/bytecode/disassembler.c",
      "new_id": "1b38ec7d8ac3997fc21def810ed75c51e427d7a2",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/vm/bytecode/disassembler.c"
    },
    {
      "type": "modify",
      "old_id": "94c987dba1a106eb6a40ae5dc64ce4a1d063db3d",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/vm/bytecode/dispatch.c",
      "new_id": "592adb35e77b44f9b78b7bd67ea1c98b4bbb80ed",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/vm/bytecode/dispatch.c"
    },
    {
      "type": "modify",
      "old_id": "b1f3a0b10dc5f74495c0ba08c885ecfb069c4aa9",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/vm/bytecode/generated/op_table.h",
      "new_id": "3ad3c5bc4acc8a2667bd25501277361cffda8c77",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/vm/bytecode/generated/op_table.h"
    },
    {
      "type": "modify",
      "old_id": "b122f7340cbe94c046235caa8a049263333605f7",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/vm/bytecode/module.c",
      "new_id": "83739a8a4ae515ead01a5a3bc5f5920beb071275",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/vm/bytecode/module.c"
    },
    {
      "type": "modify",
      "old_id": "6090f94643e3400d82bb7ae99802bbcaa4cff38c",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/vm/bytecode/module_impl.h",
      "new_id": "2b9728dc8092b1b56a2d135077d2b1293944f08d",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/vm/bytecode/module_impl.h"
    },
    {
      "type": "modify",
      "old_id": "9f21cb345693e2f22778980bd6a6586f3d61fc21",
      "old_mode": 33188,
      "old_path": "tests/compiler_driver/smoketest.mlir",
      "new_id": "b7fc9540e4ad93b32d55e35b4b2746533adcea77",
      "new_mode": 33188,
      "new_path": "tests/compiler_driver/smoketest.mlir"
    },
    {
      "type": "modify",
      "old_id": "1a252e8c88a152a3841a5f8b19f460ac31d205c9",
      "old_mode": 33188,
      "old_path": "tools/iree-run-mlir-main.cc",
      "new_id": "d7830fb5d1fc1081e5daa82f422e9d014c0a4adf",
      "new_mode": 33188,
      "new_path": "tools/iree-run-mlir-main.cc"
    }
  ]
}
