)]}'
{
  "commit": "17a9d9334e0bc5913dae73069285d1e75a4b48e9",
  "tree": "c980085531c3073ea46ffc7be86986a165765f8f",
  "parents": [
    "26c90161d97144a4b7b6283a80b41585771b3bbd"
  ],
  "author": {
    "name": "Natalie Chouinard",
    "email": "chouinard@google.com",
    "time": "Fri Jun 05 19:29:33 2026 -0700"
  },
  "committer": {
    "name": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Fri Jun 05 19:29:33 2026 -0700"
  },
  "message": "[M149][tint] Collapse nested subgroupMin/Max ops on AMD\n\nOn some AMD GPUs on Windows, nested subgroupMin/Max operations can\ntrigger a crash.\n\nThis change collapses multiple nested subgroupMin/Max calls to a single\ncall, the innermost subgroupMin/Max operation. This is safe because the\nresult of a subgroupMin/Max call is necessarily subgroup uniform.\n\nThis bug exists in both the Vulkan and D3D12 drivers on Windows, and on\nMac. On Windows it is fixed in later versions, but because it\u0027s a\nharmless optimizing transform it\u0027s applied broadly to all versions on\naffected backend platforms.\n\nBug: 508265321\nFixed: 519445781\nChange-Id: I658d0ddece1887d9211ad9ea2eb07a96ada0e3ce\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/311521\nCommit-Queue: Natalie Chouinard \u003cchouinard@google.com\u003e\nReviewed-by: dan sinclair \u003cdsinclair@chromium.org\u003e\n(cherry picked from commit 99622c4f7ef017a2f527e1e1d4afddcb93d04b35)\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/313895\nReviewed-by: James Price \u003cjrprice@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "16ba5074b209b12e643abfe233fd21a24272b053",
      "old_mode": 33188,
      "old_path": "src/dawn/native/Toggles.cpp",
      "new_id": "8935ef61f46815263a9c623076b28bc74f3b594e",
      "new_mode": 33188,
      "new_path": "src/dawn/native/Toggles.cpp"
    },
    {
      "type": "modify",
      "old_id": "723b9b22ecbd147a5975ea64e0cd8e3cca8b8be3",
      "old_mode": 33188,
      "old_path": "src/dawn/native/Toggles.h",
      "new_id": "36d5ce5d5d9800da001bba46a5dc86083f436122",
      "new_mode": 33188,
      "new_path": "src/dawn/native/Toggles.h"
    },
    {
      "type": "modify",
      "old_id": "44787d3f9b9426fadd8aa88f4402763767512ce4",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp",
      "new_id": "6ee25b24995cffd8de51536db7360a36ad5de920",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp"
    },
    {
      "type": "modify",
      "old_id": "f7167ed87b9e7cb5610404eac7c6a38baba8874f",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d12/ShaderModuleD3D12.cpp",
      "new_id": "b6bb3ba1a2b7adad28efabcafa6eaf194a86ff1d",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d12/ShaderModuleD3D12.cpp"
    },
    {
      "type": "modify",
      "old_id": "f5d5d4279e75f846035b42556506f35a83012906",
      "old_mode": 33188,
      "old_path": "src/dawn/native/metal/PhysicalDeviceMTL.mm",
      "new_id": "ef27b26207b94770d0a6ac862e4a39cd6a9b3ab2",
      "new_mode": 33188,
      "new_path": "src/dawn/native/metal/PhysicalDeviceMTL.mm"
    },
    {
      "type": "modify",
      "old_id": "5ab2e9cc4d575489042f58d56446bbb8069b93c3",
      "old_mode": 33188,
      "old_path": "src/dawn/native/metal/ShaderModuleMTL.mm",
      "new_id": "b3bf47203bc62ca600ad4b144b7d8b9893c61960",
      "new_mode": 33188,
      "new_path": "src/dawn/native/metal/ShaderModuleMTL.mm"
    },
    {
      "type": "modify",
      "old_id": "fc5642fecd7af10d897ba835ed6425fb19455245",
      "old_mode": 33188,
      "old_path": "src/dawn/native/vulkan/PhysicalDeviceVk.cpp",
      "new_id": "93011e145f0e25c316609ab65654f80ae91db0b6",
      "new_mode": 33188,
      "new_path": "src/dawn/native/vulkan/PhysicalDeviceVk.cpp"
    },
    {
      "type": "modify",
      "old_id": "582b9497c7ab5ec52ea2ebcb70794077fd0d98f2",
      "old_mode": 33188,
      "old_path": "src/dawn/native/vulkan/PhysicalDeviceVk.h",
      "new_id": "9598dc31636f0cd26fe09d38258fe8714be4f075",
      "new_mode": 33188,
      "new_path": "src/dawn/native/vulkan/PhysicalDeviceVk.h"
    },
    {
      "type": "modify",
      "old_id": "534f0d1f6da68995c49aa40acaf136ff81b11dc9",
      "old_mode": 33188,
      "old_path": "src/dawn/native/vulkan/ShaderModuleVk.cpp",
      "new_id": "1fd09009af1732a3b90d4b2c89e8c8927460fcd0",
      "new_mode": 33188,
      "new_path": "src/dawn/native/vulkan/ShaderModuleVk.cpp"
    },
    {
      "type": "modify",
      "old_id": "edf4155723417a0af22c66746372b9afbbbe166c",
      "old_mode": 33188,
      "old_path": "src/dawn/tests/end2end/SubgroupsTests.cpp",
      "new_id": "8a2a39aacea169271d16b4d6cecbedf2c5ee814f",
      "new_mode": 33188,
      "new_path": "src/dawn/tests/end2end/SubgroupsTests.cpp"
    },
    {
      "type": "modify",
      "old_id": "ecdb32f69eb57efe832c6b36703e36386e61f1f0",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/transform/BUILD.bazel",
      "new_id": "d025c2b956ce84ba5de8f97fd32b221ee53e3dac",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/transform/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "c3ffc4f64dcffcd0d82717f7a6140ebb00b16dea",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/transform/BUILD.cmake",
      "new_id": "384ce2532b25c70ea0c59dc04f06dcc9f4333b0e",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/transform/BUILD.cmake"
    },
    {
      "type": "modify",
      "old_id": "2b35934ebcbee6ef9ec0f3e41cfa43b00080313f",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/transform/BUILD.gn",
      "new_id": "8d6fb419698d59db59e2648d22651bf256aee3eb",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/transform/BUILD.gn"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ac11d36eb6d82131ead5956c550e1206fc9d83d3",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/transform/collapse_subgroup_min_max.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "352697db4bba58078897009507dc27a0dab66cf6",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/transform/collapse_subgroup_min_max.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "56dd24ca8709672ec06118ac09bc8424158bf4df",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/transform/collapse_subgroup_min_max_test.cc"
    },
    {
      "type": "modify",
      "old_id": "1530eecd834899ee51c91dcbb2367b9ee9b481b5",
      "old_mode": 33188,
      "old_path": "src/tint/lang/hlsl/writer/common/options.h",
      "new_id": "5bb92d989bc14eff36e468aad2a3c170b01de98a",
      "new_mode": 33188,
      "new_path": "src/tint/lang/hlsl/writer/common/options.h"
    },
    {
      "type": "modify",
      "old_id": "9466acae2e6e5cf4aaa63591d1f3251b609a21ce",
      "old_mode": 33188,
      "old_path": "src/tint/lang/hlsl/writer/raise/raise.cc",
      "new_id": "e62466f4b1e392d2ae04febc915b7cd3718d1fd7",
      "new_mode": 33188,
      "new_path": "src/tint/lang/hlsl/writer/raise/raise.cc"
    },
    {
      "type": "modify",
      "old_id": "8bf2c8b6c4269df09bd5ecc65bd52723ee492074",
      "old_mode": 33188,
      "old_path": "src/tint/lang/hlsl/writer/writer_fuzz.cc",
      "new_id": "6968f5687e5c438581fba8a9a9384b5e42295841",
      "new_mode": 33188,
      "new_path": "src/tint/lang/hlsl/writer/writer_fuzz.cc"
    },
    {
      "type": "modify",
      "old_id": "bdc4895bf7b685f7e645c5b26fdc3a969fdab0fd",
      "old_mode": 33188,
      "old_path": "src/tint/lang/msl/writer/common/options.h",
      "new_id": "dbb0c3bd92b46fc281d1272f1ca0e1e3d7821f74",
      "new_mode": 33188,
      "new_path": "src/tint/lang/msl/writer/common/options.h"
    },
    {
      "type": "modify",
      "old_id": "2bb6e77002e3e588e9e286b0ad783445c2e13aef",
      "old_mode": 33188,
      "old_path": "src/tint/lang/msl/writer/raise/raise.cc",
      "new_id": "c839dc4fe18376c6b78a9bc906b1985bb52ee45d",
      "new_mode": 33188,
      "new_path": "src/tint/lang/msl/writer/raise/raise.cc"
    },
    {
      "type": "modify",
      "old_id": "b3535afe2b23aa9144f57c41af6af235e7453ac5",
      "old_mode": 33188,
      "old_path": "src/tint/lang/msl/writer/writer_fuzz.cc",
      "new_id": "2044002e810d76679319f0c3cdfb178447ad58e6",
      "new_mode": 33188,
      "new_path": "src/tint/lang/msl/writer/writer_fuzz.cc"
    },
    {
      "type": "modify",
      "old_id": "afde49f063415f4bd0ec8405d11186bb48615ebe",
      "old_mode": 33188,
      "old_path": "src/tint/lang/spirv/writer/common/options.h",
      "new_id": "8c4d22d7cb595cdbe15d86dd43d2d5be73d47f66",
      "new_mode": 33188,
      "new_path": "src/tint/lang/spirv/writer/common/options.h"
    },
    {
      "type": "modify",
      "old_id": "b30de709bd418c5397a14e2da6a40eaa464b7fa0",
      "old_mode": 33188,
      "old_path": "src/tint/lang/spirv/writer/raise/raise.cc",
      "new_id": "ca5cc3347df631866e09bc7994b5b3d328e0fcb0",
      "new_mode": 33188,
      "new_path": "src/tint/lang/spirv/writer/raise/raise.cc"
    },
    {
      "type": "modify",
      "old_id": "e8ef81ac1391c8913b700215f1ca1977e3f7b116",
      "old_mode": 33188,
      "old_path": "src/tint/lang/spirv/writer/writer_fuzz.cc",
      "new_id": "b0e685bae3eb6f747f9cb5e902541a43a6526cda",
      "new_mode": 33188,
      "new_path": "src/tint/lang/spirv/writer/writer_fuzz.cc"
    }
  ]
}
