)]}'
{
  "log": [
    {
      "commit": "c15a2f4f45661a7f5f542e406282c146ea1a968d",
      "tree": "50ad6104b0b8739f272782c35a7022cca64d2601",
      "parents": [
        "9ae527f615f61aec4aaca310c52f373e8c3d8d58"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Apr 21 12:09:39 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Apr 21 16:48:00 2017 -0700"
      },
      "message": "ART: Add object-readbarrier-inl.h\n\nMove some read-barrier code into a new header. This prunes the\ninclude tree for the concurrent-copying collector. Clean up other\nrelated includes.\n\nTest: mmma art\nChange-Id: I40ce4e74f2e5d4c692529ffb4df933230b6fd73e\n"
    },
    {
      "commit": "90b936ddda63139ff46a6755c3b83ad6e4ab4ac5",
      "tree": "c7ce2c3004eecc16ab41ed7cde105c3019638d4b",
      "parents": [
        "b78a8af993e877d74c5938f65f95feaf2fa01321"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jan 31 08:58:55 2017 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Feb 03 10:03:52 2017 -0800"
      },
      "message": "ART: Refactor verify_object.h\n\nMove the actual VerifyObject check into a new cc file, as we\ncommonly don\u0027t enable the check at all. This allows to cut the\n-inl include from almost all current users.\n\nThis also exposes missing -inl includes. Also fix up some of our old\nmess where .h defined functions require -inl.h defined functions.\n\nTest: m\n\nChange-Id: I3dd821bbe2015564a29bf1ed9be00f7a7276ad61\n"
    },
    {
      "commit": "1cc62e4ea24828fdb3f3da0b8603f0b107d09a04",
      "tree": "718e322f3d05ac095770d4dc2a68b824bf3974a7",
      "parents": [
        "82d4838d6bb3480cd25327cedc5179fb2d86881c"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Oct 03 18:01:28 2016 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Oct 04 10:46:16 2016 -0700"
      },
      "message": "Rename ObjPtr::Decode to ObjPtr::Ptr\n\nDone to prevent ambiguity with ScopedObjectAccess::Decode.\n\nBug: 31113334\n\nTest: test-art-host\nChange-Id: I07a2497cc9cf66386311798933547471987fc316\n"
    },
    {
      "commit": "0795f23920ee9aabf28e45c63cd592dcccf00216",
      "tree": "ff3f880c5e84f3316532b47d0e9a7729ade848ac",
      "parents": [
        "d1224dce59eb0019507e41da5e10f12dda66bee4"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Sep 27 18:43:30 2016 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Sep 29 17:31:09 2016 -0700"
      },
      "message": "Clean up ScopedThreadStateChange to use ObjPtr\n\nAlso fixed inclusion of -inl.h files in .h files by adding\nscoped_object_access-inl.h and scoped_fast_natvie_object_access-inl.h\n\nChanged AddLocalReference / Decode to use ObjPtr.\n\nChanged libartbenchmark to be debug to avoid linkage errors.\n\nBug: 31113334\n\nTest: test-art-host\n\nChange-Id: I4d2e160483a29d21e1e0e440585ed328b9811483\n"
    },
    {
      "commit": "3fec9ac0d5af1358d216eb2fdc2000ec0205f3f0",
      "tree": "f38d8d8aae51f53e7ee6b474f47597b784fc2316",
      "parents": [
        "0cfe19af3b7395658210ea6044a65c9811962a7a"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Sep 13 10:47:28 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Sep 26 10:59:22 2016 -0700"
      },
      "message": "ART: Use libbase logging\n\nMove most of our logging infrastructure over to system/core/base.\nRetain VLOG.\n\nUsing unified Android infrastructure has two main advantages. First,\nit reduces the complexity/maintenance burden in ART. Second, it\nallows to detach logging for the cases where we do not want or need\na runtime, e.g., dexdump, the disassembler, etc. As a part of the\nlatter, libbase is also supported for all hosts (including Windows).\n\nFrom a developer viewpoint, there are minor behavior changes for the\nLOG statements (see above), but otherwise usage is the same. Explicit\nseverity enum items are in the android::base namespace now.\n\nBug: 31338270\nTest: m test-art-host\nChange-Id: I5abcb2f45f5b03d49951874c48544f72a283a91b\n"
    },
    {
      "commit": "c564406ac428dc6de9998a48d97c445a03201338",
      "tree": "80719542a56eb137a58be9eb50ceefb9d01f668a",
      "parents": [
        "d7eabc2cc1a88c1f7f927da61246ae65aab0626c"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Aug 30 15:41:08 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Aug 30 15:43:41 2016 -0700"
      },
      "message": "Fix debug flag ordering\n\nart_debug_defaults needs to come first in the defaults list so that its\nprepended flags come after the art_defaults flags.\n-Wno-frame-larger-than\u003d also needs to be inside a target block to match the\nway the -Wframe-larger-than\u003d flags are inserted by art.go so that they\ncome after.\n\nChange-Id: I17c191ec9dcc393db1e0805cd058c768e4d09400\n"
    },
    {
      "commit": "1f7f3bd26ecad4366c904b7e7d05587fc7a83ea2",
      "tree": "73f5c720f744303bc8ae9dad0891264f4788767a",
      "parents": [
        "521691ae4dfad47cf6b46858347fa5fa32fd7bcc"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jul 27 10:12:38 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Aug 25 13:42:11 2016 -0700"
      },
      "message": "Convert libart and dependencies to Android.bp\n\nRe-landing I73839046a5a53eb34cd28eea53149911c568e411, with fixes for mac\nbuild (only apply -Wl,--keep-unique to device x86 builds), typo in\nchecking for ART_HEAP_POISONING environment variable, and removing\n-Wframe-larger-than for debug builds.\n\nTest: mma -j, m -j test-art-host\nChange-Id: If88492174cbcb0d9a8758176c006163a29eaaa63\n"
    },
    {
      "commit": "316417e37859e584e78790c2cbc6f16c11adc8b2",
      "tree": "ced74cd7647391ad61f8334d0e90334cb60c91fa",
      "parents": [
        "4ea3a22f0ccfb0f746c63c274b2655545e759e1f"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Aug 25 01:03:42 2016 +0000"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Aug 25 01:03:42 2016 +0000"
      },
      "message": "Revert \"Convert libart and dependencies to Android.bp\"\n\nThis reverts commit 4ea3a22f0ccfb0f746c63c274b2655545e759e1f.\n\nChange-Id: I3ac4397b4d6be038e5b863b7a24231c0736e84f3\n"
    },
    {
      "commit": "4ea3a22f0ccfb0f746c63c274b2655545e759e1f",
      "tree": "de9b6f7a0bee3de3c7d7adebf2ceda13e3084fc6",
      "parents": [
        "897b8f5da90b38b030826273f4c9bd8fbc32759e"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jul 27 10:12:38 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Aug 24 15:43:53 2016 -0700"
      },
      "message": "Convert libart and dependencies to Android.bp\n\nTest: mma -j, m -j test-art-host\nChange-Id: I73839046a5a53eb34cd28eea53149911c568e411\n"
    },
    {
      "commit": "9b26463fcddf5bc26e5550be5abd39d8c0f0b4b5",
      "tree": "3a69be37eef7a04a40a95aa0d271e5bcaeef1c55",
      "parents": [
        "ea8e02bef0f26a2212247210cc72b168a8157bad",
        "a89e51a8c3f25b72035c42be92acc26cff070e21"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Fri May 27 09:10:43 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri May 27 09:10:44 2016 +0000"
      },
      "message": "Merge \"Forbid JVM_O_DELETE in JVM_Open\""
    },
    {
      "commit": "a89e51a8c3f25b72035c42be92acc26cff070e21",
      "tree": "d44bb4d51083a7e68cb60d64e52ff02b1a2af7ec",
      "parents": [
        "84f00fe695a7a78551d7f2e8d7bc2bed1ce86a67"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu May 26 15:52:36 2016 +0100"
      },
      "committer": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu May 26 17:21:12 2016 +0100"
      },
      "message": "Forbid JVM_O_DELETE in JVM_Open\n\nBug: 28901232\nChange-Id: Icf1f9b85163f478f380c76042bcc0ff6910cc1ce\n"
    },
    {
      "commit": "2e09bc1c5bb97ea2b9e4951d0fdb3853bfa8cdc6",
      "tree": "baec505816b3265c98996b64ecff16a4f8084da8",
      "parents": [
        "84f00fe695a7a78551d7f2e8d7bc2bed1ce86a67"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon May 23 17:16:55 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue May 24 09:42:13 2016 -0700"
      },
      "message": "Remove no-op call to android_update_LD_LIBRARY_PATH\n\nWith linker-namespaces enabled for all target sdk versions\nthe call to android_update_LD_LIBRARY_PATH is no longer needed.\n\nBug: http://b/26040253\nBug: http://b/27702070\nChange-Id: I77c27c10a435e223824e1b69f727d0bc37a26306\n(cherry picked from commit 1bd15f0311b6d7c5b28cf70914831006a9ef64c3)\n"
    },
    {
      "commit": "bb661c0f0cb72d4bbfc2e251f6ded6949a713292",
      "tree": "4fe7e66f3385b1955934d3ec6f02e00bde6e13b8",
      "parents": [
        "f7cda8088ec57ab1422f85f08df78e217a9f7094"
      ],
      "author": {
        "name": "Bilyan Borisov",
        "email": "bilyan.borisov@linaro.org",
        "time": "Mon Apr 04 16:27:32 2016 +0100"
      },
      "committer": {
        "name": "Bilyan Borisov",
        "email": "bilyan.borisov@linaro.org",
        "time": "Fri Apr 22 13:33:30 2016 +0100"
      },
      "message": "Refactor use of __ANDROID__ macro\n\nWe use the __ANDROID__ macro, which is provided by the toolchain, in\nnumerous places. This patch refactors the usage of this by defining a\nnew macro, ART_TARGET_ANDROID, that is being passed during build to\nART_TARGET_CFLAGS in Android.common_build.mk on the same line as\nART_TARGET. The codebase currently assumes that the existence of the\n__ANDROID__ macro implies that we are compiling art for an android\ntarget device. This is because, currently, target builds are compiled\nwith target toolchains that provide the macro, while host toolchains\ndo not.  With this change this assumption is still preserved. However,\nin a future patch we will add the ability to compile art for a linux\ntarget, and in that case the ART_TARGET_ANDROID macro won\u0027t be passed\nanymore.\n\nChange-Id:  I1f3a811aa735c87087d812da27fc6b08f01bad51\n"
    },
    {
      "commit": "5b2cfd8b195d8f0fb69c4fe57223c648dfa4c4f2",
      "tree": "722fdb970d3750dd2b5b74aba70999ad7c503adb",
      "parents": [
        "8fc44d668240d69b31bd5140ae3b67fa948245c3"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Apr 15 17:51:55 2016 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Apr 15 17:51:55 2016 +0100"
      },
      "message": "OpenJdkJVM: Fix Mac OS build.\n\nbug: 28192631\nChange-Id: I423d5e79aacfbe82e22d095ffbfd3eefedbb484b\n"
    },
    {
      "commit": "77f5d65a23f964f40af0baa4cb45e54deb37bafc",
      "tree": "1f195d148ee9a2fce191cb3293af66f4ceb99f96",
      "parents": [
        "240986c1fcd867b9a01e2e94ee2aa90235ce7d75"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Apr 15 15:57:28 2016 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Apr 15 16:22:53 2016 +0100"
      },
      "message": "OpenJdkJVM: Fix JVM_Lseek\n\nUse lseek64 and remove unnecessary TEMP_FAILURE_RETRY.\n\nbug: 28192631\n\nChange-Id: Ic27aa6c03122b29d53e75ead56870a8cb7867fd3\n"
    },
    {
      "commit": "5f97157263d1b52bf4aea523b28294b21d694da1",
      "tree": "46a2a5102b97f4bb0711c721e3580606f3bde093",
      "parents": [
        "5681b6638b0001c62d02795b0853e2e82787edf1"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Mar 15 14:47:29 2016 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Mar 15 15:20:00 2016 +0000"
      },
      "message": "runtime: delete native/java_lang_Runtime.cc\n\nWe\u0027re now using Runtime.c from ojluni, which does the same set\nof things via the JVM interface. This removes unnecessary duplication\nof code between Runtime.cc and OpenJdkJvm.cc.\n\nAlso includes a few changes to JVM_NativeLoad to bring it in sync\nwith the version in Runtime.cc.\n\nbug: 27387202\nChange-Id: I92aac81d131661aca588e352aee7a167593e17d4\n"
    },
    {
      "commit": "942dc298d7af3e60fe40c69b4b416ef144e5c723",
      "tree": "3bfac9efaea9dcf73fbd2aed93f72db7bf7fa1b3",
      "parents": [
        "48a13431f09ff9bbdcd1ee991da6a04e694c5134"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Feb 24 13:33:33 2016 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Feb 26 11:41:11 2016 -0800"
      },
      "message": "Simplify LoadNativeLibrary()\n\nWith ApplicationLoaders.getClassLoader() ensuring\nlinker-namespace initialization there is no longer\nneed for LoadNativeLibrary() and callers to pass\nalong namespace-specific information to art.\n\nThis change removes unnecessary parameters of such\ncalls.\n\nBug: http://b/27189432\nBug: http://b/22548808\nChange-Id: I341d35a2d5195e634678b352f4361f8712984b69\n(cherry picked from commit c286a7fcd8a446c086127bf03fd07f904e017336)\n"
    },
    {
      "commit": "0095d880767226b43e8c4f12798495fe65412ae7",
      "tree": "f72b7f043bb522cb244152142cd2cc09bd7367fb",
      "parents": [
        "3a631b4c450dd7d1cd6d4861cdae295aa63e716f"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Feb 12 16:09:58 2016 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Feb 15 10:32:26 2016 +0000"
      },
      "message": "Add MODULE_LICENSE_GPL.. for art/runtime/openjdkjvm.\n\nThis needs a companion makefile that declares a no-op module\nso that the build system can leach of its LOCAL_PATH to collect\nall subdirectory sources.\n\nbug: 27160386\n\n(cherry picked from commit 9a3a10ac819f456f7bcc626046342a845902fe96)\n\nChange-Id: Ib11845c2172aad272c45ec2a3b4b2f7d508c1596\n"
    },
    {
      "commit": "6c37e9adf7afc547a0fdf4db29249f6982845162",
      "tree": "bb0ac022dac1561721cd7c7689cdb0e40e2c5095",
      "parents": [
        "17077d90907120d75cc4f534ce4de741da3bff2d"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Feb 09 13:11:09 2016 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Feb 09 14:03:33 2016 +0000"
      },
      "message": "openjdkjvm: Don\u0027t leak the results of JVM_RawMonitorCreate.\n\nbug: 27050501\n\nChange-Id: Ib0db3e5a1ec412de07455f09fe88b3102b347e46\n"
    },
    {
      "commit": "44ba97e747b928f734329226c5daf0eb36f8f687",
      "tree": "a6deae90cdebb6e79c7445ac404ab4a238a43256",
      "parents": [
        "5b00f4169f1a153f85216f8624cfbd691458060f"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Feb 05 14:58:02 2016 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Feb 09 10:51:14 2016 +0000"
      },
      "message": "openjdkjvm: clean up verbose logging.\n\nbug: 26994173\nChange-Id: I4b55d68fa89737e25e9d7b10b335423b3ea4bef2\n"
    },
    {
      "commit": "18d209582e0bb1caed97102a86b416173f5aad42",
      "tree": "5c79afefe9f895a6b752d98d92127a6c0884f846",
      "parents": [
        "424446ba807186a374e1789296d651ddfe6f214c"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 22 14:56:59 2015 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 22 19:17:45 2015 +0000"
      },
      "message": "Override notice file for OpenJdk based modules.\n\nChange-Id: Iff63708c83c2a18b82f0de6aa884e1388ed8b32b\n"
    }
  ]
}
