)]}'
{
  "commit": "525bc38062ab082d5b540dfe9465231cfb94361d",
  "tree": "2ac69614a5ca3f732692f3ce3368fb8dd56d968c",
  "parents": [
    "54d4e77fa5599b855f5c463646c0e8922d5e6064"
  ],
  "author": {
    "name": "Greg Fischer",
    "email": "greg@lunarg.com",
    "time": "Tue Nov 08 10:45:32 2022 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Nov 08 10:45:32 2022 -0700"
  },
  "message": "Add pass to eliminate dead output components (#4982)\n\nThis pass eliminates components of output variables that are not stored\r\nto. Currently this just eliminates trailing components of arrays and\r\nstructs, all of which are dead.\r\n\r\nWARNING: This pass is not designed to be a standalone pass as it can\r\ncause interface incompatibiliies with the following shader in the\r\npipeline. See the comment in optimizer.hpp for best usage. This pass is\r\ncurrently available only through the API; it is not available in the CLI.\r\n\r\nThis commit also fixes a bug in CreateDecoration() which is part of the\r\nsystem of generating SPIR-V from the Type manager.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bca12520fefa410d086c6d51472d0c0e53fe481e",
      "old_mode": 33188,
      "old_path": "include/spirv-tools/optimizer.hpp",
      "new_id": "17a2556afecb63bfa7f73d1d26bb321da4457e6b",
      "new_mode": 33188,
      "new_path": "include/spirv-tools/optimizer.hpp"
    },
    {
      "type": "modify",
      "old_id": "de75abd592f9a7e60005d884344524ea18ea14ee",
      "old_mode": 33188,
      "old_path": "source/opt/eliminate_dead_input_components_pass.cpp",
      "new_id": "f31b567b4a64939120bf225b0ca4e3f5c3a8375e",
      "new_mode": 33188,
      "new_path": "source/opt/eliminate_dead_input_components_pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "a3a133c2bb7330486368d1e148f0e9920d99b64a",
      "old_mode": 33188,
      "old_path": "source/opt/eliminate_dead_input_components_pass.h",
      "new_id": "16b454575dfb1ee51b286895d816987c2cc91565",
      "new_mode": 33188,
      "new_path": "source/opt/eliminate_dead_input_components_pass.h"
    },
    {
      "type": "modify",
      "old_id": "75a47784c273981f113357c4ed6effbb39cf43ab",
      "old_mode": 33188,
      "old_path": "source/opt/optimizer.cpp",
      "new_id": "7583bd1c63e0acfafc21301976228a8fdc87daf4",
      "new_mode": 33188,
      "new_path": "source/opt/optimizer.cpp"
    },
    {
      "type": "modify",
      "old_id": "4568c0d063c25df0a62e67292640d052ee9c2f05",
      "old_mode": 33188,
      "old_path": "source/opt/type_manager.cpp",
      "new_id": "d25daa9014233fb63fa21b7a95bb0c7aaab72b25",
      "new_mode": 33188,
      "new_path": "source/opt/type_manager.cpp"
    },
    {
      "type": "modify",
      "old_id": "2417d4993a2aa1bcdda0b5922a75bf67e7775fc4",
      "old_mode": 33188,
      "old_path": "source/opt/type_manager.h",
      "new_id": "c49e193227b18e26bc83d316b29cd2c59e69265a",
      "new_mode": 33188,
      "new_path": "source/opt/type_manager.h"
    },
    {
      "type": "modify",
      "old_id": "822914a860933cc1fe359442305cca0929e89974",
      "old_mode": 33188,
      "old_path": "test/opt/eliminate_dead_input_components_test.cpp",
      "new_id": "2c2e636121eef00fb80bfa069324f0797c511ecf",
      "new_mode": 33188,
      "new_path": "test/opt/eliminate_dead_input_components_test.cpp"
    }
  ]
}
