)]}'
{
  "commit": "8db0725a4263c1c6636acbc29d766877ef471f76",
  "tree": "b8a956ef0cde1fcdf1d55c0cdc1b2a53b7e6772d",
  "parents": [
    "e2d1e8277b707b0f1e74282b84254ccabbc4fb78"
  ],
  "author": {
    "name": "avassalotti@google.com",
    "email": "avassalotti@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Mon Jun 14 23:52:09 2010 +0000"
  },
  "committer": {
    "name": "avassalotti@google.com",
    "email": "avassalotti@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Mon Jun 14 23:52:09 2010 +0000"
  },
  "message": "Optimize CfgBuilder.BuilderVisitor.addNode().\n\nInstead of keeping one list with the current exits, this fix makes the\nexits tabulated by their \"reason.\" This saves us unnecessary work in\naddNode() since we don\u0027t have to iterate through all the exits at every\ncalls anymore.\n\nFor large modules, this gives a significant speedup.\n\nReview at http://gwt-code-reviews.appspot.com/597803\n\nReview by: spoon@google.com\n\ngit-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@8257 8db76d5a-ed1c-0410-87a9-c151d255dfc7\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a9e481d51d0ffd68a9baafba4d756efa5c9760fc",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/jjs/impl/gflow/cfg/CfgBuilder.java",
      "new_id": "0e2c9a03b787f379d44c9ba9f466943095901920",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/jjs/impl/gflow/cfg/CfgBuilder.java"
    }
  ]
}
