)]}'
{
  "log": [
    {
      "commit": "b726dcb581bf72da46527378ccb6889020f0e6e9",
      "tree": "c0383ed788652926e93147e50d659ed226519548",
      "parents": [
        "fd678beb171a4686a4f2d53ca4188a4ade8fa54e"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Sep 05 08:57:23 2012 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Sep 05 09:06:19 2012 -0700"
      },
      "message": "Rename GlobalSynchronization to Locks\n\nAlso address some review comments in common_throws relating to\nToStr\u003cInvokeType\u003e and exception detail messages.\n\nChange-Id: Ibf2c0f147689fa236d349bd7f01eed3c2522552b\n"
    },
    {
      "commit": "00f7d0eaa6bd93d33bf0c1429bf4ba0b3f28abac",
      "tree": "6a2172ece15c4699e6c2a67ce76f019db0a9a21d",
      "parents": [
        "634ea28f78c4a138e6a1de54eae8696095422415"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Jul 19 15:28:27 2012 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Aug 14 10:45:52 2012 -0700"
      },
      "message": "Global lock levels.\n\nIntroduce the notion of the mutators/GC being a shared-exclusive (aka\nreader-writer) lock. Introduce globally ordered locks, analysable by\nannotalysis, statically at compile time. Add locking attributes to\nmethods.\n\nMore subtly, remove the heap_lock_ and split between various locks that\nare held for smaller periods (where work doesn\u0027t get blocked). Remove\nbuggy Dalvik style thread transitions. Make GC use CMS in all cases when\nconcurrent is enabled. Fix bug where suspend counts rather than debug\nsuspend counts were sent to JDWP. Move the PathClassLoader to\nWellKnownClasses. In debugger refactor calls to send request and\npossibly suspend. Break apart different VmWait thread states. Move\nidentity hash code to a shared method.\n\nChange-Id: Icdbfc3ce3fcccd14341860ac7305d8e97b51f5c6\n"
    },
    {
      "commit": "2faa5f1271587cda765f26bcf2951065300a01ff",
      "tree": "c59557857c36741cfcd1b6bf5ae039886a8ad6e7",
      "parents": [
        "0850c69c88d49efd4075288511b70d6c032bd0c8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jan 30 14:42:07 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jan 30 16:46:29 2012 -0800"
      },
      "message": "Fix copyright headers.\n\nChange-Id: I5b7bc76a370238d810d78522bd5531600746700f\n"
    },
    {
      "commit": "0571d357843c53e042f370f5f2c2e9aa3fe803a9",
      "tree": "197e5b1c0b1bf0ee8cc0e1960470d0a8d203b4af",
      "parents": [
        "33dc7717cd16592bcc825350bea6305be9eb2ea1"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Nov 03 19:51:38 2011 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Nov 13 11:57:18 2011 -0800"
      },
      "message": "Refactor the use of Method by the compiler.\n\nRemove the dependence on the Method object in dex2oat, allowing lazier\nresolution.\nIntroduce new find and iterators in DexFile to simplify common\noperations and avoid misuse of class data items.\n\nChange-Id: I39fb8252190f543d89d8b233076355cec310fe08\n"
    },
    {
      "commit": "0cfe1fb7060576d047f7f894fc0d8b87de84fcab",
      "tree": "4255eae2034dcb0febe28411c50cba76189f39ae",
      "parents": [
        "a09576416788b916095739e43a16917e7948f3a4"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Aug 26 03:29:44 2011 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Sep 02 14:48:01 2011 -0700"
      },
      "message": "Use accessor methods for Object fields.\n\nEnsure that Object fields are modified via accessors so that it\u0027s easy\nto insert barriers (make all fields within Objects private). Add validity\nchecks to Field and Method accessors to ensure they are accessed when a\nClass is in a suitable state. Add validity checks to all Object\naccessors to check heap isn\u0027t corrupted. Remove hacked in strings from Field\nand Method; make type fields used the dex cache that is lazily initialized.\nClean up various other TODOs and lint issues.\n\nChange-Id: Iac0afc515c01f5419874d9cdcdb9a7b45443e3fb\n"
    },
    {
      "commit": "b465ab0e103d7760df903c1fddf4fa6b89d5d1f5",
      "tree": "d016f72c58c0dacb7e5f47c232f19378bdacf53b",
      "parents": [
        "69f5bc6759f256a146eefd8a7141d39fcc3b0421"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 24 11:21:21 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 24 14:06:15 2011 -0700"
      },
      "message": "Implement the direct ByteBuffer JNI functions, GetObjectRefType, and the string region functions.\n\nAlso run tests in a consistent (alphabetical) order.\n\nChange-Id: I1bb4f3389e749ec031254d23da349be0397c260d\n"
    },
    {
      "commit": "814e40397fe6c8a2c645bae99f356dbddd6dbe18",
      "tree": "39e7de56ada11f00d4541e4bdb2e76dad6cc5c0a",
      "parents": [
        "d2fbb2bd2448f0872878258727aa1eb2558a0c3b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 23 12:07:56 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 23 14:02:10 2011 -0700"
      },
      "message": "Add some missing JNI string functions, GetObjectArrayElement, and all the primitive array region functions.\n\nThis also pulls the UTF-8/UTF-16 functions out of class String.\n\nChange-Id: I75936b84fd619c9cf91f6e6a6037488220b05781\n"
    }
  ]
}
