)]}'
{
  "commit": "5c9047148c568393971db488badc8fe6f2b2f93a",
  "tree": "378cfad8538e2c80b5f8faa923989a605cc3befd",
  "parents": [
    "91f678d65e37be5903e7f8ccc4bca54ec8192de3"
  ],
  "author": {
    "name": "Peter McNeeley",
    "email": "petermcneeley@google.com",
    "time": "Thu Feb 13 21:11:32 2025 -0800"
  },
  "committer": {
    "name": "Dawn LUCI CQ",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Thu Feb 13 21:11:32 2025 -0800"
  },
  "message": "Substitute overrides in IR (vk)\n\nThis moves the substitute overrides transform in IR ie. after the\nprogram has been converted to IR.\n\nSubstitute replaces all overrides with constants and propagates these\nvalues. This can result in the emission of pipeline creation errors\nwhen these constants are validated.\n\nShort circuiting expressions must be handled carefully to avoid\nspurious pipeline errors. We convert these to ConstExprIfs and then\nafter evaluating overrides we throw away the branch not taken.\n\nIR Overrides doc:\nhttps://docs.google.com/document/d/1-6F1A6x3_8VX1iYqTPyIwxwO7bfI5SdEe1QEf2kqga8/edit?tab\u003dt.0#heading\u003dh.2pmdkrcrj8o3\n\nBug: 382300469\nChange-Id: I0febae15e040bc25acb864cf2aee7215c124b2d6\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/223994\nReviewed-by: dan sinclair \u003cdsinclair@chromium.org\u003e\nCommit-Queue: dan sinclair \u003cdsinclair@chromium.org\u003e\nReviewed-by: James Price \u003cjrprice@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6207ad2106e58745bd2ee75c99a4534fbf48048e",
      "old_mode": 33188,
      "old_path": "include/tint/tint.h",
      "new_id": "dd341943ed09b634069cb254a1089bbb5c12e3d8",
      "new_mode": 33188,
      "new_path": "include/tint/tint.h"
    },
    {
      "type": "modify",
      "old_id": "ae1970d75a01c42ea0850a74fc0593276144f9af",
      "old_mode": 33188,
      "old_path": "src/dawn/native/vulkan/ShaderModuleVk.cpp",
      "new_id": "3ac2e6324820efd21b31f51ab774328bb833f116",
      "new_mode": 33188,
      "new_path": "src/dawn/native/vulkan/ShaderModuleVk.cpp"
    },
    {
      "type": "modify",
      "old_id": "9abfba2bde63727d28f2b051bceb6a3bb711bb09",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/constant/eval.cc",
      "new_id": "c6db4e94b6c5f23f9ce738c0ff5b225af3cb7bf6",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/constant/eval.cc"
    },
    {
      "type": "modify",
      "old_id": "dbd5d3908c3f12533baf867b6b4111a86172cf29",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/BUILD.bazel",
      "new_id": "ba63962f106c0eeea5bed8b275346bbdca76e8f2",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "7de8454046a95e9e0e44cf959142fe79e3eadbcc",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/BUILD.cmake",
      "new_id": "b16c9a3e96b94a0061edda6ac81158b6266bf5a7",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/BUILD.cmake"
    },
    {
      "type": "modify",
      "old_id": "bbb9ef9403a07f5f445b73188fece7d2bc8944e9",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/BUILD.gn",
      "new_id": "4807a0666d46ff22f4531b168cd89b90818d10a0",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "650592bbc330952f3a5ed9ff4c1e27eab8384843",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/builder.h",
      "new_id": "ab5c56bb0eaa5bf07dff747dedb7cf6ad6f40489",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/builder.h"
    },
    {
      "type": "modify",
      "old_id": "fbeef7e9b1e5ad4db8c19062a946489d834074c4",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/const_param_validator.cc",
      "new_id": "ea6bc7e24d8c49da810ee5b1843beb5611df1698",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/const_param_validator.cc"
    },
    {
      "type": "modify",
      "old_id": "f217752bf74b6b01adc6776320783a0f06a5ad6e",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/const_param_validator_test.cc",
      "new_id": "6b1762dc590207698bf0254362eb85a15330e928",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/const_param_validator_test.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8af6572fe4927ce92e2ce1e251b86d1eafb4356a",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/constexpr_if.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "df1f51bc4e62f257467ba21b536afb852e386157",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/constexpr_if.h"
    },
    {
      "type": "modify",
      "old_id": "bf38b7886308d6a62b70d687443ff24e5f16792b",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/disassembler.cc",
      "new_id": "0564fc44ac058eee88dbb6bb59e99ea6ead76d71",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/disassembler.cc"
    },
    {
      "type": "modify",
      "old_id": "1a89a685f57e91e139bcd6157bfaf68e64d65e37",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/evaluator.cc",
      "new_id": "7a86a4be56a9a94fab1c04d1123bfa0119d79c1f",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/evaluator.cc"
    },
    {
      "type": "modify",
      "old_id": "b21511e0902e5e0d24c92f2a1c3589d3ce224d7b",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/evaluator.h",
      "new_id": "2f778e378c4d62a6bdb4c3635e51a4d4471e10fd",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/evaluator.h"
    },
    {
      "type": "modify",
      "old_id": "1494798614b9e75747591928cbc0233ed6a7f1ec",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/evaluator_test.cc",
      "new_id": "8ab95fa328bcdc82246aba5b485d5f8e2907f1d4",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/evaluator_test.cc"
    },
    {
      "type": "modify",
      "old_id": "128100e547fc3b2b5d55cce076f1499cd7150719",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/if.h",
      "new_id": "993bc48c45256a5eb7db438a9a362bf0476d23b2",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/if.h"
    },
    {
      "type": "modify",
      "old_id": "6276903bd2c6c27b26a22cb91a0fa1b31f11ea5f",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/transform/substitute_overrides.cc",
      "new_id": "2923c254c8b8961483de8bf6837b63a4800f7329",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/transform/substitute_overrides.cc"
    },
    {
      "type": "modify",
      "old_id": "e93841a99c0a33fed2ef6925e538ddf30a683198",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/transform/substitute_overrides_test.cc",
      "new_id": "9e79efed970dbbd059f94759f56e41e18ad7a30d",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/transform/substitute_overrides_test.cc"
    },
    {
      "type": "modify",
      "old_id": "fd58a69c22aaad951405756befcbe298b8691ffc",
      "old_mode": 33188,
      "old_path": "src/tint/lang/core/ir/validator.cc",
      "new_id": "af5ea9643bc3fce7696d96ebfecd3de43cd55296",
      "new_mode": 33188,
      "new_path": "src/tint/lang/core/ir/validator.cc"
    },
    {
      "type": "modify",
      "old_id": "2a29caf2cfa5c257ab81e61991d9840c17fc0350",
      "old_mode": 33188,
      "old_path": "src/tint/lang/wgsl/ast/builder.cc",
      "new_id": "d6ed86019973d39d92df93598764e52c85cd23cd",
      "new_mode": 33188,
      "new_path": "src/tint/lang/wgsl/ast/builder.cc"
    },
    {
      "type": "modify",
      "old_id": "492f3dc86c27df38e6b0c98de88af9acbb2077f1",
      "old_mode": 33188,
      "old_path": "src/tint/lang/wgsl/reader/program_to_ir/function_test.cc",
      "new_id": "c119cf8f1df552818bd90e2fbbdfeb6839369903",
      "new_mode": 33188,
      "new_path": "src/tint/lang/wgsl/reader/program_to_ir/function_test.cc"
    },
    {
      "type": "modify",
      "old_id": "5a6c2369dd8c6602062008f9dd410f72dce89cda",
      "old_mode": 33188,
      "old_path": "src/tint/lang/wgsl/reader/program_to_ir/program_to_ir.cc",
      "new_id": "25ed621407b96df0d508b2cefcbe0433fa4b8974",
      "new_mode": 33188,
      "new_path": "src/tint/lang/wgsl/reader/program_to_ir/program_to_ir.cc"
    },
    {
      "type": "modify",
      "old_id": "07af5e289381e5791b7558da33b0ae5312f35ea5",
      "old_mode": 33188,
      "old_path": "src/tint/lang/wgsl/reader/program_to_ir/program_to_ir_test.cc",
      "new_id": "3effdd6129f8e468dbe4a234c702967800edb07b",
      "new_mode": 33188,
      "new_path": "src/tint/lang/wgsl/reader/program_to_ir/program_to_ir_test.cc"
    },
    {
      "type": "modify",
      "old_id": "d0f84899b24ecf8fa55549cd73f94547469abb90",
      "old_mode": 33188,
      "old_path": "src/tint/lang/wgsl/writer/ast_printer/global_decl_test.cc",
      "new_id": "b95f18f663bf46a2a3897a10850abd6c246c56d5",
      "new_mode": 33188,
      "new_path": "src/tint/lang/wgsl/writer/ast_printer/global_decl_test.cc"
    }
  ]
}
