)]}'
{
  "commit": "1efec9a26cab5ca7e408f017f44f0c947d198985",
  "tree": "983a2a0a4917b786e1b03d7997a86afde77f861d",
  "parents": [
    "e3d56ea2b34574947cdc543f411d46c3c5ef6126"
  ],
  "author": {
    "name": "James Price",
    "email": "jrprice@google.com",
    "time": "Thu May 29 19:01:18 2025 -0700"
  },
  "committer": {
    "name": "Dawn LUCI CQ",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Thu May 29 19:01:18 2025 -0700"
  },
  "message": "[spirv] Rewrite MergeReturn\n\nThis change is intended to simplify the transform and make it easier\nto work with, without changing any functionality.\n\nIt separates the process into two main passes:\n\n  1. Replace all `return` instructions with `exit` instructions. Set\n     the flag to signal that we are returning and record the control\n     instruction that we will exit to.\n\n  2. Conditionalize the merge blocks that we now exit to from the\n     first pass. This may discover additional merge blocks that also\n     need to be conditionalized as we walk back up the control flow\n     stack.\n\nThe minor changes in some of the E2E tests are just a result of\niterating over instructions in a different order.\n\nBug: 420345727\nChange-Id: I476ca8a086a99afbfd29b26f2cb01630526f5a8e\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/244474\nReviewed-by: dan sinclair \u003cdsinclair@chromium.org\u003e\nCommit-Queue: James Price \u003cjrprice@google.com\u003e\nCommit-Queue: dan sinclair \u003cdsinclair@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "84e2720f578749fe2c796072d2e003191c4f6995",
      "old_mode": 33188,
      "old_path": "src/tint/lang/spirv/writer/raise/merge_return.cc",
      "new_id": "d1dcf95214302c90677e3a751d0d8237b58e5e54",
      "new_mode": 33188,
      "new_path": "src/tint/lang/spirv/writer/raise/merge_return.cc"
    },
    {
      "type": "modify",
      "old_id": "616813e1526ff6c3255f424486e9e364266feaf1",
      "old_mode": 33188,
      "old_path": "src/tint/lang/spirv/writer/raise/merge_return_test.cc",
      "new_id": "73b13d6021e15ae31f1a5a6427b69e9ddf98040d",
      "new_mode": 33188,
      "new_path": "src/tint/lang/spirv/writer/raise/merge_return_test.cc"
    },
    {
      "type": "modify",
      "old_id": "df3b7fa8f0a3a313dc74e691ac2544670a5b2f22",
      "old_mode": 33188,
      "old_path": "test/tint/loops/nested_loops.wgsl.expected.spvasm",
      "new_id": "d5e2c0f942583ec2a98402675508dc7fc94bb643",
      "new_mode": 33188,
      "new_path": "test/tint/loops/nested_loops.wgsl.expected.spvasm"
    },
    {
      "type": "modify",
      "old_id": "df3b7fa8f0a3a313dc74e691ac2544670a5b2f22",
      "old_mode": 33188,
      "old_path": "test/tint/loops/nested_loops_robustness.wgsl.expected.spvasm",
      "new_id": "d5e2c0f942583ec2a98402675508dc7fc94bb643",
      "new_mode": 33188,
      "new_path": "test/tint/loops/nested_loops_robustness.wgsl.expected.spvasm"
    },
    {
      "type": "modify",
      "old_id": "99f96c17e6d64f768cad156f5b57fea52279ed66",
      "old_mode": 33188,
      "old_path": "test/tint/loops/nested_loops_with_continuing.wgsl.expected.spvasm",
      "new_id": "3a0b1b1ae2df175f1fbe8c75bc3bdc0e46c76a45",
      "new_mode": 33188,
      "new_path": "test/tint/loops/nested_loops_with_continuing.wgsl.expected.spvasm"
    },
    {
      "type": "modify",
      "old_id": "99f96c17e6d64f768cad156f5b57fea52279ed66",
      "old_mode": 33188,
      "old_path": "test/tint/loops/nested_loops_with_continuing_robustness.wgsl.expected.spvasm",
      "new_id": "3a0b1b1ae2df175f1fbe8c75bc3bdc0e46c76a45",
      "new_mode": 33188,
      "new_path": "test/tint/loops/nested_loops_with_continuing_robustness.wgsl.expected.spvasm"
    },
    {
      "type": "modify",
      "old_id": "04e35202e54b553d68152b687c71a03bec46db0f",
      "old_mode": 33188,
      "old_path": "test/tint/switch/switch_nested.wgsl.expected.spvasm",
      "new_id": "bf5df9faacdbc5e7af02110934f41c5b75e20535",
      "new_mode": 33188,
      "new_path": "test/tint/switch/switch_nested.wgsl.expected.spvasm"
    }
  ]
}
