)]}'
{
  "log": [
    {
      "commit": "11409ae81a3eaf84d7fd2b3c85b8b06d2bae27f0",
      "tree": "a6f10a6360c4ed8012e5893264e68ac4869fde90",
      "parents": [
        "b605a4f9a8797046ea1aa05f3405a77fb9a80a76"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Sep 23 11:49:36 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 25 13:55:02 2013 -0700"
      },
      "message": "Refactor and improve mod-union tables.\n\nAllow support for adding more mod union tables, reduces the amount\nof baked in logic. Adds support for updating mod union table references\nfrom compaction (not for ReferenceCache table yet).\n\nChange-Id: I1beeda00839ed86ef0e853beff5ce10d0ab2b9d1\n"
    },
    {
      "commit": "b605a4f9a8797046ea1aa05f3405a77fb9a80a76",
      "tree": "1173f9c050d1bae8bdf8ba8950e0995c42fc97ba",
      "parents": [
        "2e2deeb6df3e5a952c194276146706e63ab644a1"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Sep 23 12:57:09 2013 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Sep 23 12:57:09 2013 -0700"
      },
      "message": "Avoid std::string allocations in HasSameNameAndSignature.\n\nCreating a signature requires a std::string that\u0027s only used for the purpose of\na comparison. Avoid the std::string by comparing the elements of the method\u0027s\nproto_ids.\n\nChange-Id: I4394df2ac20bb5896936954f68937fad7e9f7e91\n"
    },
    {
      "commit": "2e2deeb6df3e5a952c194276146706e63ab644a1",
      "tree": "76f985d763a895c59c4a1e9f70a3f7d58cc6b9a3",
      "parents": [
        "a67249065e4c9b3cf4a7c081d95a78df28291ee9"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Sep 23 11:58:57 2013 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Sep 23 11:58:57 2013 -0700"
      },
      "message": "Fix compiler warning in interpreter.\n\nChange-Id: I320a8dbbd27bf7d20cf8b60a3e5d0aaebcda861e\n"
    },
    {
      "commit": "a67249065e4c9b3cf4a7c081d95a78df28291ee9",
      "tree": "8f5b84b886362e9f3bb2e9be6b24c2b61a02f907",
      "parents": [
        "450dcb56ecbf6f729401e753f0a27e4170177ddd"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Sep 23 09:23:37 2013 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Sep 23 09:25:56 2013 -0700"
      },
      "message": "Move hot utf routines into -inl.h.\n\nChange-Id: I7050d8282a7e5870b2bf671d6867c57625e00ccc\n"
    },
    {
      "commit": "450dcb56ecbf6f729401e753f0a27e4170177ddd",
      "tree": "f596d57c5f6fbdc90b3dc68a2008e38ee48e2882",
      "parents": [
        "810b1d704f2db0d935bf5dddae3545f79cabd435"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Sep 20 17:36:02 2013 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Sep 20 18:47:39 2013 -0700"
      },
      "message": "Improve float to integral conversion.\n\nChange-Id: I1597083cb2c04084ce825fe2e3c753fde8309cd8\n"
    },
    {
      "commit": "810b1d704f2db0d935bf5dddae3545f79cabd435",
      "tree": "baf1ec61b47031244cb1fe2458b136c9f9d54f1f",
      "parents": [
        "5c00e28cdc7da675451869a2e5baa8f1c3244892",
        "bb0140e051e62ca0b51b0870c2386ae3110b0556"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 20 14:02:02 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 20 14:02:02 2013 -0700"
      },
      "message": "resolved conflicts for merge of bb0140e0 to dalvik-dev\n\nChange-Id: I31e0c05c5e917cf3275296a7f65bd8b78ec9b78b\n"
    },
    {
      "commit": "5c00e28cdc7da675451869a2e5baa8f1c3244892",
      "tree": "6c90fe3f71638351c230a89c035014802036a60f",
      "parents": [
        "769b0b6c5453c92a049b00eb2525b4136dc2888a",
        "f381419be7cf8df4bf7d217c2e243a63c8ee3736"
      ],
      "author": {
        "name": "Anwar Ghuloum",
        "email": "anwarg@google.com",
        "time": "Fri Sep 20 12:05:28 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 12:05:28 2013 -0700"
      },
      "message": "am f381419b: am 3ff0740a: am ded4f460: Merge \"Fix dumpsys meminfo for art\" into klp-dev\n\n* commit \u0027f381419be7cf8df4bf7d217c2e243a63c8ee3736\u0027:\n  Fix dumpsys meminfo for art\n"
    },
    {
      "commit": "769b0b6c5453c92a049b00eb2525b4136dc2888a",
      "tree": "615106000e3f8e9ae013af353b63821834c65798",
      "parents": [
        "72aaacfd30a9d2ad8ffdde038510706d58b0fd68",
        "85c71397de65148370bad0be6ba95cffd4fd5fa8"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Sep 20 12:05:27 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 12:05:27 2013 -0700"
      },
      "message": "am 85c71397: am 65cc64fb: am 261d3cda: Merge \"Reconcile differences between zip implementations\" into klp-dev\n\n* commit \u002785c71397de65148370bad0be6ba95cffd4fd5fa8\u0027:\n  Reconcile differences between zip implementations\n"
    },
    {
      "commit": "72aaacfd30a9d2ad8ffdde038510706d58b0fd68",
      "tree": "798b1f8f2d63832caaba5616faf65397151e80fe",
      "parents": [
        "b1ead20d83c7c5eb7f9c73b5fc8da4e99cd22986",
        "50c3e9ca33729b7f7462f53f3d33cab5db88948e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 20 11:40:40 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 20 11:40:40 2013 -0700"
      },
      "message": "resolved conflicts for merge of 50c3e9ca to dalvik-dev\n\nChange-Id: Icbb5373de3ca5b7a6110b5ab44f83daa05051f02\n"
    },
    {
      "commit": "bb0140e051e62ca0b51b0870c2386ae3110b0556",
      "tree": "a180a70b7e53a67cca30a93379659e9754c3d74a",
      "parents": [
        "f381419be7cf8df4bf7d217c2e243a63c8ee3736",
        "8ae693027ae56ed19dc5f2e81e9a3a4a37988754"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 20 11:22:41 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 11:22:41 2013 -0700"
      },
      "message": "am 8ae69302: am 7d690ba9: Merge \"Re-enable concurrent system weak sweeping.\" into klp-dev\n\n* commit \u00278ae693027ae56ed19dc5f2e81e9a3a4a37988754\u0027:\n  Re-enable concurrent system weak sweeping.\n"
    },
    {
      "commit": "f381419be7cf8df4bf7d217c2e243a63c8ee3736",
      "tree": "abda839c0bdb1e1d5544bcba3f960b5899c8baf6",
      "parents": [
        "85c71397de65148370bad0be6ba95cffd4fd5fa8",
        "3ff0740a7b4e5739ad0500bdc1d15a46d00b606e"
      ],
      "author": {
        "name": "Anwar Ghuloum",
        "email": "anwarg@google.com",
        "time": "Fri Sep 20 11:20:57 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 11:20:57 2013 -0700"
      },
      "message": "am 3ff0740a: am ded4f460: Merge \"Fix dumpsys meminfo for art\" into klp-dev\n\n* commit \u00273ff0740a7b4e5739ad0500bdc1d15a46d00b606e\u0027:\n  Fix dumpsys meminfo for art\n"
    },
    {
      "commit": "85c71397de65148370bad0be6ba95cffd4fd5fa8",
      "tree": "2d23dc0c9bc7624bd33e88382af0e8cb30408d3d",
      "parents": [
        "50c3e9ca33729b7f7462f53f3d33cab5db88948e",
        "65cc64fb58c24db239fba2c93689a785ec598912"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Sep 20 11:20:43 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 11:20:43 2013 -0700"
      },
      "message": "am 65cc64fb: am 261d3cda: Merge \"Reconcile differences between zip implementations\" into klp-dev\n\n* commit \u002765cc64fb58c24db239fba2c93689a785ec598912\u0027:\n  Reconcile differences between zip implementations\n"
    },
    {
      "commit": "50c3e9ca33729b7f7462f53f3d33cab5db88948e",
      "tree": "e2fea442dde653747440dabc61604e84693d3a8d",
      "parents": [
        "e47637cc7c96e654d2c340e6006c232c8078673b",
        "88f774c1cb21081b23eddbabb472af3576d0350b"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 20 11:20:24 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 11:20:24 2013 -0700"
      },
      "message": "am 88f774c1: am 0f72e413: Improve heap verification.\n\n* commit \u002788f774c1cb21081b23eddbabb472af3576d0350b\u0027:\n  Improve heap verification.\n"
    },
    {
      "commit": "8ae693027ae56ed19dc5f2e81e9a3a4a37988754",
      "tree": "8b4758ce0d807e761ba8b9628cbdf3b6c704c315",
      "parents": [
        "3ff0740a7b4e5739ad0500bdc1d15a46d00b606e",
        "7d690ba929a2a02e2b6344749561d49e2c0d55d2"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 20 11:04:25 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 20 11:04:25 2013 -0700"
      },
      "message": "am 7d690ba9: Merge \"Re-enable concurrent system weak sweeping.\" into klp-dev\n\n* commit \u00277d690ba929a2a02e2b6344749561d49e2c0d55d2\u0027:\n  Re-enable concurrent system weak sweeping.\n"
    },
    {
      "commit": "7d690ba929a2a02e2b6344749561d49e2c0d55d2",
      "tree": "0bb9e542b9474d5b0a75cc9346de2fafb71812fa",
      "parents": [
        "ded4f4600d61f2a1c1c02b145d14c715e0605d70",
        "c11d9b8870de5f860b13c84003ade7b3f3125a52"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 20 18:02:11 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 20 18:02:12 2013 +0000"
      },
      "message": "Merge \"Re-enable concurrent system weak sweeping.\" into klp-dev"
    },
    {
      "commit": "c11d9b8870de5f860b13c84003ade7b3f3125a52",
      "tree": "89b0250d35a950774f98fa1abfa9cc296c9d85db",
      "parents": [
        "261d3cda32b28782d894be0244e617f78182ee3b"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 19 10:01:59 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 20 10:36:49 2013 -0700"
      },
      "message": "Re-enable concurrent system weak sweeping.\n\nEnabled by disallowing new system weaks during the pause and\nre-allowing it after the system weaks have been swept. Reduces\nGC pause by ~1ms.\n\nFixes pause regression caused by fix for\nBug: 10626133\n\nChange-Id: If49d33e7ef19cb728ed3cef5187acfa53b9b05d8\n"
    },
    {
      "commit": "3ff0740a7b4e5739ad0500bdc1d15a46d00b606e",
      "tree": "ae756b28060e503edec7d2db5e561299a6ca696c",
      "parents": [
        "65cc64fb58c24db239fba2c93689a785ec598912",
        "ded4f4600d61f2a1c1c02b145d14c715e0605d70"
      ],
      "author": {
        "name": "Anwar Ghuloum",
        "email": "anwarg@google.com",
        "time": "Thu Sep 19 17:50:08 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 19 17:50:08 2013 -0700"
      },
      "message": "am ded4f460: Merge \"Fix dumpsys meminfo for art\" into klp-dev\n\n* commit \u0027ded4f4600d61f2a1c1c02b145d14c715e0605d70\u0027:\n  Fix dumpsys meminfo for art\n"
    },
    {
      "commit": "ded4f4600d61f2a1c1c02b145d14c715e0605d70",
      "tree": "a390701662d894d26a97c51f752a7b69c0d377dd",
      "parents": [
        "261d3cda32b28782d894be0244e617f78182ee3b",
        "caacdf326cfe09decfca0a15c62ebe10b774e05e"
      ],
      "author": {
        "name": "Anwar Ghuloum",
        "email": "anwarg@google.com",
        "time": "Fri Sep 20 00:47:48 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 20 00:47:48 2013 +0000"
      },
      "message": "Merge \"Fix dumpsys meminfo for art\" into klp-dev"
    },
    {
      "commit": "caacdf326cfe09decfca0a15c62ebe10b774e05e",
      "tree": "d1f0fe587a4d19ba613226fdbde8c3b9f87d70b4",
      "parents": [
        "0f72e4136aecaf6976fdb55916bbd7b6d5c9c77b"
      ],
      "author": {
        "name": "Anwar Ghuloum",
        "email": "anwarg@google.com",
        "time": "Thu Sep 19 17:29:21 2013 -0700"
      },
      "committer": {
        "name": "Anwar Ghuloum",
        "email": "anwarg@google.com",
        "time": "Thu Sep 19 17:34:13 2013 -0700"
      },
      "message": "Fix dumpsys meminfo for art\n\nBUG:10112253\nChange-Id: I2a34cc0841bdcf922c4ab4eadda360313858a0d6\n"
    },
    {
      "commit": "b1ead20d83c7c5eb7f9c73b5fc8da4e99cd22986",
      "tree": "3c76fe9b581f695b04d6a0205aca640d1fbebeca",
      "parents": [
        "7c748a2f0c04a088471eff7cd311c024cbbdc04e",
        "8b2c0b9abc3f520495f4387ea040132ba85cae69"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Sep 20 00:10:53 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 20 00:10:53 2013 +0000"
      },
      "message": "Merge \"Use class def index from java.lang.Class.\" into dalvik-dev"
    },
    {
      "commit": "65cc64fb58c24db239fba2c93689a785ec598912",
      "tree": "ec46d06399600e31d6c52f5d65fc2e278c54ea35",
      "parents": [
        "88f774c1cb21081b23eddbabb472af3576d0350b",
        "261d3cda32b28782d894be0244e617f78182ee3b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Sep 19 17:07:09 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 19 17:07:09 2013 -0700"
      },
      "message": "am 261d3cda: Merge \"Reconcile differences between zip implementations\" into klp-dev\n\n* commit \u0027261d3cda32b28782d894be0244e617f78182ee3b\u0027:\n  Reconcile differences between zip implementations\n"
    },
    {
      "commit": "261d3cda32b28782d894be0244e617f78182ee3b",
      "tree": "4e85dfadf2e0075c46f2d641312954226a1810e8",
      "parents": [
        "0f72e4136aecaf6976fdb55916bbd7b6d5c9c77b",
        "72fcca2477e02da2d3970aefc75465ba1f20ce9c"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Sep 20 00:05:16 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 20 00:05:16 2013 +0000"
      },
      "message": "Merge \"Reconcile differences between zip implementations\" into klp-dev"
    },
    {
      "commit": "88f774c1cb21081b23eddbabb472af3576d0350b",
      "tree": "215686bf7a8a9d639644df38c87f39ca72a920d6",
      "parents": [
        "cb8c3cbeb3ce53fa15f070f32e4a6a5cbb5b8c7b",
        "0f72e4136aecaf6976fdb55916bbd7b6d5c9c77b"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 19 16:25:19 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 19 16:25:19 2013 -0700"
      },
      "message": "am 0f72e413: Improve heap verification.\n\n* commit \u00270f72e4136aecaf6976fdb55916bbd7b6d5c9c77b\u0027:\n  Improve heap verification.\n"
    },
    {
      "commit": "7c748a2f0c04a088471eff7cd311c024cbbdc04e",
      "tree": "6fa0e7cabd5889de547e3a4977ca9eb6d52a1f19",
      "parents": [
        "5712d5d04640925970db9c98938ffaf806b3962c",
        "e47637cc7c96e654d2c340e6006c232c8078673b"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 19 16:08:57 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 19 16:08:57 2013 -0700"
      },
      "message": "am e47637cc: 4-byte align 64-bit values in Get/Set Double/Long for GCC 4.8.\n\n* commit \u0027e47637cc7c96e654d2c340e6006c232c8078673b\u0027:\n  4-byte align 64-bit values in Get/Set Double/Long for GCC 4.8.\n"
    },
    {
      "commit": "72fcca2477e02da2d3970aefc75465ba1f20ce9c",
      "tree": "3ad90394d1483839cdaaf263afd90af95a516813",
      "parents": [
        "ab482f5eff21af748c906857f529a3c17df35964"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Sep 19 09:25:34 2013 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Sep 19 15:49:23 2013 -0700"
      },
      "message": "Reconcile differences between zip implementations\n\nCopy new behavior of ZipFileRO to art\u0027s zip_archive.cc\n\nBug: 10424836\nChange-Id: I0ec81425ab372d0884c684eab299449834c35e82\n"
    },
    {
      "commit": "e47637cc7c96e654d2c340e6006c232c8078673b",
      "tree": "4e49c4d7bccbb7903b6de186b8676a77d7c157bc",
      "parents": [
        "f466553d7f2f941765adaa657c340ff31b55d891"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 19 15:13:16 2013 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 19 15:37:02 2013 -0700"
      },
      "message": "4-byte align 64-bit values in Get/Set Double/Long for GCC 4.8.\n\nBug: 10837416\nChange-Id: Ibb562407d81c2085666ae8824e7570f22e56eaa7\n"
    },
    {
      "commit": "8b2c0b9abc3f520495f4387ea040132ba85cae69",
      "tree": "13ea7e5c4e3d1804ec8d420d36f7ea5ab18f6ac0",
      "parents": [
        "5712d5d04640925970db9c98938ffaf806b3962c"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Sep 19 02:56:49 2013 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Sep 19 15:17:12 2013 -0700"
      },
      "message": "Use class def index from java.lang.Class.\n\nBug: 10244719\nDepends on:\nhttps://googleplex-android-review.git.corp.google.com/362363\nThis removes the computation of the dex file index, when necessary this is\ncomputed by searching the dex file. Its only necessary in\ndalvik.system.DexFile.defineClassNative and DexFile::FindInClassPath, the\nlatter not showing up significantly in profiling with this change.\n\nChange-Id: I20c73a3b17d86286428ab0fd21bc13f51f36c85c\n"
    },
    {
      "commit": "0f72e4136aecaf6976fdb55916bbd7b6d5c9c77b",
      "tree": "f66e033a77c0e9bfb39bde51305f8d155b2a73a3",
      "parents": [
        "9e452d1d097bc0f29a24e13ced5477fa3c9463f9"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 06 16:40:01 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 19 09:47:39 2013 -0700"
      },
      "message": "Improve heap verification.\n\nRe-enabled checking the allocation stack for heap verification.\n\nAdded tracking of recent frees in DlMallocSpace if debug spaces is\nenabled. This is useful when you have heap corruption caused by a\nlive object referencing a recently freed object.\n\nAdded various other sanity checks in the GC.\n\nBug: 10626133\n\nChange-Id: I5ada11966336ae9a06615b16f4b933f05b5d0c32\n"
    },
    {
      "commit": "5712d5d04640925970db9c98938ffaf806b3962c",
      "tree": "d1a8da088f4b62369aa6418a5c36449a5e6cdc1c",
      "parents": [
        "8aa003fcb06c3473a9e58d2071f2518aa53077f8",
        "f466553d7f2f941765adaa657c340ff31b55d891"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 17:59:36 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 18:05:34 2013 -0700"
      },
      "message": "resolved conflicts for merge of f466553d to dalvik-dev\n\nChange-Id: I1205b5c5da3a02e410fff760a8b0dda41cb7249f\n"
    },
    {
      "commit": "f466553d7f2f941765adaa657c340ff31b55d891",
      "tree": "d30cfd9781a58ab37e2b91645dc541db42bd570d",
      "parents": [
        "b5a80a1eb89f621950aa9a93c0c6655a24c7cc96",
        "cb8c3cbeb3ce53fa15f070f32e4a6a5cbb5b8c7b"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 17:40:07 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 18 17:40:07 2013 -0700"
      },
      "message": "am cb8c3cbe: am 9e452d1d: Fix system weak sweeping race.\n\n* commit \u0027cb8c3cbeb3ce53fa15f070f32e4a6a5cbb5b8c7b\u0027:\n  Fix system weak sweeping race.\n"
    },
    {
      "commit": "cb8c3cbeb3ce53fa15f070f32e4a6a5cbb5b8c7b",
      "tree": "eb1c8f22b824113cc36f23e0f76cdf3f6de31f4c",
      "parents": [
        "ba5c7a7eed2911d41946ef96e8bc2cfc11442e85",
        "9e452d1d097bc0f29a24e13ced5477fa3c9463f9"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 17:37:03 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 18 17:37:03 2013 -0700"
      },
      "message": "am 9e452d1d: Fix system weak sweeping race.\n\n* commit \u00279e452d1d097bc0f29a24e13ced5477fa3c9463f9\u0027:\n  Fix system weak sweeping race.\n"
    },
    {
      "commit": "9e452d1d097bc0f29a24e13ced5477fa3c9463f9",
      "tree": "3386b2ba7a3187bb0cea4cc1a990eb7c4e7578d8",
      "parents": [
        "3c60d13761e245b74f862987b3eae7bd5fdda5f3"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 16:35:15 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 17:09:42 2013 -0700"
      },
      "message": "Fix system weak sweeping race.\n\nThere was a race related to sweeping the intern table with mutators\nunpaused. The race occurred when an unused intern was seen as not\nreferenced by the GC but another thread attempted to create intern\nthis same string before we swept the system weaks. This caused the\nthread to get a pointer to the stale string which was shortly going\nto be reclaimed.\n\nThe fix moves sweeping the system weaks inside of the pause. This is\na temporary solution since it adds \u003c 1ms of pause time.\n\nBug: 10626133\n\nChange-Id: Ibf669ae5237ddb2ab44a9efd72e207bd06b53147\n"
    },
    {
      "commit": "8aa003fcb06c3473a9e58d2071f2518aa53077f8",
      "tree": "4d0dc3977747fd55a43ee7410b46328e498aeabe",
      "parents": [
        "ba3fc30c8e5ca233fd9a4d71397461cf15d75c7c",
        "b5a80a1eb89f621950aa9a93c0c6655a24c7cc96"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 14:29:58 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 18 14:29:58 2013 -0700"
      },
      "message": "am b5a80a1e: am ba5c7a7e: am 3c60d137: Merge \"Fix soft reference clearing issue.\" into klp-dev\n\n* commit \u0027b5a80a1eb89f621950aa9a93c0c6655a24c7cc96\u0027:\n  Fix soft reference clearing issue.\n"
    },
    {
      "commit": "b5a80a1eb89f621950aa9a93c0c6655a24c7cc96",
      "tree": "62e4e5f59729e47d024aa883a48eca2458ddcbf2",
      "parents": [
        "5b0daf5ce04f58e08a5bc38a85480b816e3812b2",
        "ba5c7a7eed2911d41946ef96e8bc2cfc11442e85"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 14:27:04 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 18 14:27:04 2013 -0700"
      },
      "message": "am ba5c7a7e: am 3c60d137: Merge \"Fix soft reference clearing issue.\" into klp-dev\n\n* commit \u0027ba5c7a7eed2911d41946ef96e8bc2cfc11442e85\u0027:\n  Fix soft reference clearing issue.\n"
    },
    {
      "commit": "ba5c7a7eed2911d41946ef96e8bc2cfc11442e85",
      "tree": "2f09f2291d02dc29253807589059cc4d26a9a9fa",
      "parents": [
        "ff6cff9e330196966217de2c58e28d307822479c",
        "3c60d13761e245b74f862987b3eae7bd5fdda5f3"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 14:23:37 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 18 14:23:37 2013 -0700"
      },
      "message": "am 3c60d137: Merge \"Fix soft reference clearing issue.\" into klp-dev\n\n* commit \u00273c60d13761e245b74f862987b3eae7bd5fdda5f3\u0027:\n  Fix soft reference clearing issue.\n"
    },
    {
      "commit": "3c60d13761e245b74f862987b3eae7bd5fdda5f3",
      "tree": "765ee57ad4bad6cf675c315c75e9a206e6ee2e24",
      "parents": [
        "ab482f5eff21af748c906857f529a3c17df35964",
        "b4ea4de2d6b63a3855968f2748878018a27af106"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 21:22:09 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 18 21:22:09 2013 +0000"
      },
      "message": "Merge \"Fix soft reference clearing issue.\" into klp-dev"
    },
    {
      "commit": "b4ea4de2d6b63a3855968f2748878018a27af106",
      "tree": "9f27a9eef32d9aa0147abee75fbbd36d1ffe8281",
      "parents": [
        "c4621985bdfc2b27494087e5dee65a6d0cc5a632"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 09:58:29 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 14:11:30 2013 -0700"
      },
      "message": "Fix soft reference clearing issue.\n\nThere was a bug where we would check that the pending next field was\nnon null before enqueueing up cleared references. This was causing\nreferences to not get queued up during ProcessReferences.\n\nBug: 10626133\n\nChange-Id: Ic1e00e42045092280b4abb3d41f1c58f7adbc3de\n"
    },
    {
      "commit": "ba3fc30c8e5ca233fd9a4d71397461cf15d75c7c",
      "tree": "dc67e74e1c7fdc011934a59394e5dfa85e93336b",
      "parents": [
        "d7d7f6e6916d4cdba89a28670440ec3a59d1a862",
        "1fc5800def46a2fa6cbd235fcb8af099ee35a127"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Sep 18 20:56:10 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 18 20:56:10 2013 +0000"
      },
      "message": "Merge \"Art compiler: minor instruction assembler fix\" into dalvik-dev"
    },
    {
      "commit": "1fc5800def46a2fa6cbd235fcb8af099ee35a127",
      "tree": "0b0713eaec5657b789acb344154b92ae66284dd6",
      "parents": [
        "cb135ad769a5368f6ceb8caf25105a95580cbd6a"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Sep 18 12:49:36 2013 -0700"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Sep 18 13:55:25 2013 -0700"
      },
      "message": "Art compiler: minor instruction assembler fix\n\nDuring the assembly phase, we iteratively walk through the LIR\nencoding instructions until we can complete a full pass without\nwithout having to change the sequence because of displacement\noverflow.\n\nIn the (fairly common) situation in which a 16-bit cbnz/cbz\ncan\u0027t reach the target, we expand it to a compare and branch sequence\nInitially, we use a 16-bit Thumb1 unconditional branch, which itself\nmay be expanded in a future pass to a 32-bit branch.\n\nThe original cbnz/cbz LIR is converted into a cmp, and a new branch\ninstruction is inserted following.  The problem here is that by doing\na following insertion, that new instruction will be the next one\nconsidered to determine if it can reach it\u0027s target.  Because it\nis new, though, it\u0027s starting offset will show as zero - making it\nmuch more likely that it will be treated as a displacement overflow\nand be converted to a 32-bit branch.\n\nThis is not a correctness issue - the bad offset will be corrected\non the next pass, but it does result in unnecessary uses of 32-bit\nbranches where 16-bit ones would work.\n\nChange-Id: Ie68a93fd319f0f7c603e1d870588047ad6a0779f\n"
    },
    {
      "commit": "d7d7f6e6916d4cdba89a28670440ec3a59d1a862",
      "tree": "9a8cc16516e84bbb6cdf92567d801d67eb6c2a7e",
      "parents": [
        "dab23d0f0433d42a6c508741d61aba522a5e6230"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Sep 18 12:00:45 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Sep 18 12:00:45 2013 -0700"
      },
      "message": "Add JNI tests missing from 4ffdc6bd962c37bca407267c0858b37bb18a9857.\n\nChange-Id: I4fa61246b5e92936698e1c608189d51768da456f\n"
    },
    {
      "commit": "dab23d0f0433d42a6c508741d61aba522a5e6230",
      "tree": "de729a2f3b66ba3a77570b4eb7b2a17591d45845",
      "parents": [
        "b60df31f4c7a1642ef8b3bad1cbdba4d471d4e55",
        "5b0daf5ce04f58e08a5bc38a85480b816e3812b2"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Sep 18 10:19:16 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 18 10:19:16 2013 -0700"
      },
      "message": "am 5b0daf5c: am ff6cff9e: am ab482f5e: Merge \"Allow traversal into /storage paths.\" into klp-dev\n\n* commit \u00275b0daf5ce04f58e08a5bc38a85480b816e3812b2\u0027:\n  Allow traversal into /storage paths.\n"
    },
    {
      "commit": "5b0daf5ce04f58e08a5bc38a85480b816e3812b2",
      "tree": "623839be8f0fa0f3c94191565e40272efa93dc70",
      "parents": [
        "d910172d7acc5d62617e40d1c264a8268eb75a7e",
        "ff6cff9e330196966217de2c58e28d307822479c"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Sep 18 10:16:45 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 18 10:16:45 2013 -0700"
      },
      "message": "am ff6cff9e: am ab482f5e: Merge \"Allow traversal into /storage paths.\" into klp-dev\n\n* commit \u0027ff6cff9e330196966217de2c58e28d307822479c\u0027:\n  Allow traversal into /storage paths.\n"
    },
    {
      "commit": "ff6cff9e330196966217de2c58e28d307822479c",
      "tree": "ffcfe9bc5b0d8a783c34718bdf7c212003aba330",
      "parents": [
        "7def68e29cd4dc3e5e3d76b2ba5ee175871aff7e",
        "ab482f5eff21af748c906857f529a3c17df35964"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Sep 18 10:14:00 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 18 10:14:00 2013 -0700"
      },
      "message": "am ab482f5e: Merge \"Allow traversal into /storage paths.\" into klp-dev\n\n* commit \u0027ab482f5eff21af748c906857f529a3c17df35964\u0027:\n  Allow traversal into /storage paths.\n"
    },
    {
      "commit": "ab482f5eff21af748c906857f529a3c17df35964",
      "tree": "dea612debd0e7aa4451d1e74c2e1073fe2fe5783",
      "parents": [
        "c4621985bdfc2b27494087e5dee65a6d0cc5a632",
        "52cd1e8f2f0622a174f883e24151ab873170787f"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Sep 18 17:10:43 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 18 17:10:43 2013 +0000"
      },
      "message": "Merge \"Allow traversal into /storage paths.\" into klp-dev"
    },
    {
      "commit": "b60df31f4c7a1642ef8b3bad1cbdba4d471d4e55",
      "tree": "f7d538d544137bd481f8605ff1f0b0580509e6fe",
      "parents": [
        "3b588e09eac6fb2aff64595e2232e479703850fc",
        "d910172d7acc5d62617e40d1c264a8268eb75a7e"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Sep 18 09:53:58 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 18 09:53:58 2013 -0700"
      },
      "message": "am d910172d: Don\\\u0027t fail if llvm.mk is not available.\n\n* commit \u0027d910172d7acc5d62617e40d1c264a8268eb75a7e\u0027:\n  Don\u0027t fail if llvm.mk is not available.\n"
    },
    {
      "commit": "d910172d7acc5d62617e40d1c264a8268eb75a7e",
      "tree": "991f0eb414007da143eb02cdbae804d9a0bcdf5a",
      "parents": [
        "613eae4a6f75282c0737a84850418afcab54d4e8"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Sep 18 09:36:27 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Sep 18 09:39:08 2013 -0700"
      },
      "message": "Don\u0027t fail if llvm.mk is not available.\n\nThis enables doing dalvik minimal host build without external/llvm.\n\nChange-Id: I1f44f4d29b941086a79758c816674c9f9966eb31\n"
    },
    {
      "commit": "3b588e09eac6fb2aff64595e2232e479703850fc",
      "tree": "6a6608e3fa027631715e3da671859daed222c6f2",
      "parents": [
        "3523909c99a27729d9a0d6fe3624f09dfadf351c"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Wed Sep 11 14:33:18 2013 +0200"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Wed Sep 18 09:24:45 2013 +0200"
      },
      "message": "Optimize instruction data fetch in interpreter.\n\nThe computed goto implementation prevents the compiler from detecting we are\nloading the first 16 bits of instruction twice: first one to get the opcode and\nsecond one to fetch first instruction\u0027s operand(s) like vA and vB.\n\nWe now load the 16 bits into a local variable and decode opcode and operands\nfrom this variable. And do the same in the switch-based implementation for\nconsistency.\n\nThe performance improvement is 5% in average on benchmark applications suite.\n\nAlso remove unused \"Thread* self\" parameter from DoIGetQuick and DoIPutQuick.\n\nBug: 10703860\nChange-Id: I83026ed6e78f642ac3dcdc6edbb6056fe012005f\n"
    },
    {
      "commit": "3523909c99a27729d9a0d6fe3624f09dfadf351c",
      "tree": "610a5acc4d2e78d43a551380527304270d841f73",
      "parents": [
        "8c7ec8cd8e39809ed31cb62bc3b068430042bd76",
        "947ff080753c786a74f1cd7aeb09f717bb7074bd"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Wed Sep 18 07:10:55 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 18 07:10:55 2013 +0000"
      },
      "message": "Merge \"Load shadow frame\u0027s this object only upon instrumentation.\" into dalvik-dev"
    },
    {
      "commit": "8c7ec8cd8e39809ed31cb62bc3b068430042bd76",
      "tree": "0ef55b9099fab8a4216e06ce67655d38f7a43940",
      "parents": [
        "b307052d619ec757478951fc026e6230c92e3b36",
        "6aa3df965395566ed6a4fec4af37c2b7577992e9"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Sep 18 00:33:00 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 18 00:33:01 2013 +0000"
      },
      "message": "Merge \"Refactor system weak sweeping, add support for modification.\" into dalvik-dev"
    },
    {
      "commit": "52cd1e8f2f0622a174f883e24151ab873170787f",
      "tree": "01aab8fb4ccd930e7b11bb353f1d344170f30acf",
      "parents": [
        "5666afd6854b5634ae741dc8a3a633fc47d52168"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 17 16:25:12 2013 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Sep 17 17:21:48 2013 -0700"
      },
      "message": "Allow traversal into /storage paths.\n\nApps are no longer required to have sdcard_r or sdcard_rw to access\nsome parts of external storage.  Relax the mount parameters to allow\neveryone to traverse.\n\nBug: 10577808\nChange-Id: Ife3c6fb18028f7093ff853459c1ca1e0ec7a6d01\n"
    },
    {
      "commit": "6aa3df965395566ed6a4fec4af37c2b7577992e9",
      "tree": "c17406cf6cbea16165ad05130609450ff0e1e204",
      "parents": [
        "cb135ad769a5368f6ceb8caf25105a95580cbd6a"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 15:17:28 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 16:31:24 2013 -0700"
      },
      "message": "Refactor system weak sweeping, add support for modification.\n\nRequired for moving collectors.\n\nChange-Id: Ib97ba4a05af1139f8d388077a15e62bcb9534855\n"
    },
    {
      "commit": "b307052d619ec757478951fc026e6230c92e3b36",
      "tree": "7fee60cf62ec02fab20f70f111b5925be8a772fa",
      "parents": [
        "cb135ad769a5368f6ceb8caf25105a95580cbd6a",
        "613eae4a6f75282c0737a84850418afcab54d4e8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 14:18:21 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 14:18:21 2013 -0700"
      },
      "message": "resolved conflicts for merge of 613eae4a to dalvik-dev\n\nChange-Id: I61734cbf585decf9a50ba23f008b341d025339ff\n"
    },
    {
      "commit": "613eae4a6f75282c0737a84850418afcab54d4e8",
      "tree": "89e12ae679125df6cf83c9add1eb54e5a0ff8eb4",
      "parents": [
        "2cedd474625e464b37b7e86e08ad06231e5fb148",
        "7def68e29cd4dc3e5e3d76b2ba5ee175871aff7e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 13:48:44 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 17 13:48:44 2013 -0700"
      },
      "message": "am 7def68e2: am c4621985: Fix race in root marking.\n\n* commit \u00277def68e29cd4dc3e5e3d76b2ba5ee175871aff7e\u0027:\n  Fix race in root marking.\n"
    },
    {
      "commit": "7def68e29cd4dc3e5e3d76b2ba5ee175871aff7e",
      "tree": "89e12ae679125df6cf83c9add1eb54e5a0ff8eb4",
      "parents": [
        "141495d8e673d23e92bc6327babb51d514892bad",
        "c4621985bdfc2b27494087e5dee65a6d0cc5a632"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 13:45:55 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 17 13:45:55 2013 -0700"
      },
      "message": "am c4621985: Fix race in root marking.\n\n* commit \u0027c4621985bdfc2b27494087e5dee65a6d0cc5a632\u0027:\n  Fix race in root marking.\n"
    },
    {
      "commit": "c4621985bdfc2b27494087e5dee65a6d0cc5a632",
      "tree": "d8165f5b8d337e73942ee29d66fb40585dc7caf1",
      "parents": [
        "5666afd6854b5634ae741dc8a3a633fc47d52168"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Sep 16 19:43:47 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 17 10:03:00 2013 -0700"
      },
      "message": "Fix race in root marking.\n\nThere was a race which caused the class linker / intern table to not\nbecome dirty after adding a root. We now guard the is dirty flag by\nthe corresponding locks to prevent this from occuring. This was\ncausing roots to be occasionally missed.\n\nAlso fixes the bug where we occasionally scan more cards than\nneeded.\n\nBug: 10626133\n\nChange-Id: I0f6e72d92035ff463954d66988ef610ea0df61be\n"
    },
    {
      "commit": "947ff080753c786a74f1cd7aeb09f717bb7074bd",
      "tree": "ae8d4ceb42602b19b62b61205a5bcb70e6ef6ab3",
      "parents": [
        "ad5f8731448f03c59d5fc8d9b5b25ee91d351ba9"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Tue Sep 17 14:10:13 2013 +0200"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Tue Sep 17 15:28:37 2013 +0200"
      },
      "message": "Load shadow frame\u0027s this object only upon instrumentation.\n\nWe used to load the shadow frame\u0027s this object when entering the interpreter\nand push it into thread\u0027s SIRT to make it visible to garbage collector. But\nit is only used by instrumentation listeners.\n\nWe now move this load at each place an instrumentation listener is called. This\navoids loading it when instrumentation is disabled. This also allows to remove\nthe SIRT reference and the push/pop management it implies when entering/exiting\nthe interpreter.\n\nThe performance improvement is 6% in average on our benchmarks suite.\n\nThis CL also makes method Instrumentation::ExceptionCaughtEvent const so we can\nuse a \"const instrumentation::Instrumentation*\" object in interpreter.\n\nChange-Id: I2caccba9a906f244c8057b24031250f9824cc711\n"
    },
    {
      "commit": "cb135ad769a5368f6ceb8caf25105a95580cbd6a",
      "tree": "105452ea7614b0023131d97be841115f4cebe230",
      "parents": [
        "963d635a038de778c2c3e32b9acd6fe9aa445bf0",
        "c729a6b936d59562bd9fb830a595d9ff65dfd129"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Mon Sep 16 12:32:04 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 16 12:32:04 2013 +0000"
      },
      "message": "Merge \"Improve promotion of double-precision regs\" into dalvik-dev"
    },
    {
      "commit": "963d635a038de778c2c3e32b9acd6fe9aa445bf0",
      "tree": "0244e74e5a07ab1f804850755240007ab9b7c25a",
      "parents": [
        "cd6f5fe5b08dd6bcc05cbc77355593bf3540caa0",
        "2cedd474625e464b37b7e86e08ad06231e5fb148"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 18:02:28 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Sep 14 18:02:28 2013 -0700"
      },
      "message": "am 2cedd474: am 141495d8: am 5666afd6: Timely color fix\n\n* commit \u00272cedd474625e464b37b7e86e08ad06231e5fb148\u0027:\n  Timely color fix\n"
    },
    {
      "commit": "2cedd474625e464b37b7e86e08ad06231e5fb148",
      "tree": "7021968a9a2b2518c7056c284701ca801816e247",
      "parents": [
        "1c793b20e567faba6c8b39aed2d1a461270c1d08",
        "141495d8e673d23e92bc6327babb51d514892bad"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 18:01:09 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Sep 14 18:01:09 2013 -0700"
      },
      "message": "am 141495d8: am 5666afd6: Timely color fix\n\n* commit \u0027141495d8e673d23e92bc6327babb51d514892bad\u0027:\n  Timely color fix\n"
    },
    {
      "commit": "141495d8e673d23e92bc6327babb51d514892bad",
      "tree": "7021968a9a2b2518c7056c284701ca801816e247",
      "parents": [
        "04a1a041ed6a2fb797c28480cbf7f1ebe8a02658",
        "5666afd6854b5634ae741dc8a3a633fc47d52168"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 17:58:50 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Sep 14 17:58:50 2013 -0700"
      },
      "message": "am 5666afd6: Timely color fix\n\n* commit \u00275666afd6854b5634ae741dc8a3a633fc47d52168\u0027:\n  Timely color fix\n"
    },
    {
      "commit": "c729a6b936d59562bd9fb830a595d9ff65dfd129",
      "tree": "105452ea7614b0023131d97be841115f4cebe230",
      "parents": [
        "cd6f5fe5b08dd6bcc05cbc77355593bf3540caa0"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 16:04:31 2013 -0700"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 16:04:31 2013 -0700"
      },
      "message": "Improve promotion of double-precision regs\n\nMinor rework of the double allocation mechanism to more explicitly\nmanage the allocation of preserved floating point single pairs as\ndoubles.\n\nChange-Id: Id9db4b0e86e5ef54a5db587f367e00efdf7e98d6\n"
    },
    {
      "commit": "5666afd6854b5634ae741dc8a3a633fc47d52168",
      "tree": "0260272bc233589d22fb18511b9f15753f58dc26",
      "parents": [
        "6fc9251ae4f34c31351d9d902dd6c6cbc7baba1c"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 08:21:05 2013 -0700"
      },
      "committer": {
        "name": "Bill Buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 20:56:54 2013 +0000"
      },
      "message": "Timely color fix\n\nSee b/10690000\n\nFor efficiency, the Quick compiler will not flush incoming register\narguments to the frame if their underlying Dalvik virtual registers\nhave been promoted to physical registers.  In this case, though,\nthere was a bug on Arm devices in that an incoming Double was promoted\nto physical floating point registers, but not in a usable form.  The\nentry code generation saw that both halves of the double were promoted,\nbut failed to check if it was in a form usable as a double.\n\nIn this particular case, it meant that subsequent uses of the incoming\nargument referred to the uninitialized home location in the frame,\nresulting in garbage color values.\n\nThat\u0027s the bug.  Another problem is that the incoming double should\nnever have been promoted to an unusable state in the first place - but\nthat\u0027s merely an efficiency issue and will be addressed in another CL.\n\nNote: no good way to generate a regression test for this issue.  The\nbug triggered because of an unusual sequence of events driving register\npromotion that can\u0027t easily (or robustly) be triggered from Java source.\n\nChange-Id: I7242422277193a04376461134dde71e9dec55576\n(cherry picked from commit d0a03b8099347dee6e4bab3af95e14cd5a03b29c)"
    },
    {
      "commit": "cd6f5fe5b08dd6bcc05cbc77355593bf3540caa0",
      "tree": "0244e74e5a07ab1f804850755240007ab9b7c25a",
      "parents": [
        "0160d991571fedc4c1c252a8865c59a7c8cd4973",
        "d0a03b8099347dee6e4bab3af95e14cd5a03b29c"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 17:35:33 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Sep 14 17:35:33 2013 +0000"
      },
      "message": "Merge \"Timely color fix\" into dalvik-dev"
    },
    {
      "commit": "d0a03b8099347dee6e4bab3af95e14cd5a03b29c",
      "tree": "362b8449522905e65da2e5ec443168dba3a21a0d",
      "parents": [
        "11fc721de0ddadda0e57628e9c672d517f635c04"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 08:21:05 2013 -0700"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Sep 14 08:40:28 2013 -0700"
      },
      "message": "Timely color fix\n\nSee b/10690000\n\nFor efficiency, the Quick compiler will not flush incoming register\narguments to the frame if their underlying Dalvik virtual registers\nhave been promoted to physical registers.  In this case, though,\nthere was a bug on Arm devices in that an incoming Double was promoted\nto physical floating point registers, but not in a usable form.  The\nentry code generation saw that both halves of the double were promoted,\nbut failed to check if it was in a form usable as a double.\n\nIn this particular case, it meant that subsequent uses of the incoming\nargument referred to the uninitialized home location in the frame,\nresulting in garbage color values.\n\nThat\u0027s the bug.  Another problem is that the incoming double should\nnever have been promoted to an unusable state in the first place - but\nthat\u0027s merely an efficiency issue and will be addressed in another CL.\n\nNote: no good way to generate a regression test for this issue.  The\nbug triggered because of an unusual sequence of events driving register\npromotion that can\u0027t easily (or robustly) be triggered from Java source.\n\nChange-Id: I7242422277193a04376461134dde71e9dec55576\n"
    },
    {
      "commit": "0160d991571fedc4c1c252a8865c59a7c8cd4973",
      "tree": "a1da358c34e018d654b6212efa49cc22a1772b7f",
      "parents": [
        "775c85e5b18b83d3402f4075d7ae1b982a1b3982"
      ],
      "author": {
        "name": "Tsu Chiang Chuang",
        "email": "tsu@google.com",
        "time": "Fri Sep 13 14:17:42 2013 -0700"
      },
      "committer": {
        "name": "Tsu Chiang Chuang",
        "email": "tsu@google.com",
        "time": "Fri Sep 13 14:17:42 2013 -0700"
      },
      "message": "Keep the right output file for tests.\nBug: 10748067\n\nChange-Id: I732fe23d53f27e7bb030d10c5e4955d9d78b4024\n"
    },
    {
      "commit": "775c85e5b18b83d3402f4075d7ae1b982a1b3982",
      "tree": "999dd030ce30b3dd63daa1f8704b234ad994307f",
      "parents": [
        "ad5f8731448f03c59d5fc8d9b5b25ee91d351ba9",
        "423d2a3dcbb260b020efb5da59f784c9f02accbf"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 13 17:54:46 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 13 17:54:46 2013 +0000"
      },
      "message": "Merge \"Add support for changing roots through the root visitor callback.\" into dalvik-dev"
    },
    {
      "commit": "423d2a3dcbb260b020efb5da59f784c9f02accbf",
      "tree": "79ed739e6072f8308c1cd880f9420a1c63539c95",
      "parents": [
        "b048dd2b662c19644361f4396a1e8d6213445ee8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 12 17:33:56 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Sep 13 10:30:24 2013 -0700"
      },
      "message": "Add support for changing roots through the root visitor callback.\n\nNeeded for copying collectors.\n\nChange-Id: Icc4a342a57e0cfb79587edb02ef8c85e08808877\n"
    },
    {
      "commit": "ad5f8731448f03c59d5fc8d9b5b25ee91d351ba9",
      "tree": "c59834b97b28fbe84ed92b5675c2da57b3a70a61",
      "parents": [
        "109c333eb339f187df3274afe54b994e2a87308d",
        "cdf2d4cbbb1d0cf3e9f80d3dca609a3435c74427"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Fri Sep 13 16:02:27 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 13 16:02:27 2013 +0000"
      },
      "message": "Merge \"Update interpreter handler table after invoke.\" into dalvik-dev"
    },
    {
      "commit": "cdf2d4cbbb1d0cf3e9f80d3dca609a3435c74427",
      "tree": "8c528f54d745d2ba166e749f81c9d1ca78987d4b",
      "parents": [
        "174e9192843002a98e2d2ed26031e83f944645d1"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Fri Sep 13 14:57:51 2013 +0200"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Fri Sep 13 18:00:02 2013 +0200"
      },
      "message": "Update interpreter handler table after invoke.\n\nAnd introduce UPDATE_HANDLER_TABLE macro to reduce copy \u0026 paste.\n\nChange-Id: I9ea7565df0db2b44581d0e6bcefb5f104e76ed01\n"
    },
    {
      "commit": "109c333eb339f187df3274afe54b994e2a87308d",
      "tree": "2be087e31b22a5d03ff6c3513d77464292359f03",
      "parents": [
        "2de2aa1a96dfa5bebc004f29b5dbfafd37039cee",
        "1c793b20e567faba6c8b39aed2d1a461270c1d08"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 22:02:02 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 22:02:02 2013 -0700"
      },
      "message": "am 1c793b20: am 04a1a041: am 6fc9251a: Make inlined CAS32 loop until store is successful if values match.\n\n* commit \u00271c793b20e567faba6c8b39aed2d1a461270c1d08\u0027:\n  Make inlined CAS32 loop until store is successful if values match.\n"
    },
    {
      "commit": "1c793b20e567faba6c8b39aed2d1a461270c1d08",
      "tree": "b0bbd351304cedc016b781b9cfd201fd375741f3",
      "parents": [
        "715084a24a9db1b898c38bbf4a8a7383da76e326",
        "04a1a041ed6a2fb797c28480cbf7f1ebe8a02658"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 21:57:42 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 21:57:42 2013 -0700"
      },
      "message": "am 04a1a041: am 6fc9251a: Make inlined CAS32 loop until store is successful if values match.\n\n* commit \u002704a1a041ed6a2fb797c28480cbf7f1ebe8a02658\u0027:\n  Make inlined CAS32 loop until store is successful if values match.\n"
    },
    {
      "commit": "04a1a041ed6a2fb797c28480cbf7f1ebe8a02658",
      "tree": "b0bbd351304cedc016b781b9cfd201fd375741f3",
      "parents": [
        "9d7e507fed8edb9f296fce11d07e1233b179ffe8",
        "6fc9251ae4f34c31351d9d902dd6c6cbc7baba1c"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 21:37:39 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 21:37:39 2013 -0700"
      },
      "message": "am 6fc9251a: Make inlined CAS32 loop until store is successful if values match.\n\n* commit \u00276fc9251ae4f34c31351d9d902dd6c6cbc7baba1c\u0027:\n  Make inlined CAS32 loop until store is successful if values match.\n"
    },
    {
      "commit": "6fc9251ae4f34c31351d9d902dd6c6cbc7baba1c",
      "tree": "7c1f7b32093b9837e890ab9a76338c0b5b87a26a",
      "parents": [
        "95848d01adae14c6a9ba433f6789a9462edb8e7d"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 17:20:31 2013 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Fri Sep 13 01:43:24 2013 +0000"
      },
      "message": "Make inlined CAS32 loop until store is successful if values match.\n\nThe native implementation of compareAndSwap uses android_atomic_cas,\nwhich will repeat the strex until it succeeds. The compiled version\nwas changed to do the same.\n\nBug: 10530407\nChange-Id: I7efb3f92d0d0610fcc5a885e2c97f1d701b5a4ea\n(cherry picked from commit 2de2aa1a96dfa5bebc004f29b5dbfafd37039cee)"
    },
    {
      "commit": "2de2aa1a96dfa5bebc004f29b5dbfafd37039cee",
      "tree": "2be087e31b22a5d03ff6c3513d77464292359f03",
      "parents": [
        "b048dd2b662c19644361f4396a1e8d6213445ee8"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 17:20:31 2013 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 18:41:02 2013 -0700"
      },
      "message": "Make inlined CAS32 loop until store is successful if values match.\n\nThe native implementation of compareAndSwap uses android_atomic_cas,\nwhich will repeat the strex until it succeeds. The compiled version\nwas changed to do the same.\n\nBug: 10530407\nChange-Id: I7efb3f92d0d0610fcc5a885e2c97f1d701b5a4ea\n"
    },
    {
      "commit": "b048dd2b662c19644361f4396a1e8d6213445ee8",
      "tree": "d729bc252180220a39cd564071a7f804459e6957",
      "parents": [
        "77695d2e13d522426c973546391c07ac88242bc2",
        "75165d015cc737f951d4264f8c55012298abdb18"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 12 21:17:23 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 12 21:17:23 2013 +0000"
      },
      "message": "Merge \"Add valgrind support to compiler arena allocator.\" into dalvik-dev"
    },
    {
      "commit": "75165d015cc737f951d4264f8c55012298abdb18",
      "tree": "7456a0d7ae25f17172791637aecca68728723429",
      "parents": [
        "ab280c02ab94734c38415164ba880881e104ae38"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 12 14:00:31 2013 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 12 14:10:46 2013 -0700"
      },
      "message": "Add valgrind support to compiler arena allocator.\n\nChange-Id: Id9974301d3810bfac968ee562b01a11098e402c2\n"
    },
    {
      "commit": "77695d2e13d522426c973546391c07ac88242bc2",
      "tree": "20859281f4d966e7c953d589aa747f409c4da383",
      "parents": [
        "ab280c02ab94734c38415164ba880881e104ae38",
        "715084a24a9db1b898c38bbf4a8a7383da76e326"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 11:36:25 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 11:36:25 2013 -0700"
      },
      "message": "am 715084a2: am 9d7e507f: am 95848d01: Revert \"Fix CAS intrinsic to clear exclusive if values don\\\u0027t match.\"\n\n* commit \u0027715084a24a9db1b898c38bbf4a8a7383da76e326\u0027:\n  Revert \"Fix CAS intrinsic to clear exclusive if values don\u0027t match.\"\n"
    },
    {
      "commit": "715084a24a9db1b898c38bbf4a8a7383da76e326",
      "tree": "f95ef3efd5d543d8c179c906d2b70a438e5a6437",
      "parents": [
        "7e4b552a355874387f16494fb9af6edf691b6573",
        "9d7e507fed8edb9f296fce11d07e1233b179ffe8"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 11:32:34 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 11:32:34 2013 -0700"
      },
      "message": "am 9d7e507f: am 95848d01: Revert \"Fix CAS intrinsic to clear exclusive if values don\\\u0027t match.\"\n\n* commit \u00279d7e507fed8edb9f296fce11d07e1233b179ffe8\u0027:\n  Revert \"Fix CAS intrinsic to clear exclusive if values don\u0027t match.\"\n"
    },
    {
      "commit": "9d7e507fed8edb9f296fce11d07e1233b179ffe8",
      "tree": "f95ef3efd5d543d8c179c906d2b70a438e5a6437",
      "parents": [
        "f08d17651cac7ff59bd3f9ca1fe104c5bd8662b5",
        "95848d01adae14c6a9ba433f6789a9462edb8e7d"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 11:29:59 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 11:29:59 2013 -0700"
      },
      "message": "am 95848d01: Revert \"Fix CAS intrinsic to clear exclusive if values don\\\u0027t match.\"\n\n* commit \u002795848d01adae14c6a9ba433f6789a9462edb8e7d\u0027:\n  Revert \"Fix CAS intrinsic to clear exclusive if values don\u0027t match.\"\n"
    },
    {
      "commit": "95848d01adae14c6a9ba433f6789a9462edb8e7d",
      "tree": "e34a34977ed34663798d9aba166e380fbe11046a",
      "parents": [
        "3a0831507637028a439712dedaaddd7cd0893995"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 17:13:54 2013 +0000"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 17:13:54 2013 +0000"
      },
      "message": "Revert \"Fix CAS intrinsic to clear exclusive if values don\u0027t match.\"\n\nIan is correct. I can still see this bug even with this change.\n\nThis reverts commit 3a0831507637028a439712dedaaddd7cd0893995.\n\nChange-Id: I780f2de926f1ff7576adc679c56a6cf491dad127\n"
    },
    {
      "commit": "ab280c02ab94734c38415164ba880881e104ae38",
      "tree": "6d41a775ab15045bf45dfe653cb8f4d20ef6893c",
      "parents": [
        "78765e84a3654357a03f84b76985556cf7d9731a",
        "7e4b552a355874387f16494fb9af6edf691b6573"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 09:26:17 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 09:26:17 2013 -0700"
      },
      "message": "am 7e4b552a: am f08d1765: am 3a083150: Fix CAS intrinsic to clear exclusive if values don\\\u0027t match.\n\n* commit \u00277e4b552a355874387f16494fb9af6edf691b6573\u0027:\n  Fix CAS intrinsic to clear exclusive if values don\u0027t match.\n"
    },
    {
      "commit": "7e4b552a355874387f16494fb9af6edf691b6573",
      "tree": "e15e1b0d5ef553a060cd0d686c9bf35ac613d1f6",
      "parents": [
        "3c274b0cbd3bbae655cea4c54be1e7b781e43394",
        "f08d17651cac7ff59bd3f9ca1fe104c5bd8662b5"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 09:22:00 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 09:22:00 2013 -0700"
      },
      "message": "am f08d1765: am 3a083150: Fix CAS intrinsic to clear exclusive if values don\\\u0027t match.\n\n* commit \u0027f08d17651cac7ff59bd3f9ca1fe104c5bd8662b5\u0027:\n  Fix CAS intrinsic to clear exclusive if values don\u0027t match.\n"
    },
    {
      "commit": "f08d17651cac7ff59bd3f9ca1fe104c5bd8662b5",
      "tree": "e15e1b0d5ef553a060cd0d686c9bf35ac613d1f6",
      "parents": [
        "570c009c9994225db8cb94838e0adcaf306aa9b9",
        "3a0831507637028a439712dedaaddd7cd0893995"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 09:12:48 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 12 09:12:48 2013 -0700"
      },
      "message": "am 3a083150: Fix CAS intrinsic to clear exclusive if values don\\\u0027t match.\n\n* commit \u00273a0831507637028a439712dedaaddd7cd0893995\u0027:\n  Fix CAS intrinsic to clear exclusive if values don\u0027t match.\n"
    },
    {
      "commit": "3a0831507637028a439712dedaaddd7cd0893995",
      "tree": "bc64f05af01521fb9636b05e564e3ada08fdd033",
      "parents": [
        "226476bd6067864b860b48ed5b88982e131c20d9"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Wed Sep 11 18:04:26 2013 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Sep 12 01:35:24 2013 +0000"
      },
      "message": "Fix CAS intrinsic to clear exclusive if values don\u0027t match.\n\nThe LDREX has a matching STREX if the values match, but it needed\na CLREX for the case where they didn\u0027t.\n\nBug: 10530407\nChange-Id: I46b474cca326a251536e7f214c80486694431386\n(cherry picked from commit 78765e84a3654357a03f84b76985556cf7d9731a)"
    },
    {
      "commit": "78765e84a3654357a03f84b76985556cf7d9731a",
      "tree": "6d41a775ab15045bf45dfe653cb8f4d20ef6893c",
      "parents": [
        "16f1aab09e2d830f879da82043c761816d5f2be9"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Wed Sep 11 18:04:26 2013 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Wed Sep 11 18:04:26 2013 -0700"
      },
      "message": "Fix CAS intrinsic to clear exclusive if values don\u0027t match.\n\nThe LDREX has a matching STREX if the values match, but it needed\na CLREX for the case where they didn\u0027t.\n\nBug: 10530407\nChange-Id: I46b474cca326a251536e7f214c80486694431386\n"
    },
    {
      "commit": "16f1aab09e2d830f879da82043c761816d5f2be9",
      "tree": "20859281f4d966e7c953d589aa747f409c4da383",
      "parents": [
        "9af7a37a798f410f3c9f28f9000869c10c775180",
        "3c274b0cbd3bbae655cea4c54be1e7b781e43394"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 11 17:33:13 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 11 17:33:13 2013 -0700"
      },
      "message": "am 3c274b0c: am 570c009c: Add explicit dependency on algorithm\n\n* commit \u00273c274b0cbd3bbae655cea4c54be1e7b781e43394\u0027:\n  Add explicit dependency on algorithm\n"
    },
    {
      "commit": "3c274b0cbd3bbae655cea4c54be1e7b781e43394",
      "tree": "f95ef3efd5d543d8c179c906d2b70a438e5a6437",
      "parents": [
        "f409f8134fa7222bc56f50a96cd541bb76ce75e9",
        "570c009c9994225db8cb94838e0adcaf306aa9b9"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 11 17:24:25 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 11 17:24:25 2013 -0700"
      },
      "message": "am 570c009c: Add explicit dependency on algorithm\n\n* commit \u0027570c009c9994225db8cb94838e0adcaf306aa9b9\u0027:\n  Add explicit dependency on algorithm\n"
    },
    {
      "commit": "9af7a37a798f410f3c9f28f9000869c10c775180",
      "tree": "20859281f4d966e7c953d589aa747f409c4da383",
      "parents": [
        "11fc721de0ddadda0e57628e9c672d517f635c04",
        "967a0adf8b93a23d2a8fef82e06bd913db94ac19"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Thu Sep 12 00:13:14 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 12 00:13:15 2013 +0000"
      },
      "message": "Merge \"More allocation code optimizations.\" into dalvik-dev"
    },
    {
      "commit": "570c009c9994225db8cb94838e0adcaf306aa9b9",
      "tree": "f95ef3efd5d543d8c179c906d2b70a438e5a6437",
      "parents": [
        "226476bd6067864b860b48ed5b88982e131c20d9"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 11 15:15:09 2013 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 11 23:03:59 2013 +0000"
      },
      "message": "Add explicit dependency on algorithm\n\n(cherry picked from commit f409f8134fa7222bc56f50a96cd541bb76ce75e9)\n\nChange-Id: I3edb34b3c3a1e89a195db18ad8e6a71bc7b4a570"
    },
    {
      "commit": "11fc721de0ddadda0e57628e9c672d517f635c04",
      "tree": "af31301672368b3b388841c2d019c62bf1dbf1bd",
      "parents": [
        "af3994db1b42929666b6a50c3c4b237a25c99951",
        "f409f8134fa7222bc56f50a96cd541bb76ce75e9"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 11 15:39:53 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 11 15:39:53 2013 -0700"
      },
      "message": "am f409f813: Add explicit dependency on algorithm\n\n* commit \u0027f409f8134fa7222bc56f50a96cd541bb76ce75e9\u0027:\n  Add explicit dependency on algorithm\n"
    },
    {
      "commit": "967a0adf8b93a23d2a8fef82e06bd913db94ac19",
      "tree": "35b7fbf6eb1899736213e57e11c85d16c1b4853e",
      "parents": [
        "af3994db1b42929666b6a50c3c4b237a25c99951"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Tue Sep 10 16:24:21 2013 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Wed Sep 11 15:38:23 2013 -0700"
      },
      "message": "More allocation code optimizations.\n\n- Inline Class::AllocObject() and Array::Alloc().\n- Inline some short Mutex functions and add LIKELY/UNLIKELY to some\n  Mutex functions.\n- This change improves the Ritz MemAllocTest by ~6% on Nexus 4 and\n  ~10% on host.\n\nBug: 9986565\nChange-Id: I1606c74ddb21676cbc1de1a40e9b076fc23eaea4\n"
    },
    {
      "commit": "f409f8134fa7222bc56f50a96cd541bb76ce75e9",
      "tree": "f95ef3efd5d543d8c179c906d2b70a438e5a6437",
      "parents": [
        "95521cedc191027245655105f6f5b7c87654a364"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 11 15:15:09 2013 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Sep 11 15:15:09 2013 -0700"
      },
      "message": "Add explicit dependency on algorithm\n\nChange-Id: I3edb34b3c3a1e89a195db18ad8e6a71bc7b4a570\n"
    },
    {
      "commit": "af3994db1b42929666b6a50c3c4b237a25c99951",
      "tree": "712f16c55d709a0c8f9d5f804f650db00358c4ba",
      "parents": [
        "291ddd01a679808cc7e27b70c2a53c83edc980c8",
        "bd663de599b16229085759366c56e2ed5a1dc7ec"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Sep 11 19:35:12 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 11 19:35:12 2013 +0000"
      },
      "message": "Merge \"Compile-time tuning: register/bb utilities\" into dalvik-dev"
    },
    {
      "commit": "bd663de599b16229085759366c56e2ed5a1dc7ec",
      "tree": "cc596a319afb07ac7048a7a0f3d4fb0d8863b3b2",
      "parents": [
        "fffd663bd276ee5fd8fda6641689546042429981"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Tue Sep 10 15:41:31 2013 -0700"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Sep 11 12:33:47 2013 -0700"
      },
      "message": "Compile-time tuning: register/bb utilities\n\nThis CL yeilds about a 4% improvement in the compilation phase\nof dex2oat (single-threaded; multi-threaded compilation is\nmore difficult to accurately measure).  The register utilities\ncould stand to be completely rewritten, but this gets most of the\neasy benefit.\n\nNext up: the assembly phase.\n\nChange-Id: Ife5a474e9b1a6d9e501e888dda6749d34eb77e96\n"
    },
    {
      "commit": "291ddd01a679808cc7e27b70c2a53c83edc980c8",
      "tree": "cdfedc648f4fe26a946e7d5c0c79e15dc62183cb",
      "parents": [
        "5348f3f86ebee28acf5cac389f23dbdc6a0f9217",
        "049e7a35366937b1b7b28afcaccc88c0c69ea3ec"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Sep 11 17:41:37 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 11 17:41:37 2013 +0000"
      },
      "message": "Merge \"Tweak an unusual monitor log message.\" into dalvik-dev"
    },
    {
      "commit": "049e7a35366937b1b7b28afcaccc88c0c69ea3ec",
      "tree": "211d80a34956141a730feb62977d2bff7a1d6b10",
      "parents": [
        "7b6da36ac600178f0cdc60a1c36843c3a4fd300e"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Sep 11 10:35:34 2013 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Sep 11 10:35:34 2013 -0700"
      },
      "message": "Tweak an unusual monitor log message.\n\nChange-Id: I0a62b0d04ce4ee4c3b6576737d58beacef09f520\n"
    },
    {
      "commit": "5348f3f86ebee28acf5cac389f23dbdc6a0f9217",
      "tree": "2b0b21c06efcf754703e2db216d8e3a9c9527227",
      "parents": [
        "174e9192843002a98e2d2ed26031e83f944645d1",
        "7b6da36ac600178f0cdc60a1c36843c3a4fd300e"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Sep 11 17:33:07 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 11 17:33:07 2013 +0000"
      },
      "message": "Merge \"Don\u0027t deopt for tracing due to stability.\" into dalvik-dev"
    },
    {
      "commit": "7b6da36ac600178f0cdc60a1c36843c3a4fd300e",
      "tree": "4563f4db5290e693255a7a529c54d6473521aa30",
      "parents": [
        "fffd663bd276ee5fd8fda6641689546042429981"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Sep 11 09:29:40 2013 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Sep 11 09:29:40 2013 -0700"
      },
      "message": "Don\u0027t deopt for tracing due to stability.\n\nChange-Id: I49525f950c669a6dab4f7038b10fccb663087acf\n"
    },
    {
      "commit": "174e9192843002a98e2d2ed26031e83f944645d1",
      "tree": "af8b7876a11bb08a1d78224fbdbfe3469b9fe0b9",
      "parents": [
        "7e9edb72aad408ead5143da8c6e4314b542d94d2",
        "95521cedc191027245655105f6f5b7c87654a364"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Wed Sep 11 00:10:37 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 11 00:10:37 2013 -0700"
      },
      "message": "am 95521ced: am 226476bd: Merge \"Remove dependency on JNIHelp header side effects.\" into klp-dev\n\n* commit \u002795521cedc191027245655105f6f5b7c87654a364\u0027:\n  Remove dependency on JNIHelp header side effects.\n"
    },
    {
      "commit": "95521cedc191027245655105f6f5b7c87654a364",
      "tree": "e34a34977ed34663798d9aba166e380fbe11046a",
      "parents": [
        "5309783409b24abc629d12c28503289a82a92953",
        "226476bd6067864b860b48ed5b88982e131c20d9"
      ],
      "author": {
        "name": "Ruben Brunk",
        "email": "rubenbrunk@google.com",
        "time": "Wed Sep 11 00:08:25 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 11 00:08:25 2013 -0700"
      },
      "message": "am 226476bd: Merge \"Remove dependency on JNIHelp header side effects.\" into klp-dev\n\n* commit \u0027226476bd6067864b860b48ed5b88982e131c20d9\u0027:\n  Remove dependency on JNIHelp header side effects.\n"
    }
  ],
  "next": "226476bd6067864b860b48ed5b88982e131c20d9"
}
