)]}'
{
  "commit": "c557bf9926e2e955df7df29105442792045eef62",
  "tree": "c7fdba3c750fe66510dddaf11ea99ed8159a4f6c",
  "parents": [
    "83dfdcb06a4dbd19480885269d76493d8e80a067"
  ],
  "author": {
    "name": "Alexis Hetu",
    "email": "sugoi@google.com",
    "time": "Fri Sep 25 13:09:56 2015 -0400"
  },
  "committer": {
    "name": "Alexis Hétu",
    "email": "sugoi@google.com",
    "time": "Fri Sep 25 19:08:55 2015 +0000"
  },
  "message": "Fixed Temporary issues\n\nSome issues, like failures using the do-while command, were caused\nby the assembler being unable to assign registers consistently for\na single temporary variable. For example, in the do-while case, the\n\"iterate\" Temporary object was not being assigned to the same\nregister between it\u0027s initial declaration and it\u0027s usage inside the\nloop condition later on, causing the do-while to behave weirdly.\nOther instances where multiple Temporary objects ended up being used\nsimultaneously of where a single object was references in multiple\nparts of the code could have failed because of this.\n\nThe fix is simply to assign Temporary objects a unique ID.\n\nChange-Id: Ie48c596b4c6570853702cab71497b3e00a40c2a0\nReviewed-on: https://swiftshader-review.googlesource.com/4015\nTested-by: Alexis Hétu \u003csugoi@google.com\u003e\nReviewed-by: Nicolas Capens \u003ccapn@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f6210ecdd66cff5f99d724c0ca856d53f68c7870",
      "old_mode": 33188,
      "old_path": "src/OpenGL/compiler/OutputASM.cpp",
      "new_id": "5a7b108bdb6ee831975849c737815fe6d2f97dac",
      "new_mode": 33188,
      "new_path": "src/OpenGL/compiler/OutputASM.cpp"
    }
  ]
}
