)]}'
{
  "commit": "8a34ba8bb0a21def76ee6f4ec2ff43b59d9e7317",
  "tree": "9badb546f6364bb72ce1e2067425e29a7c7fd1e3",
  "parents": [
    "9926156a583cec3d22d521232b31c70fa9a87dc1"
  ],
  "author": {
    "name": "Alon Zakai",
    "email": "azakai@google.com",
    "time": "Thu Jun 25 17:18:47 2026"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Jun 25 17:18:47 2026"
  },
  "message": "Add a ConstraintAnalysis pass (#8853)\n\nThis simply parses IR into constraints, flows them around, and sees\nif we can prove things.\n\nThis is a minimal version, without conditional propagation etc.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "57420a1733fa9dc1284187add9bcb4b39dfc6d55",
      "old_mode": 33188,
      "old_path": "src/ir/constraint.cpp",
      "new_id": "32d650456ac362a1a6db127686e60c4d262eebf3",
      "new_mode": 33188,
      "new_path": "src/ir/constraint.cpp"
    },
    {
      "type": "modify",
      "old_id": "4a689ceec3ad3d966b85dd52cb22799fe32b4de0",
      "old_mode": 33188,
      "old_path": "src/ir/constraint.h",
      "new_id": "cf9da4822375b55d6b621507fc3aa60710f58660",
      "new_mode": 33188,
      "new_path": "src/ir/constraint.h"
    },
    {
      "type": "modify",
      "old_id": "2dfda96d0e5ec1c4f11e704d99f8b95571df9dfe",
      "old_mode": 33188,
      "old_path": "src/passes/CMakeLists.txt",
      "new_id": "684077171c826981a5e722ac22fd263cc42612c2",
      "new_mode": 33188,
      "new_path": "src/passes/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7b1a04d445379ff2fcad18e65d2fa33a00005ae5",
      "new_mode": 33188,
      "new_path": "src/passes/ConstraintAnalysis.cpp"
    },
    {
      "type": "modify",
      "old_id": "672936f34443a142e34decf166fc78118d977910",
      "old_mode": 33188,
      "old_path": "src/passes/pass.cpp",
      "new_id": "06339ca5a6b1af9dd9473862f83f5ec81e15dae6",
      "new_mode": 33188,
      "new_path": "src/passes/pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "caeaf207a426e7020606f20f9fa8ba3236418383",
      "old_mode": 33188,
      "old_path": "src/passes/passes.h",
      "new_id": "3e289460eec9c90d7c31daa8be0797296a22de43",
      "new_mode": 33188,
      "new_path": "src/passes/passes.h"
    },
    {
      "type": "modify",
      "old_id": "a8bb66f75d63ba777862293b5df1f68441833753",
      "old_mode": 33188,
      "old_path": "test/gtest/constraint.cpp",
      "new_id": "1ee15d40006ecee4bff6d3c18e76f20a97ce7049",
      "new_mode": 33188,
      "new_path": "test/gtest/constraint.cpp"
    },
    {
      "type": "modify",
      "old_id": "f1068465fd398830efb4ec50c33d449f73d00c48",
      "old_mode": 33188,
      "old_path": "test/lit/help/wasm-metadce.test",
      "new_id": "f74d904a70b2c1021ec556e5d750dafba1d5aa6a",
      "new_mode": 33188,
      "new_path": "test/lit/help/wasm-metadce.test"
    },
    {
      "type": "modify",
      "old_id": "903d613008976d63ed97b0fcbd4e951dcbc7af5b",
      "old_mode": 33188,
      "old_path": "test/lit/help/wasm-opt.test",
      "new_id": "e8c9ff02b070ec49fce59e67b6018f10b3cc8789",
      "new_mode": 33188,
      "new_path": "test/lit/help/wasm-opt.test"
    },
    {
      "type": "modify",
      "old_id": "acfc47bfc6f3d23538bc6ce1c96e4dedafb57fdd",
      "old_mode": 33188,
      "old_path": "test/lit/help/wasm2js.test",
      "new_id": "9192c7e4a67a0414e89acf434bf0bec047831d1d",
      "new_mode": 33188,
      "new_path": "test/lit/help/wasm2js.test"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cac599c30be37c556198a9dd597c12fda250445c",
      "new_mode": 33188,
      "new_path": "test/lit/passes/constraint-analysis.wast"
    }
  ]
}
