)]}'
{
  "log": [
    {
      "commit": "45a76cb99104a222d6a9bd768a084893dcb7cf30",
      "tree": "995557ba95942309ffe9c4a13819a10da8c4b4bb",
      "parents": [
        "69759eaa6fd4386f1e6d8748052ad221087b3476"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Jul 21 22:00:15 2011 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Jul 22 15:16:43 2011 -0700"
      },
      "message": "Exception and suspend count polling on JNI bridge return.\n\nChange-Id: I0e5597fcbdcdb88100b18d63323e7ba8d27f13fe\n"
    },
    {
      "commit": "69759eaa6fd4386f1e6d8748052ad221087b3476",
      "tree": "9f37e49625a6e528405ed28ae8f5ac515ffedd67",
      "parents": [
        "dbd05642d4157b65d837da30c1d8df0ef577a378"
      ],
      "author": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Thu Jul 21 18:13:35 2011 -0700"
      },
      "committer": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Thu Jul 21 18:13:35 2011 -0700"
      },
      "message": "Add allocation and garbage collection infrastructure.\n\nChange-Id: I4b04cdfdf18afb75a7b0df87b509e8156b4a932b\n"
    },
    {
      "commit": "df20fe0c097073f75f22d16e72fd3636a31d3ca1",
      "tree": "a960361ff7e6eeaf5962cc515e142b18da4176b3",
      "parents": [
        "176f59cd8997a0491ea5ccdea8e9dfff85dd32d6"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Jul 20 20:34:16 2011 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Jul 21 10:50:18 2011 -0700"
      },
      "message": "Support for synchronized native methods.\n\nThis change adds support for synchronized native methods by using\ncalls to MonitorEnter and MonitorExit on the JNIEnv*. There is\nsome tidying of the assembler and a straw man JNIEnv implementation.\nThe JNIEnv implementation just warns when MonitorEnter/Exit are called\nand doesn\u0027t adhere to the correct JNIEnv layout.\n\nChange-Id: I90ed6ec8f85f5b01b929f16e0dbdecadd0b01359\n"
    },
    {
      "commit": "b033c75ebda80ac75f936366fe78d1edf5cec937",
      "tree": "7a457c99acf23b0cc9b86b2a6d8cc2593e85f127",
      "parents": [
        "cdc8de4642ca447a7ed205f0d2203cb217e48aad"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Jul 20 12:22:35 2011 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Jul 20 12:22:35 2011 -0700"
      },
      "message": "x86 JNI compiler and unit tests.\n\nChange-Id: I4c2e10328961a2e8e27c90777fe2a93737b21143\n"
    },
    {
      "commit": "1f359b08f5ad33ae72e4073b86a9257fe1ed11e5",
      "tree": "3f22a152793289174822b023ad279e125a307418",
      "parents": [
        "ffe6736397d17457188727510f0a2953f69a383a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sun Jul 17 14:27:17 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sun Jul 17 14:27:17 2011 -0700"
      },
      "message": "Improve CHECK_\u003cop\u003e logging.\n\nThis patch lets us show the lhs and rhs when a relational check fails. (I show\nboth, even though that looks silly in cases like CHECK_EQ(rc, 0) where we\u0027ll\nsay \"rc\u003d-1, 0\u003d0\", because it\u0027s helpful in cases like CHECK_LT(i, size()) where\nwe want \"i\u003d4, size\u003d2\".)\n\nI had to add a few operator\u003c\u003cs for enums, and fix a bunch of signed/unsigned\nmismatches, and put the StringPiece operator\u003c\u003c in the right namespace.\n\nChange-Id: I390f38bd97b3f50e12182f36ff027ca067c48d69\n"
    },
    {
      "commit": "a2e18e1e77fc25c8260aad5daa267ababfcb65f6",
      "tree": "5f3b5cc160ac94651c8e1b166c6962c0167bcf48",
      "parents": [
        "6b6b5f0e67ce03f38223a525612955663bc1799b"
      ],
      "author": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Tue Jun 21 18:57:55 2011 -0700"
      },
      "committer": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Tue Jun 21 18:57:55 2011 -0700"
      },
      "message": "Add the implementation for the ARM assembler.\n\nChange-Id: Iabeb834c3cc2b00a043bd79f9e1c4573d0f0a934\n"
    },
    {
      "commit": "6b6b5f0e67ce03f38223a525612955663bc1799b",
      "tree": "83347b18ba66d4c46d06ca81be01285959f08060",
      "parents": [
        "a5d5cfda6239d8876937e75eba43222f639d2447"
      ],
      "author": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Tue Jun 21 15:05:09 2011 -0700"
      },
      "committer": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Tue Jun 21 15:22:34 2011 -0700"
      },
      "message": "Shorten the namespace and re-normalize include guards.\n\nChange-Id: I93af4c1f19edf31098abd20ded1fcca6c5d83854\n"
    },
    {
      "commit": "a5d5cfda6239d8876937e75eba43222f639d2447",
      "tree": "4665ed2c32344944148bde32544577e425b2d946",
      "parents": [
        "59e85cd3c415ca483318bd7e4d5e743253b64685"
      ],
      "author": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Tue Jun 21 12:46:59 2011 -0700"
      },
      "committer": {
        "name": "Carl Shapiro",
        "email": "cshapiro@google.com",
        "time": "Tue Jun 21 12:46:59 2011 -0700"
      },
      "message": "Add basic assembler interface and an x86 backend.\n\nChange-Id: Ia8136bad88f1194c8a247e2af80e486ab88c1e8c\n"
    }
  ]
}
