)]}'
{
  "log": [
    {
      "commit": "1e07ca6d50d35abc70ed5c72025ec8f48ae01f25",
      "tree": "b56db69c12b4a1b474ca451175fd8fc86647c310",
      "parents": [
        "75d564e45061e1a9d28a89d3c8fa60af04ef28a8"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Dec 02 11:40:56 2016 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Dec 02 14:17:16 2016 -0800"
      },
      "message": "Cleanup of redefinition testing\n\nMove redefine logic into a single common function and perform some\nother cleanup.\n\nTest: mma -j40 test-art-host\nChange-Id: I8618bda4f392b683ce198374066e356b87578e7b\n"
    },
    {
      "commit": "2c8c6b63da6ecb2ac701cc30f9b4fa4a8eea5cc8",
      "tree": "7b5e29f66a840e5e83c02df0b23d05501b0d63c5",
      "parents": [
        "6afaa42f50157095a3cdc742afdbc3d58b833eea"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 01 17:42:00 2016 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 01 17:43:09 2016 +0000"
      },
      "message": "Revert \"Make sure that const-class linkage is preserved, try again.\"\n\nReverting due to test failures as expected.\n\nBug: 30627598\nBug: 33231647\n\nThis reverts commit cb5ab35980a86b05586c402924d2e7ca9df25758.\nSquashed revert \"Additional debug logging for bug 33231647.\"\n    This reverts commit 00a441033db28d243fc33692d30eb2755fa81728.\n\nChange-Id: I0c0ee1f70d47540fec99f8a797ce13571c16147c\n"
    },
    {
      "commit": "cb5ab35980a86b05586c402924d2e7ca9df25758",
      "tree": "acf33ce7ac7627682aaf822489247ca1804b60d0",
      "parents": [
        "07e6a7947f3279f66f14f7af045065b5297294c2"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Nov 30 15:31:13 2016 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 01 10:13:19 2016 +0000"
      },
      "message": "Make sure that const-class linkage is preserved, try again.\n\nThis CL causes occasional test failures on the build servers\nwhich we were not able to reproduce locally. So we add some\nsome additional debug output to help pinpoint the cause.\n\nBug: 30627598\nBug: 33231647\nTest: m test-art-host\n\nThis reverts commit 171cf811a1cdf8b1cbc5151505d8630741ce4cf3.\n\nChange-Id: Id56a3f0e86e8212fd547e09c61794401bff47fb0\n"
    },
    {
      "commit": "171cf811a1cdf8b1cbc5151505d8630741ce4cf3",
      "tree": "2e5e16040024115d75baebdbf064987961e36e5f",
      "parents": [
        "e47172b75b8b04a450d235cf72bdc4e223a29cb5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Nov 29 21:10:22 2016 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Nov 29 21:10:22 2016 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Revert \"Revert \"Make sure that const-class linkage is preserved.\"\"\"\"\"\n\nBug: 30627598\n\nThis reverts commit e47172b75b8b04a450d235cf72bdc4e223a29cb5.\n\nChange-Id: I038029c71195a80f041982e82ae556d3157db7b8\n"
    },
    {
      "commit": "e47172b75b8b04a450d235cf72bdc4e223a29cb5",
      "tree": "9301e9bc08944f3b4590d9ccf6aa7656cc238adf",
      "parents": [
        "d0111420a9f924fe560a97132d09ae531852fd69"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Nov 25 11:47:20 2016 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Nov 29 13:49:20 2016 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Revert \"Make sure that const-class linkage is preserved.\"\"\"\"\n\nAvoid class loading triggered by verification in the\n626-const-class-linking test. Expect spurious wakeups.\n\nAdd extra debugging output for a very strange failure\n    image_writer.cc:1144] Check failed:\n    !IsBootClassLoaderClass(as_klass)\n    java.lang.Class\u003cjava.lang.NoSuchMethodError\u003e\nThat class is supposed to be in the boot image (core.art for\ntests), so the failing check should not be reached at all.\n\nTest: m test-art-host\nTest: m ART_TEST_OPTIMIZING\u003dtrue \\\n        ART_TEST_JIT\u003dtrue \\\n        ART_TEST_INTERPRETER\u003dtrue \\\n        ART_TEST_INTERPRETER_ACCESS_CHECKS\u003dtrue \\\n        test-art-host-run-test-626-const-class-linking\nBug: 30627598\n\nThis reverts commit 09ded9201fbeec605b12741ae255663c14bda225.\n\nChange-Id: I65a68cb53f0707b8abb3555ac3dc44c82907aef5\n"
    },
    {
      "commit": "09ded9201fbeec605b12741ae255663c14bda225",
      "tree": "c0276a06f8b6dba35e843098a05be326c8f5e2ac",
      "parents": [
        "25dcbad4462ea7279ee2bbe0884abc25bdfac77a"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Nov 24 13:03:57 2016 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Nov 24 13:03:57 2016 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Make sure that const-class linkage is preserved.\"\"\"\n\n626-const-class-linking is failing (spurious wakeups?)\n970-iface-super-resolution-gen is failing:\n    dex2oatd F 11-24 10:57:16  6410  6410 image_writer.cc:1144]\n    Check failed: !IsBootClassLoaderClass(as_klass)\n    java.lang.Class\u003cjava.lang.NoSuchMethodError\u003e\n\nBug: 30627598\n\nThis reverts commit 25dcbad4462ea7279ee2bbe0884abc25bdfac77a.\n\nChange-Id: Ie010169bdde45e6ccf2e04a521da4682bd817114\n"
    },
    {
      "commit": "25dcbad4462ea7279ee2bbe0884abc25bdfac77a",
      "tree": "f8f8db090bf6735ead2c6999b7b574f4b7278056",
      "parents": [
        "dd77c2b4ff36db082edfbcf2631c78a9282689e1"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Nov 23 13:35:26 2016 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Nov 23 17:01:16 2016 +0000"
      },
      "message": "Revert \"Revert \"Make sure that const-class linkage is preserved.\"\"\n\nFix jdwp getting multiple instances of the same class.\nFix counting \"zygote\"/\"non-zygote\" classes in class table.\nFix FindClass() to EnsureResolved() classes added by\na racing thread to the class table.\n\nTest: m test-art-host\nTest: art/tools/run-jdwp-tests.sh --mode\u003dhost --variant\u003dX64 --debug\nBug: 30627598\n\nThis reverts commit ecffc67068a28d55d131553bf915fdb9fafbbc03.\n\nChange-Id: I15807949da4f163c2693fac2fbfc274f17685f8a\n"
    },
    {
      "commit": "ecffc67068a28d55d131553bf915fdb9fafbbc03",
      "tree": "3f63982d609fa01a5b271b5f393ee9c6d83e1107",
      "parents": [
        "b46782abf6752ccf688b0d9f5b4bb83e5d33793b"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Nov 22 17:37:21 2016 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Nov 22 17:41:49 2016 +0000"
      },
      "message": "Revert \"Make sure that const-class linkage is preserved.\"\n\nBug: 30627598\n\nThis reverts commit 19886dbeced9430579a27979beb92b09c95197b4.\nSquashed reverts of subsequent partial fixes.\n    This reverts commit bad475a63b7c938b7ff7903ea1dae27369c3f629.\n    This reverts commit 0ba0c7d9b0328af39a385014652eb9af4e42d8b5.\n    This reverts commit ddb8afec79492750f16f98e5bd07d44f3dc485d4.\n\nChange-Id: Id94af5ae56a0335f9641a79c885cc75bba971713\n"
    },
    {
      "commit": "19886dbeced9430579a27979beb92b09c95197b4",
      "tree": "33c85aada415308d8207d63bce903262ea7504fe",
      "parents": [
        "bb4366d2b0b56f2cc66041243bd93de4b8e4d15a"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Nov 11 11:40:40 2016 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Nov 21 19:11:31 2016 +0000"
      },
      "message": "Make sure that const-class linkage is preserved.\n\nAfter calling loadClass() on the initiating loader, insert\nthe Class to the ClassTable. Check that the returned class\nhas the correct name and that the ClassTable does not yet\ncontain a different Class for the same name. If either check\nfails, follow the RI behavior for parallel capable class\nloaders, i.e. throw NoClassDefFoundError for name mismatch\n(with more descriptive message than RI) or return the Class\nalready present in the ClassTable. This ensures that the\nconst-class instruction for a given name always gives the\nsame result as the first time it succeeded for the same\ninitiating loader, even for non-well-behaved loader.\n\nInserting the Class to the ClassTable is also a necessary\nstep for changing to hash-based dex cache type array when\nthe DexCache will not necessarily keep the Class and\ntherefore the defining loader alive while the initiating\nloader stays alive, so the ClassTable entry is necessary\nto keep the dependecy.\n\nAdd tests that a const-class instruction always returns the\nsame Class\u003c?\u003e as it returned the first time, i.e. when it\nwas \"linked\", even for class loaders that are not\nwell-behaved, even if the dex cache type array is cleared.\nAlso test the edge cases, i.e. NoClassDefFoundError and\nreturning old entry from ClassTable when already inserted\nby another thread.\n\nBug: 30627598\nTest: 626-const-class-linking\nTest: m test-art-host\nChange-Id: Ie9b721464b4e9a5dcce8df8095548e983bba1fe8\n"
    },
    {
      "commit": "6e3dd3e6de432cd200037d74637ef5b183146608",
      "tree": "d04bef7f15a34f8ff1b69bca49f8c584e9e7c6ba",
      "parents": [
        "ab95bad2b88769ccc668e8a4e38a1a24b0d5892c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Nov 17 17:13:53 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Nov 17 17:16:56 2016 -0800"
      },
      "message": "ART: Remove ti library dependency for ti tests\n\nThe agent so should not depend on libopenjdkjvmti.so.\n\nBug: 31455788\nTest: m test-art-host\nChange-Id: I7825d2a475a9651483b9c7cd11016d4f2dba23f9\n"
    },
    {
      "commit": "8da6d03176651594b821cd3531894c372ca640d5",
      "tree": "a27252375bf41d47c7f3183cb021c65b6dbd3132",
      "parents": [
        "54b20eb52f7d8688032fb3bd6112e8db9772c4a7"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Oct 31 19:31:03 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Oct 31 19:32:35 2016 -0700"
      },
      "message": "ART: Add forced garbage collection\n\nAdd ForceGarbageCollection support to the agent interface.\n\nAdd a test.\n\nTest: m test-art-host-run-test-913-heaps\nBug: 32516268\nChange-Id: Iaa97520d1b9e4b0adf088ccdf9712193c485b7c5\n"
    },
    {
      "commit": "e492ae3e59849ee205c22cd15d3c4df2c4bc2d4c",
      "tree": "c4fccd9c18d645dd29213e62f3659250f8540aa8",
      "parents": [
        "e7b46e22c7f4f6f503501b3b2ad99113289d142b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Oct 28 19:34:57 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Oct 31 14:38:17 2016 -0700"
      },
      "message": "ART: Add GetClassSignature\n\nAdd support to retrieve the signature of a JNI class.\n\nAdd a test.\n\nBug: 31684578\nTest: m test-art-host-run-test-912-classes\nChange-Id: I1cf946996f9089cb5d41e93b4f1064193e9d6350\n"
    },
    {
      "commit": "b5eb94a7536e5d050b9d3b1e4e09033bcf2aa554",
      "tree": "ee99d1bfa959dc94640ebed38df4fe3023728cb5",
      "parents": [
        "e9f67125f9a9c54b226c7daa95ebd0c5b31e8510"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Oct 27 19:23:09 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Oct 28 15:08:42 2016 -0700"
      },
      "message": "ART: Add GetStackTrace support\n\nAdd support for getting a stack trace.\n\nBug: 31684812\nTest: m test-art-host\nChange-Id: Ifa5818ebca38caafb09616ffd7df30186eb8a06f\n"
    },
    {
      "commit": "3c252f07cefccd506a7146d976aa5193396e5a4e",
      "tree": "8a198e8c2563a2b8fcd3813ec6ad95260c734b5e",
      "parents": [
        "81fbc57f45b3c4d98036b637630ab7c0420f4cea"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Oct 27 18:25:17 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Oct 28 12:08:17 2016 -0700"
      },
      "message": "ART: Add method name support to TI\n\nAdd support for GetMethodName.\n\nBug: 31684812\nTest: m test-art-host\nChange-Id: I55e7b6dac7e7193c3d9979ebb289b0e2849ad030\n"
    },
    {
      "commit": "eb84221ffc00357be6d69e2e461c7a45ee96334a",
      "tree": "00e6a0884a62dfb448e4d617699fe511307db74f",
      "parents": [
        "19c5e5f3e92db92e4a51b354743cbb0edd8e0f48"
      ],
      "author": {
        "name": "Leonard Mosescu",
        "email": "mosescu@google.com",
        "time": "Thu Oct 06 17:26:36 2016 -0700"
      },
      "committer": {
        "name": "Leonard Mosescu",
        "email": "mosescu@google.com",
        "time": "Tue Oct 25 19:46:58 2016 +0000"
      },
      "message": "Enable agent attaching during live phase\n\nThis is the ART part, the plumbing from VMDebug_attachAgent() to\nactually loading the agent into the runtime.\n\nTest: m test-art-host\n\nBug: 31682382\n\nChange-Id: I3ccc67aa050c1f78278882128983686ed44ddec2\n"
    },
    {
      "commit": "9b8c5880de9b0f7dd8b1b863520714a9700a8dc2",
      "tree": "9b1e4cadc0cad1d5643fd62c41d0b977485659c6",
      "parents": [
        "776e473ec7ff0dd426a648ae7f996f3b69fd6925"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Oct 21 15:27:46 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Oct 24 13:58:50 2016 -0700"
      },
      "message": "ART: Add GC callbacks\n\nAdd start and end of pause callbacks.\n\nFix setup and missing functions in test 907.\n\nBug: 31684633\nTest: m test-art-host\nTest: m test-art-host-run-test-908-gc-start-finish\nChange-Id: I1d8872ef9cd6914de7fb033cd873f8d5cb48ea17\n"
    },
    {
      "commit": "f0af906728a87e559edd90157b082e4b962af134",
      "tree": "2c375423f28c972f9d44d27c2ec794991a0f2ed4",
      "parents": [
        "fc5fbfc13fd6873d42fe82c308ee68a685258b4c"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Oct 21 10:50:31 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Oct 21 10:56:52 2016 -0700"
      },
      "message": "Add missing shared library\n\nHost builds were compiling without -Wl,--no-undefined.  Add missing\nshared library so that -Wl,--no-undefined can be added again.\n\nTest: m -j host\nBug: 32305815\nChange-Id: I39456a95c37b64b6ac65c0b3220d4816ce34e5c6\n"
    },
    {
      "commit": "aa8b60c23a2229159cbd5fde831de8d6d57e50d3",
      "tree": "2ff66bc789f323ea619d2e5ddc054cea3dfe87de",
      "parents": [
        "05a364c8d8271ceeca307d04736f53e92d03de9d"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Oct 12 12:51:25 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Oct 14 14:49:35 2016 -0700"
      },
      "message": "ART: Add GetLoadedClasses support\n\nAdd support to retrieve all loaded classes. Use the standard\nClassLoader callback infrastructure.\n\nBug: 31684578\nTest: m test-art-host-run-test-907-get-loaded-classes\nChange-Id: Ifb33cae27dc32602bcd8fd930d3c7eda02598c26\n"
    },
    {
      "commit": "e54d992ee75c0924c9a8d4e2f77dacf44c8c651b",
      "tree": "b3bbf220dcd67c5496110a7096d9349b184411f6",
      "parents": [
        "f0ab2ec6008bbd495e59bb9bf81ac399d864f38b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Oct 11 19:55:37 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Oct 12 11:22:38 2016 -0700"
      },
      "message": "ART: Add heap iteration callback\n\nAdd callback support for heap iteration. Visiting of fields will\nbe done in a follow-up.\n\nAdd a test.\n\nBug: 31385354\nTest: m test-art-host-run-test-906-iterate-heap\nTest: m ART_TEST_GC_STRESS\u003dtrue ART_TEST_GC_VERIFY\u003dtrue test-art-host-run-test-906-iterate-heap\nChange-Id: I7bcf6751e6df4ef58756ba97701050b2ff5eb07b\n"
    },
    {
      "commit": "cc13b2226bcfb41e917f99ae5aeab79f25ed052e",
      "tree": "335dea9a3392bd971d14c1f9f38e482d45b836a1",
      "parents": [
        "c1f24b947a4dfe76064db3ae5470a388a67650a8"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Oct 10 19:09:09 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Oct 11 14:03:54 2016 -0700"
      },
      "message": "ART: Add object reclaim support\n\nAdd support for the object free callback.\n\nRefactor code in support. Add test.\n\nBug: 31384923\nTest: m test-art-host\nTest: m test-art-host-run-test-905-object-free\nTest: m ART_USE_READ_BARRIER\u003dtrue test-art-host-run-test-905-object-free\nChange-Id: Icde40ad464c723cfe2f7660c07cd2f79b6dc2032\n"
    },
    {
      "commit": "27fa96c285c4aa2f64e9bb63a3f38ffdc98c282a",
      "tree": "bece47e22bf5b8a212da88019dfed5eee01f7b88",
      "parents": [
        "77708d9149b0a00247eb69ea4d5386cae4e40287"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Oct 07 15:05:24 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Oct 10 13:27:45 2016 -0700"
      },
      "message": "ART: Add allocation callback\n\nBug: 31684277\nTest: m test-art-host\nChange-Id: I959f44e23ca5fe55ed678315708895faf0aadb04\n"
    },
    {
      "commit": "6dee92eb2ebddbea7e147c7a82b193e113b6421f",
      "tree": "24975672d085f9f2b459af6081f4536be194fdb6",
      "parents": [
        "cf42ad62df2dda8b5a39cab50669a9446a880b41"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Sep 12 19:58:13 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Oct 05 12:54:03 2016 -0700"
      },
      "message": "ART: Support object tagging\n\nAdd support for tagging in the JVMTI plugin.\n\nBug: 31385027\nTest: m test-art-host\nChange-Id: I4d8fb12cd23ca60dc0b0ce9051d1c77e5eb18aa9\n"
    },
    {
      "commit": "9642b1b698c1239cb13c8774936fd990c1a6a6c6",
      "tree": "179a8916660a0de5ee8c923c080dfd7af0fa3147",
      "parents": [
        "b4cf427734c6839b46d0d6037e3189a5e8aa1bdb"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Sep 28 02:44:00 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Sep 30 08:16:18 2016 -0700"
      },
      "message": "Remove dependency on libcutils\n\nUse liblog for liblog (instead of libcutils)\nReplace calls to property_get with libbase\nGetProperty()\n\nBug: http://b/31289077\nBug: http://b/27171986\nTest: remove liblog from libcutils and recompile\nTest: make test-art-target -j4\nChange-Id: I2a2913af8f521131558e9dd672d3973a64a410d3\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": "45026e4548641b1c0da0a030d563adb894bc5dd5",
      "tree": "2776c84234446d11ee31e346cd134fcc7a724ffc",
      "parents": [
        "eb82e9952549cf7020a9610663ba862a73f2b5ec",
        "b5d36de38d3352edb169b7081e836a7698528acc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 22 05:38:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Sep 22 05:38:52 2016 +0000"
      },
      "message": "Merge \"Don\u0027t warn for frame size in tests.\""
    },
    {
      "commit": "9c20a14103f87a8a7ad53f7d3e863887ea4e800a",
      "tree": "1fd4b123bae008f670f806024c88d3dc404da24b",
      "parents": [
        "a51a135f114f6f0dbf7c4afd336f68b4a0d1bb7d"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Aug 23 15:05:12 2016 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Sep 21 15:47:06 2016 -0700"
      },
      "message": "Get a basic modification of dex file working\n\nThis allows the modification of a single classes methods through\ntransformation. One must ensure that the provided dex file only\ncontains one function and does not add or remove any methods or fields\nand does not change the inheritance hierarchy in any way. The provided\ndex file must verify and there must be no frames of the old code\npresent on any thread. These constraints are not checked or verified.\nBreaking them might cause undefined behavior in all parts of the\nruntime. Code that has been inlined in any way might not be replaced.\nThis feature is extremely experimental.\n\nBug: 31455788\nTest: ./test/run-test --host 902-hello-transformation\n\nChange-Id: I35133d24f6cdafdd2af9dc9863e15ba8493fc50e\n"
    },
    {
      "commit": "b5d36de38d3352edb169b7081e836a7698528acc",
      "tree": "ebb1d69e414c93932f8a8ba4785ecedde518b44e",
      "parents": [
        "692cc743146ff14b8e6f97945e9069ef66d15dbd"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Sep 21 14:56:51 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Sep 21 14:56:51 2016 -0700"
      },
      "message": "Don\u0027t warn for frame size in tests.\n\nThe libc++ update I\u0027m working on trips this (seems to be related to\nstring constructors now being inlined, but I can\u0027t say for sure). ART\nitself is still under the limits.\n\nTest: mm\nBug: None\nChange-Id: Ic23c3e3aadc8db625767d8ecc727aec84f1e4603\n"
    },
    {
      "commit": "fd5428b636c08c3bb100f40631c4334efd79a496",
      "tree": "c5be9cc938527b46fe6cd5ec126773c646ae51c2",
      "parents": [
        "904614f008fa03b4443f1a0abdac1a1966805696"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Sep 19 10:40:05 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Sep 19 10:48:58 2016 -0700"
      },
      "message": "Fix mac build\n\nMove darwin disabling to art_test_defaults to disable mac build for\nlibarttest.\n\nTest: mmma -j art on mac\nChange-Id: I972245ddbacea274087d9231e4788bd9f2d6fe6b\n"
    },
    {
      "commit": "afd3c9ea7f238afebd5073c1143d3c832ab10a71",
      "tree": "ea95e66ac119b6f86f637ebbeba22e956d3a4c4e",
      "parents": [
        "be3a3ee02f148345ba6e1a0361532a3f7e8c0002"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Sep 16 13:47:21 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Sep 19 10:10:42 2016 -0700"
      },
      "message": "Convert art runtests to Android.bp\n\nBuild the art runtest libraries with Android.bp.  The host test\nlibraries move from out/host/linux-x86/lib[64] to\nout/host/linux-x86/nativetest[64], and the device test libraires from\n/data/artest/${TARGET_ARCH} to /data/nativetest[64]/art/${TARGET_ARCH},\nwhich requires adding nativetest to the library search path, and fixing\nsome tests to support multiple entries in library search paths.\n\nTest: m -j test-art-host\nTest: m -j test-art-target\nChange-Id: I2118a3292f22f275954ddd7cdd4e12287fe47808\n"
    },
    {
      "commit": "2c92bf2340206eb952db0fb6d41f9b39f80ed8ea",
      "tree": "0046e071400e147b68acf44288827a44207fa270",
      "parents": [
        "6615375c908864f1ae8d8515ad91b37b12f0991a",
        "c5c7187bfa1eb214ac2cff480ff158bb32473a2f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 16 07:57:14 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 16 07:57:15 2016 +0000"
      },
      "message": "Merge \"Fix 32-bit device tests\""
    },
    {
      "commit": "c5c7187bfa1eb214ac2cff480ff158bb32473a2f",
      "tree": "53255873217441ce286224f79fbd47bd42848afd",
      "parents": [
        "124f8813856f13033dc2efd50c65562cd2f95816"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 15 21:07:29 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 15 21:53:32 2016 -0700"
      },
      "message": "Fix 32-bit device tests\n\n32-bit tests are installed to /data/nativetest, not /data/nativetest32.\n\nTest: m -j test-art-target-gtest32\nChange-Id: I2736d6783dd34550dbfbbe54ffa724cd2b886d8b\n"
    },
    {
      "commit": "942036fbeb53eb950576ed9727379bac29919567",
      "tree": "0bd768670d571f03a68cc6febb10393b531b0624",
      "parents": [
        "7d26164308e9eab5c596a19b841e4ab1c27828a8"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 15 16:24:51 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 15 16:24:51 2016 -0700"
      },
      "message": "Fix mac build\n\nI accidentally dropped the hunks that disabled the mac build when\nrebasing.\n\nChange-Id: I412325f71c4bfde7a357b50daeb966e6db32c388\n"
    },
    {
      "commit": "6e95dd56e43b3a29fb8360bd94e31cd2eaab1d3d",
      "tree": "c536c5588f8a96f4559ca00921c7852a82558ea5",
      "parents": [
        "6b22aa5106e60545119b9eeaceaa9f87ee597305"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Sep 12 15:37:10 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 15 12:27:06 2016 -0700"
      },
      "message": "Convert art gtests to Android.bp\n\nThis splits the compilation and running of the art gtests into two\nseparate locations.  The tests are now compiled in multiple Android.bp\nmodules in each directory.  art.go collects the installed locations of\neach test and exports it as make variables.  art/build/Android.gtest.mk\nconverts the list into the rules to run the tests.\n\nThis has a few changes in behavior:\n  - The rules to build tests are now always defined, and will build as\n    part of mmma art or make checkbuild.\n  - Host tests are no longer installed into out/host/linux-x86/bin, they\n    are in out/host/linux-x86/nativetest[64]/\u003cmodule name\u003e/\u003ctest name\u003e\n  - Target tests are now in\n    /data/nativetest[64]/art/\u003carch\u003e/\u003cmodule name\u003e/\u003ctest name\u003e\n\nTest: mmma -j art\nTest: m -j test-art-host\nTest: m -j test-art-target\nChange-Id: Iabcd99d43890e6b693688422b07a283c3226a496\n"
    },
    {
      "commit": "6b22aa5106e60545119b9eeaceaa9f87ee597305",
      "tree": "ab26f42ac9fb9fff52c6f0683561c0bcdebd9569",
      "parents": [
        "6b4d988feb18559204f7175914851baf28febd8c"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Sep 12 14:35:39 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Sep 15 12:24:25 2016 -0700"
      },
      "message": "Convert libart-gtest to Android.bp\n\nChange-Id: Ibea17e3e002e6ad3f82158cd3c69d087fa9b15c9\n"
    }
  ]
}
