)]}'
{
  "commit": "1be9eed7b360e5d1c5027c86fb6e655a8d172012",
  "tree": "f194b8465b82cd72529f4c5d080e5059cf3d8d08",
  "parents": [
    "cdd2a760ff99f213f114c3badf32ed47846bdc56"
  ],
  "author": {
    "name": "SiliconA-Z",
    "email": "gfunni234@gmail.com",
    "time": "Wed Apr 08 20:59:11 2026 -0400"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Apr 08 17:59:11 2026 -0700"
  },
  "message": "[ObjCARC] Optimize MayAutorelease by skipping over pools (#188583)\n\nThis enables the ARC optimizer to remove autoreleasePoolPush/Pop pairs\nthat were previously retained. By skipping over nested autorelease\npools, MayAutorelease now correctly recognizes that autoreleases\ncontained within an inner pool do not escape, allowing the removal of\nouter pool boundaries.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "69c91b4327e5b470d181be6351654dbb5b2cbef7",
      "old_mode": 33188,
      "old_path": "llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp",
      "new_id": "f796266f0cf3c7e8b6f1067a063f1576eebfc2cd",
      "new_mode": 33188,
      "new_path": "llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp"
    },
    {
      "type": "modify",
      "old_id": "896717f92146f3d42ebe2701544e1f9d4f3fef0b",
      "old_mode": 33188,
      "old_path": "llvm/test/Transforms/ObjCARC/test_autorelease_pool.ll",
      "new_id": "d94ad884b60c4794ae6e08ee9925820a68df671f",
      "new_mode": 33188,
      "new_path": "llvm/test/Transforms/ObjCARC/test_autorelease_pool.ll"
    }
  ]
}
