)]}'
{
  "commit": "8e88ee0cc5400333351c92be69224e640b1b394a",
  "tree": "3976a91a3830e9045ee75845ed1f215ec790ecdf",
  "parents": [
    "3c6634d15fe3e082c5ae4a4c313dd9bab4033e09"
  ],
  "author": {
    "name": "Tor Jeremiassen",
    "email": "torerik@google.com",
    "time": "Mon Nov 03 12:28:34 2025 -0600"
  },
  "committer": {
    "name": "Tor Jeremiassen",
    "email": "torerik@google.com",
    "time": "Tue Nov 04 15:23:44 2025 -0600"
  },
  "message": "Adds exceptions on instruction decoding when the C bit is not set in MISA.\n\nAlso refactors the instruction decoders to reduce code duplication.\n\nPiperOrigin-RevId: 827555953\nChange-Id: I4f5da71e4d84c4c5866291f43d6fb6406f10a84d\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8d7eab3382d5f7be5f89ad0c734605998de279e4",
      "old_mode": 33188,
      "old_path": "riscv/BUILD",
      "new_id": "8429369d6d84331fd5786db449540282c74b7969",
      "new_mode": 33188,
      "new_path": "riscv/BUILD"
    },
    {
      "type": "modify",
      "old_id": "c63a7c3f32af455e465b51ad52af60e60d224424",
      "old_mode": 33188,
      "old_path": "riscv/riscv32_decoder.cc",
      "new_id": "847c03eb52ff6c70a189c04bfc960caacdc8fdec",
      "new_mode": 33188,
      "new_path": "riscv/riscv32_decoder.cc"
    },
    {
      "type": "modify",
      "old_id": "e557ef84d3a656beec14ab9a8b479933bd2a3fc5",
      "old_mode": 33188,
      "old_path": "riscv/riscv32_decoder.h",
      "new_id": "4926a79bdc6ace4330b6315034b876c442c1c60e",
      "new_mode": 33188,
      "new_path": "riscv/riscv32_decoder.h"
    },
    {
      "type": "modify",
      "old_id": "3c2de3f7479fb3944e961af00dbaeb9aea211d07",
      "old_mode": 33188,
      "old_path": "riscv/riscv32g_bitmanip_decoder.cc",
      "new_id": "220a4664b21379e4cde57cc05bd96c856463deb9",
      "new_mode": 33188,
      "new_path": "riscv/riscv32g_bitmanip_decoder.cc"
    },
    {
      "type": "modify",
      "old_id": "7c66ab16f22006faec04aa8418ce062dc769ae22",
      "old_mode": 33188,
      "old_path": "riscv/riscv32g_bitmanip_decoder.h",
      "new_id": "8a54958367bbaafb7451d7190f591bfe66b51d79",
      "new_mode": 33188,
      "new_path": "riscv/riscv32g_bitmanip_decoder.h"
    },
    {
      "type": "modify",
      "old_id": "49b0da8d74cfe8ee25a50d5d394c9e7bd9041ac7",
      "old_mode": 33188,
      "old_path": "riscv/riscv32g_vec_decoder.cc",
      "new_id": "f9f29394af10a8ca89d1f55b4ae85856d9dd02a7",
      "new_mode": 33188,
      "new_path": "riscv/riscv32g_vec_decoder.cc"
    },
    {
      "type": "modify",
      "old_id": "f75ede6348aef409d55c8d87458e953b75d1b2b8",
      "old_mode": 33188,
      "old_path": "riscv/riscv32g_vec_decoder.h",
      "new_id": "a6c38e988524aa4982331135d194d72303fd4215",
      "new_mode": 33188,
      "new_path": "riscv/riscv32g_vec_decoder.h"
    },
    {
      "type": "modify",
      "old_id": "331863749bd54812ac7e1a6e738bedf15d4efbc8",
      "old_mode": 33188,
      "old_path": "riscv/riscv32gzb_vec_decoder.cc",
      "new_id": "c4e2498c8aed4e491a168f96125bba8fb2ebaa20",
      "new_mode": 33188,
      "new_path": "riscv/riscv32gzb_vec_decoder.cc"
    },
    {
      "type": "modify",
      "old_id": "b5cc9e91ef090fa813e55f8764eb891d0e72c625",
      "old_mode": 33188,
      "old_path": "riscv/riscv32gzb_vec_decoder.h",
      "new_id": "8039cead3c5fc130c18dbde0a81f9c7490ab8e78",
      "new_mode": 33188,
      "new_path": "riscv/riscv32gzb_vec_decoder.h"
    },
    {
      "type": "modify",
      "old_id": "39da4343ec41b02aeed6e449314cab2d3103999c",
      "old_mode": 33188,
      "old_path": "riscv/riscv64_decoder.cc",
      "new_id": "3bb579c34931781cdaf3299644ad2b162894d78e",
      "new_mode": 33188,
      "new_path": "riscv/riscv64_decoder.cc"
    },
    {
      "type": "modify",
      "old_id": "6d5422f9ba4ee01cc866fb778cf4c273bcf5e650",
      "old_mode": 33188,
      "old_path": "riscv/riscv64_decoder.h",
      "new_id": "a109899f4e62a17711564b4b785f6516dd344ce9",
      "new_mode": 33188,
      "new_path": "riscv/riscv64_decoder.h"
    },
    {
      "type": "modify",
      "old_id": "a69b5379ed46a45e2f81a0ac0b834ef56104b5d1",
      "old_mode": 33188,
      "old_path": "riscv/riscv64g_bitmanip_decoder.cc",
      "new_id": "c6adf3fb2e1d3602545d2aa983187a87ca67ed6a",
      "new_mode": 33188,
      "new_path": "riscv/riscv64g_bitmanip_decoder.cc"
    },
    {
      "type": "modify",
      "old_id": "683dbde00f49f18af969231b6406b427bdeac5d8",
      "old_mode": 33188,
      "old_path": "riscv/riscv64g_bitmanip_decoder.h",
      "new_id": "847243ab2a9c7551217514abb02ef218f40fd87a",
      "new_mode": 33188,
      "new_path": "riscv/riscv64g_bitmanip_decoder.h"
    },
    {
      "type": "modify",
      "old_id": "f3fde6e8b7dc27c815b5d8e11675d9a435be8770",
      "old_mode": 33188,
      "old_path": "riscv/riscv64g_vec_decoder.cc",
      "new_id": "9707e0952ae8b6e16884e601b88722a5fd2c17e1",
      "new_mode": 33188,
      "new_path": "riscv/riscv64g_vec_decoder.cc"
    },
    {
      "type": "modify",
      "old_id": "9a651cfa2ac67b96cb69965f4450668a2a56050b",
      "old_mode": 33188,
      "old_path": "riscv/riscv64g_vec_decoder.h",
      "new_id": "0b584f1016e5a177669019a0c7e8526fa75c6269",
      "new_mode": 33188,
      "new_path": "riscv/riscv64g_vec_decoder.h"
    },
    {
      "type": "modify",
      "old_id": "a578f89313830e9a3541315af501cf5f7e58932a",
      "old_mode": 33188,
      "old_path": "riscv/riscv64gzb_vec_decoder.cc",
      "new_id": "bc5bbbef3365e75cbf068f395b9be092bc17cb17",
      "new_mode": 33188,
      "new_path": "riscv/riscv64gzb_vec_decoder.cc"
    },
    {
      "type": "modify",
      "old_id": "723defba04d4fd99345a92bba921e9ee779f2502",
      "old_mode": 33188,
      "old_path": "riscv/riscv64gzb_vec_decoder.h",
      "new_id": "954e56be70a3f4469772fa2ff65be25994927445",
      "new_mode": 33188,
      "new_path": "riscv/riscv64gzb_vec_decoder.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9e24d9bb9432c5c62b761eb16b98ca010f8365bc",
      "new_mode": 33188,
      "new_path": "riscv/riscv_generic_decoder.h"
    },
    {
      "type": "modify",
      "old_id": "63c5aaa78c933f08a2e2d2cb31cba0ea09dc588c",
      "old_mode": 33188,
      "old_path": "riscv/riscv_state.h",
      "new_id": "f04d56da1a357b74547c69f71fb6c1c8723256c0",
      "new_mode": 33188,
      "new_path": "riscv/riscv_state.h"
    },
    {
      "type": "modify",
      "old_id": "a41ea0ca049ea2171d8033d9659d32d7004eda22",
      "old_mode": 33188,
      "old_path": "riscv/test/BUILD",
      "new_id": "3d0b397297b12fe869132155ab00161828af5e16",
      "new_mode": 33188,
      "new_path": "riscv/test/BUILD"
    },
    {
      "type": "modify",
      "old_id": "a679ba3f4376dc970e1999e4ef8fd96414c53cf6",
      "old_mode": 33188,
      "old_path": "riscv/test/riscv32_bitmanip_instructions_test.cc",
      "new_id": "0b526d69023ce989eef6f1c23d98f181756de8c3",
      "new_mode": 33188,
      "new_path": "riscv/test/riscv32_bitmanip_instructions_test.cc"
    },
    {
      "type": "modify",
      "old_id": "a0d2d91a661531f5a8f71aac0068b718fdabf0da",
      "old_mode": 33188,
      "old_path": "riscv/test/riscv32_decoder_test.cc",
      "new_id": "282238d0db3ef71b5840089da9a6e7c487e554bd",
      "new_mode": 33188,
      "new_path": "riscv/test/riscv32_decoder_test.cc"
    },
    {
      "type": "modify",
      "old_id": "e4461a57969e4d1cf3594e2ef305ebbb62cdf693",
      "old_mode": 33188,
      "old_path": "riscv/test/riscv64_decoder_test.cc",
      "new_id": "41f3911b0e40a8550583d5677b84eaabf9e2e1d3",
      "new_mode": 33188,
      "new_path": "riscv/test/riscv64_decoder_test.cc"
    }
  ]
}
