)]}'
{
  "commit": "150f597ae6113ed0c5639376a459abaeebecf58b",
  "tree": "8270ce779411294e660720fc35b50cf318dbbdb3",
  "parents": [
    "a5bf1adc08b8780fd0114333d24bc2a9fd46e8d5"
  ],
  "author": {
    "name": "Alexis Hetu",
    "email": "sugoi@google.com",
    "time": "Mon Feb 01 16:51:07 2016 -0500"
  },
  "committer": {
    "name": "Alexis Hétu",
    "email": "sugoi@google.com",
    "time": "Thu Feb 04 14:55:58 2016 +0000"
  },
  "message": "Uniform block declaration\n\nA few aspects of block declaration are improved upon here:\n- Block definitions are computed and stored for later use.\n  The data stored are the block member types and a map to\n  convert from register offsets, based on the internal\n  memory layout, to the std140 layout.\n- Declaration of block members is possible. When a block\n  member is declared prior to the entire block being\n  declared, OutputASM::declareUniform() will first declare\n  the whole block and return the index of the block member.\n  If the block member is part of an already defined block,\n  the function declares no new variables and returns the\n  block member\u0027s register index.\n\nChange-Id: If1368bc8de20a0f86169361d76858c3f3e34bb07\nReviewed-on: https://swiftshader-review.googlesource.com/4632\nTested-by: Alexis Hétu \u003csugoi@google.com\u003e\nReviewed-by: Nicolas Capens \u003ccapn@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f24ba5ebf0311b1089b5011a0f790ba355b4a2b3",
      "old_mode": 33188,
      "old_path": "src/OpenGL/compiler/OutputASM.cpp",
      "new_id": "dbc3919a93af3551ca373ea3b82bf7403d87ff20",
      "new_mode": 33188,
      "new_path": "src/OpenGL/compiler/OutputASM.cpp"
    },
    {
      "type": "modify",
      "old_id": "fc70aab2811e9c044d4e77a332e47e7895517641",
      "old_mode": 33188,
      "old_path": "src/OpenGL/compiler/OutputASM.h",
      "new_id": "2e5886fff7a2252394ad4c96f8c3bbaa76cc0b72",
      "new_mode": 33188,
      "new_path": "src/OpenGL/compiler/OutputASM.h"
    }
  ]
}
