)]}'
{
  "commit": "54a896e0141377f7bdef91e09b6421706ec4fa94",
  "tree": "d4c99cd877eaa2ba69d7d58714c680d53ce62e80",
  "parents": [
    "d7dd2e064b27511f10869d57201929b976756c9a"
  ],
  "author": {
    "name": "Yuansui Xu",
    "email": "xuyuansui@outlook.com",
    "time": "Wed May 13 15:05:24 2026 -0500"
  },
  "committer": {
    "name": "Vimarsh Sathia",
    "email": "vimarsh.sathia@gmail.com",
    "time": "Thu Jul 09 12:33:20 2026 -0400"
  },
  "message": "[MLIR] Fix reverse-mode shadows for mutable allocations\n\nAllow setDiffe to replace placeholder shadows for mutable values in reverse\nmode, while preserving existing user-provided shadows for mutable arguments.\nAdd memref.alloca coverage for both internal allocation shadows and memref\nargument shadows.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0c157581e31d175ea19af84d0e980375c53241ce",
      "old_mode": 33188,
      "old_path": "enzyme/Enzyme/MLIR/Interfaces/GradientUtils.cpp",
      "new_id": "d2fadbc089641c1430e57078c2be8d9bbd3b427a",
      "new_mode": 33188,
      "new_path": "enzyme/Enzyme/MLIR/Interfaces/GradientUtils.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5ca576c674ba5d46fb4624c195b27bbda0d89154",
      "new_mode": 33188,
      "new_path": "enzyme/test/MLIR/ReverseMode/alloca.mlir"
    }
  ]
}
