)]}'
{
  "log": [
    {
      "commit": "41dc8cef5d1f86e3ade30b8aaf20d29d8d0c712b",
      "tree": "000d84e9b7d321b86349da577f744977ecf191d6",
      "parents": [
        "bf0e73604f836e3b8f7d6481e83110c3426350b6"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Dec 04 15:07:48 2015 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Dec 04 15:19:10 2015 -0800"
      },
      "message": "Combine class sets when writing a class table\n\nReduces the boot.art size since we allocate a new class set with the\ndefault load factor. The load factor in the combined class table is\nhigher to pruning classes, this reduces the size of the boot image.\n\nAlso fixes the hypothetical case where the class table being written\nhas multiple class sets.\n\nBoot.art size\nBefore: 8122368\nAfter: 8044544\n\nSlight cleanup in patchoat.cc.\n\nBug: 22858531\nChange-Id: I31b3ea2004ece6f6c853ee906074bb2792dee958\n"
    },
    {
      "commit": "208a5cb383dd9dcd3461f89b74af5df67dc8d794",
      "tree": "9ed531a445d24a7685e577b1c5822e50dc1c1b1d",
      "parents": [
        "5337bbfbd1cd502bb2842698a6b2a543ab6a6c32"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 02 15:44:07 2015 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Dec 03 16:29:03 2015 -0800"
      },
      "message": "Store class tables in the image\n\nReduces how long it takes to load an application image.\n\nN5 boot.art size\nBefore: 8007680\nAfter: 8122368\n\nAlso reduces boot time by how long AddImageClassesToClassTable\nused to take (~20ms).\n\nChanged class hashes to be uint32_t to fix cross compilation. We need\nserialized hash tables to be valid with different pointer sizes.\n\nBug: 22858531\n\nChange-Id: I463fc83f499ff75f509e80c253a55b9116ee5b89\n"
    },
    {
      "commit": "00310e0bb4ee541b99f0b687dbf5f706db2aabca",
      "tree": "bbb0bc2f829ed2ce145ca142c85da6181e2cd527",
      "parents": [
        "3ae313d9bc64eaa0c791452dd972654eae979496"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sat Oct 17 12:46:42 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Oct 19 12:30:45 2015 -0700"
      },
      "message": "Keep dex files live in class table\n\nThe DexFile.loadClass API allows callers to load classes using a\ndex file without having that dex file owned by the specified class\nloader. We now add the dex file to the class table to make sure it\nstays live until the class loader is unreachable.\n\nFixes interpreter gcstress test 087 with 64 bit.\n\nBug: 22720414\nChange-Id: Ia4341149f45b6293312f8b275c7a68cea179f718\n"
    },
    {
      "commit": "32cc9ee0cdffecb0ec8d80a7fd55d7dccae3a7ee",
      "tree": "e394d05cb35fd8a89ae4be0d57635d7fee219ede",
      "parents": [
        "114873103db3d4d6e0da42ca02bad1ea8826443b"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Oct 15 09:19:15 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Oct 16 08:46:12 2015 -0700"
      },
      "message": "Change hash table load factors\n\nChanged class table and intern table load factors to query the\nruntime. The runtime returns load factors based on whether or not we\nare a low ram device.\n\nDescriptorEquals time for class linking goes from 10% -\u003e 1.2% for\ncompiling GmsCore with interpret only.\n\nAdded test.\n\nBug: 24917584\n\nChange-Id: Iaaf5d2eab1b0c2d188d299e4bc1852cdb3801173\n"
    },
    {
      "commit": "e4275c07e9852a6944f47efa9d0591fceb8e8e36",
      "tree": "92d5e69374f88555f454d137e5d60fb1c925b4d8",
      "parents": [
        "82b844fb449ddc5d7b4e43e71a55eb934a1b0b45"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Aug 06 15:34:15 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Aug 12 15:50:24 2015 -0700"
      },
      "message": "Visit class roots from ClassLoader::VisitReferences\n\nThis causes the classes of a class loader to get marked when that\nclass loader gets marked instead of during class root visiting.\n\nBug: 22720414\n\nChange-Id: If53f042aff1d9f7bf94ecbe6886601edda029b7d\n"
    },
    {
      "commit": "e0671ce5a6cb34e44e3afefa8e29c0c3e30d2855",
      "tree": "124d68a72435aebb5698e068c12555f121282cca",
      "parents": [
        "aac046772b6d0b8dd23f3296fd82b29ef35dca25"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jul 28 17:23:28 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jul 29 10:01:59 2015 -0700"
      },
      "message": "Clean up class visitors\n\nMove from function pointers to virtual function visitors.\n\nChange-Id: I68cb83c1d2ed9b5a89f8e534fe7ca4bbc1c91f45\n"
    },
    {
      "commit": "cc5ebdf29ea47e24e79279169e0192dfc08b38c8",
      "tree": "f808593b096046cc8f0ca2a8e6675474ea59000e",
      "parents": [
        "1a4d013b9f810f24bdca60c02da99f7650bcc367"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jul 27 11:19:43 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jul 28 16:32:09 2015 -0700"
      },
      "message": "Split the class table for each class loader\n\nEach class loader now has its own class table. This makes it easier\nto mark classes when a classloader is marked.\n\nFixed a bug in LookupClass where we used to look ignore the return\nvalue of InsertClass.\n\nBug: 22720414\n\nChange-Id: If2cd717989a20a6e245ebec24ad52dc47dd3207d\n"
    }
  ]
}
