)]}'
{
  "commit": "a94afcc3f32ac522df1383bb80b78680c7b1de70",
  "tree": "107c5e581071ea168bd6f892c210bf1b20946b6a",
  "parents": [
    "b583f16da04725582abf2a15e8c5f615c5286ca9"
  ],
  "author": {
    "name": "James Price",
    "email": "jrprice@google.com",
    "time": "Tue Apr 21 13:16:33 2026 -0700"
  },
  "committer": {
    "name": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Apr 21 13:16:33 2026 -0700"
  },
  "message": "[M146] [tint] Fix loop analysis for limit cases\n\n\u003e We handled limit cases for \u003e\u003d and \u003c\u003d, but not for \u003e and \u003c.\n\u003e\n\u003e This causes us to add infinite loop mitigations for loops that store\n\u003e their bounds in a `let` (see the modified E2E tests), since we\n\u003e conservatively assume that the let may contain the problematic limit\n\u003e value. With some extra work we should be able to make the analysis\n\u003e avoid these false positives for common cases, but that will be left to\n\u003e a future CL.\n\u003e\n\u003e Fixed: 502206907\n\u003e Change-Id: I30224cdc47125e7603d3dc07daf0619c886f92e4\n\u003e Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/302776\n\u003e Reviewed-by: dan sinclair \u003cdsinclair@chromium.org\u003e\n\u003e Commit-Queue: James Price \u003cjrprice@google.com\u003e\n\n(cherry picked from commit 4bb845fa408205b58a060f2b474cecfdb3d53fe0)\n\nBug: 503211611, 502206907\nChange-Id: I30fd0f4bc8853f360201d2f2db6a07ae2cac1118\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/304117\nReviewed-by: dan sinclair \u003cdsinclair@chromium.org\u003e\nCommit-Queue: James Price \u003cjrprice@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "85c742d8d342947153c624b306f294a4d6641dc5",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/analysis/loop_analysis.cc",
      "new_id": "ee82399d9232c760b98de25d83b369d638f48abe",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/analysis/loop_analysis.cc"
    },
    {
      "type": "modify",
      "old_id": "ffbb707cbd1dcedbba554d974c1f8cdeae6ce441",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/analysis/loop_analysis_test.cc",
      "new_id": "1526703d198fdd4ba15d46daeb4c470139d1d3da",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/analysis/loop_analysis_test.cc"
    },
    {
      "type": "modify",
      "old_id": "46284069e6d2cece7a647fd886e7eccef9052776",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/1121.wgsl.expected.dxc.hlsl",
      "new_id": "83b1cf51f09e8da4760de62157939f525a0531f6",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/1121.wgsl.expected.dxc.hlsl"
    },
    {
      "type": "modify",
      "old_id": "fe461872eadacc4f7b075c266ad7b956a0ae4199",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/1121.wgsl.expected.fxc.hlsl",
      "new_id": "6665c5cafbf72e9bde1db5744122c8978e9210ee",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/1121.wgsl.expected.fxc.hlsl"
    },
    {
      "type": "modify",
      "old_id": "d238207dcb1ba4a3ec2351476be5328e491bd895",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/1121.wgsl.expected.glsl",
      "new_id": "02ada29c2250e156b1d2577fe1a7f5976c2579d0",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/1121.wgsl.expected.glsl"
    },
    {
      "type": "modify",
      "old_id": "b6a0503b3d04e325de573a45c881ec098f82e104",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/1121.wgsl.expected.msl",
      "new_id": "ff97e62e88846dbb5f46a9ae3b54ddfbf364b7ad",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/1121.wgsl.expected.msl"
    },
    {
      "type": "modify",
      "old_id": "dfd5bef60a93ab36300042a247e8dc9b357fb08b",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/1121.wgsl.expected.spvasm",
      "new_id": "352fab0cb908fea51b98d2bedb0515fb5cd77153",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/1121.wgsl.expected.spvasm"
    },
    {
      "type": "modify",
      "old_id": "47230362546cce0bc0de58503a8c9e06bb69ce0b",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/744.wgsl.expected.dxc.hlsl",
      "new_id": "763bd73bf8984c123736a92e7e12ffeb5a20b65a",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/744.wgsl.expected.dxc.hlsl"
    },
    {
      "type": "modify",
      "old_id": "248dbcd1aeeb5ff2a63d9a7c88195bf664bb0d68",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/744.wgsl.expected.fxc.hlsl",
      "new_id": "763bd73bf8984c123736a92e7e12ffeb5a20b65a",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/744.wgsl.expected.fxc.hlsl"
    },
    {
      "type": "modify",
      "old_id": "bc48f10c449e55257ad80ab59a6ae65b3f86729c",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/744.wgsl.expected.glsl",
      "new_id": "80a2417de101efa4adc2798c6e1605042820a5cd",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/744.wgsl.expected.glsl"
    },
    {
      "type": "modify",
      "old_id": "29dee3e49d4d847a651eab06dce5cabd0f858af0",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/744.wgsl.expected.msl",
      "new_id": "748001ede0c8e405cdd4bec8fecd7e4e7fdbe634",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/744.wgsl.expected.msl"
    },
    {
      "type": "modify",
      "old_id": "caa06d79643c91743734d50a2307f7921bec78c2",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/744.wgsl.expected.spvasm",
      "new_id": "6c4abe41821f2bcb4374e849f8ab225bd7ce9fc7",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/744.wgsl.expected.spvasm"
    },
    {
      "type": "modify",
      "old_id": "625ff1e0e37816c0a72779ec012d3458514067e0",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/914.wgsl.expected.dxc.hlsl",
      "new_id": "773675ba163dca4d04cdb749cc39c2120c5d1979",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/914.wgsl.expected.dxc.hlsl"
    },
    {
      "type": "modify",
      "old_id": "4216540129b69d75cc6427f9c82cf6af0ad23093",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/914.wgsl.expected.fxc.hlsl",
      "new_id": "49dc4bcf1d9c3c5bdf30fb3a89e80de9eaecaae4",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/914.wgsl.expected.fxc.hlsl"
    },
    {
      "type": "modify",
      "old_id": "fcba9003f5799a14c47411d6f865feeb8d5177a5",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/914.wgsl.expected.glsl",
      "new_id": "12f8d1f9b5bf33f3bf0c2d528998e4a3af623872",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/914.wgsl.expected.glsl"
    },
    {
      "type": "modify",
      "old_id": "320ed1595e7335006c17b7f67f22fe669867c1eb",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/914.wgsl.expected.msl",
      "new_id": "b54ee943ccc8977d2f47aef281423b6bbb2305ff",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/914.wgsl.expected.msl"
    },
    {
      "type": "modify",
      "old_id": "369ef8918f7393a435cfea5731d5596233e8de66",
      "old_mode": 33188,
      "old_path": "test/tint/bug/tint/914.wgsl.expected.spvasm",
      "new_id": "47ddb0b1060e69c64dfc3c38acc62dbfd89016b2",
      "new_mode": 33188,
      "new_path": "test/tint/bug/tint/914.wgsl.expected.spvasm"
    }
  ]
}
