)]}'
{
  "commit": "c801de5ebac0e3363570c23f3857848011d8d4e3",
  "tree": "c665056cef1e4c0e22495ed027d11a8710881f6e",
  "parents": [
    "4103e870c8f57e3a33a434a2521653c54a1cbd48"
  ],
  "author": {
    "name": "Aaron Webster",
    "email": "awebster@gmail.com",
    "time": "Thu Jan 29 14:34:52 2026 -0800"
  },
  "committer": {
    "name": "Aaron Webster",
    "email": "awebster@gmail.com",
    "time": "Thu Jan 29 14:34:52 2026 -0800"
  },
  "message": "Update prelude to support 128-bit integers and enhance tests\n\n- Update prelude.emb to allow UInt and Int sizes up to 128 bits\n  (previously limited to 64 bits). Added documentation noting that\n  128-bit support requires platform support (__uint128_t/__int128_t).\n\n- Update constraints_test.py to test with sizes \u003e 128 bits now that\n  128-bit fields are valid.\n\n- Add comprehensive unit tests for 128-bit integer support:\n  - emboss_bit_util_test.cc: ByteSwap, MaskToNBits, IsPowerOfTwo tests\n  - emboss_memory_util_test.cc: MemoryAccessor, BitBlock tests for\n    128-bit values including non-full-width (72, 96 bits) and\n    cross-64-bit-boundary operations\n  - emboss_prelude_test.cc: UIntView and IntView tests for 128-bit\n    read/write, sign extension, and CouldWriteValue\n\n- Add int128_sizes_test.cc integration test for generated code with\n  128-bit integer fields (UInt128Sizes, Int128Sizes, big-endian\n  variants, and arrays).\n\n- Update int128_sizes.emb documentation and remove AnonymousBits128\n  struct (128-bit bits types require separate implementation work).\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bdd6e6104a2f71a88757d08e103469f07d13d7fa",
      "old_mode": 33188,
      "old_path": "compiler/back_end/cpp/BUILD",
      "new_id": "e7f6d22c7a68b5dbad952549ab4a0092229531cd",
      "new_mode": 33188,
      "new_path": "compiler/back_end/cpp/BUILD"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5d2f7b65e2666f912a91631eb051ae400867f9e8",
      "new_mode": 33188,
      "new_path": "compiler/back_end/cpp/testcode/int128_sizes_test.cc"
    },
    {
      "type": "modify",
      "old_id": "fb790a90d1fc08c743ee2dfa6651c53ea8bdae3c",
      "old_mode": 33188,
      "old_path": "compiler/front_end/constraints_test.py",
      "new_id": "eaba4092f3edb34271f432fcafdb7dbbe1ffc82c",
      "new_mode": 33188,
      "new_path": "compiler/front_end/constraints_test.py"
    },
    {
      "type": "modify",
      "old_id": "5a54251c31195d52ab30cfeeb3ed6d38736b71e2",
      "old_mode": 33188,
      "old_path": "compiler/front_end/prelude.emb",
      "new_id": "53c83feb606e60df218cefcd0edc7e31d35ad005",
      "new_mode": 33188,
      "new_path": "compiler/front_end/prelude.emb"
    },
    {
      "type": "modify",
      "old_id": "83db86ca96a6e9cadc0862d90809ad29251b484e",
      "old_mode": 33188,
      "old_path": "runtime/cpp/test/emboss_bit_util_test.cc",
      "new_id": "0592bf31f3273ddbad72e6cfc584fdb88cf393a4",
      "new_mode": 33188,
      "new_path": "runtime/cpp/test/emboss_bit_util_test.cc"
    },
    {
      "type": "modify",
      "old_id": "18310857cc89ddee232e8efe9f43f83ca76cfac3",
      "old_mode": 33188,
      "old_path": "runtime/cpp/test/emboss_memory_util_test.cc",
      "new_id": "b67dc7013267de5750a5727d491c10f21cd47056",
      "new_mode": 33188,
      "new_path": "runtime/cpp/test/emboss_memory_util_test.cc"
    },
    {
      "type": "modify",
      "old_id": "a46617a8d7905705300bb064dd7e67131a432ee2",
      "old_mode": 33188,
      "old_path": "runtime/cpp/test/emboss_prelude_test.cc",
      "new_id": "a313977a0f87b409043d44bfe579135654b223e9",
      "new_mode": 33188,
      "new_path": "runtime/cpp/test/emboss_prelude_test.cc"
    },
    {
      "type": "modify",
      "old_id": "1e988c2ec0a39175a0787062a966a05ac31b2f91",
      "old_mode": 33188,
      "old_path": "testdata/int128_sizes.emb",
      "new_id": "2fec3a8a1bb30b3f3729afa10212c86632d350e4",
      "new_mode": 33188,
      "new_path": "testdata/int128_sizes.emb"
    }
  ]
}
