)]}'
{
  "log": [
    {
      "commit": "fc5e2ef08c78bcf4a60c5097ff3a7fa80e358522",
      "tree": "4c1d538f5faf72617e9088b8f99a368b999b32dd",
      "parents": [
        "685c84775f7dfe23197b080e4730435fd80e6d27"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri May 08 00:08:42 2020 +0000"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri May 08 07:25:07 2020 +0000"
      },
      "message": "Revert \"Remove test_per_src from ART tests.\"\n\nThis reverts commit 8103e479d8f8447584582b2b70752029f7087776.\n\nReason for revert: asan run fails in multiple ways\n\nTest: ran ./art/test/testrunner/run_build_test_target.py art-gtest-asan\nChange-Id: Ib9f2887436a664b64c6410f56a25ae2dd0e0aab4\n"
    },
    {
      "commit": "8103e479d8f8447584582b2b70752029f7087776",
      "tree": "53b2be70d195b785fc1d79b6151e42925b4981fe",
      "parents": [
        "6a8f8c52da06de506b75fa524a56a30794849261"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 28 21:36:49 2020 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu May 07 14:45:38 2020 +0100"
      },
      "message": "Remove test_per_src from ART tests.\n\nRemove test_per_src since it is not supported by atest.\nReplace it with gtest_isolate which is transparent to atest,\nand which still allows us to run tests in parallel.\n\nThe size of test binaries halves (from 1GB to 0.5GB).\nTest run-time on host is unchanged.\nTest run-time on target is 4x faster (tested on walleye).\n\nBug: 147819342\nTest: m test-art-host-gtest\nTest: art/tools/run-gtests.sh\nChange-Id: Id295af00d08b24baa2e421b0f3313df0b2e56fe9\n"
    },
    {
      "commit": "d20e51dcd0fc4b2b229c5b6a5e9b500ae042bc61",
      "tree": "2ef7925b2e89c77cee31144a25932a198cd4b65e",
      "parents": [
        "a6653d304faa3bbd981507570a4ac1107760c6a7"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue May 05 16:01:19 2020 +0100"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Thu May 07 09:34:47 2020 +0000"
      },
      "message": "\"Move ICU from ART APEX to i18n APEX\" Attempt 2\n\nThe change was previously submitted in https://r.android.com/1283897\n\n\"Calling @IntraCoreApi from core-icu4j should not cause Core platform API violation\"\nhttps://r.android.com/1299494\n\nBug: 138994281\nTest: m checkbuild on aosp_x86-userdebug\nTest: device boots\nChange-Id: Idb3e2450fca5d8300aef353fc1e4e99e24f04372\n"
    },
    {
      "commit": "4a48775376a4c0b180a7d32ad2cdf00bd0dca140",
      "tree": "ef0bbb1281f6d4785e60f26cb420646c83eb6f6d",
      "parents": [
        "b5146a3b70b9bf15532d25d3b876354938976bc9"
      ],
      "author": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Tue May 05 11:11:30 2020 +0000"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Tue May 05 11:11:30 2020 +0000"
      },
      "message": "Revert \"Move ICU from ART APEX to i18n APEX\"\n\nRevert \"Move v8 and libpac into i18n APEX\"\n\nRevert \"Move core-icu4j into I18n APEX\"\n\nRevert \"Move ICU from ART APEX into i18n APEX\"\n\nRevert \"Move core-icu4j into i18n APEX\"\n\nRevert \"Move libpac into i18n APEX\"\n\nRevert \"Add shared library into i18n APEX and add the required s...\"\n\nRevert \"Make com_android_i18n namespace visible\"\n\nRevert submission 1299494-i18nApex\n\nReason for revert: Breaking aosp_x86-eng on aosp-master\nReverted Changes:\nI30fc3735b:Move ICU from ART APEX to i18n APEX\nIcb7e98b5c:Calling @IntraCoreApi from core-icu4j should not c...\nIc7de63fe3:Move core-icu4j into I18n APEX\nI65b97bdba:Make com_android_i18n namespace visible\nIa4c83bc15:Move v8 and libpac into i18n APEX\nI10e6d4948:Move core-icu4j into i18n APEX\nI8d989cad7:Move ICU from ART APEX into i18n APEX\nI72216ca12:Move ICU into i18n APEX\nIef9dace85:Add shared library into i18n APEX and add the requ...\nI7d97a10ba:Move libpac into i18n APEX\nI90fff9c55:Move ICU from ART APEX into i18n APEX\n\nChange-Id: I516a8d290e3a3cc2b45d71ba5400364b0478a57a\n"
    },
    {
      "commit": "8419b82fa8d46362eb1369ec1876ee2d3c4bc29d",
      "tree": "dca0a5f4cd30c2882e404532eb06691a19624306",
      "parents": [
        "b6f4c79b06bb97651a7be1ac828d18ed18356603"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Apr 06 20:42:07 2020 +0100"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Tue May 05 08:52:20 2020 +0000"
      },
      "message": "Move ICU from ART APEX to i18n APEX\n\nIt involves a change of boot class path to use core-icu4j\nfrom i18n APEX.\n\nBug: 138994281\nTest: device boots\nTest: m build-art-target-tests\nTest: CtsJniTestCases\nTest: atest libnativeloader_test\nTest: ./art/test/testrunner/run_build_test_target.py -j80 art-test\nTest: art/build/apex/runtests.sh\nChange-Id: I30fc3735be760cba48856cd102852d2a6c796374\n"
    },
    {
      "commit": "ec64f202c6ab6dd825cd5bb9dd98a0fb37570dba",
      "tree": "38713c0a692ca1382bec604e9fb0b1ee7ad3525e",
      "parents": [
        "9c674ca2a44bd0e0d1ce3fee29320938847a8caf"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 20 15:05:54 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 28 17:56:59 2020 +0000"
      },
      "message": "Cleanup build rules for faster golem builds.\n\nBug: 149682808\nTest: m build-art-target-golem\nChange-Id: Ie6da8dd5aae7fa19f9a5ef1dd6b2f0038bd8467a\n"
    },
    {
      "commit": "d1f73515701bc64b3a23727b3973da6906f1b167",
      "tree": "59d789c42edd402ae799caa748939b61aeb00be7",
      "parents": [
        "bda163d9c8313f0b92046abda5ffb1216af1e808"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Apr 02 10:50:35 2020 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Apr 03 13:40:14 2020 +0100"
      },
      "message": "dex2oat: add --updatable-bcp-packages-file argument.\n\nAdd a command line argument specifying a file that contains\nthe list of updatable boot class path packages.\n\nTest: Updated module_exclusion_test\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: aosp_taimen-userdebug boots.\nBug: 151314205\nChange-Id: Ic6a66ad7e565a9b9b344cc467cb1ed550ab41b3f\n"
    },
    {
      "commit": "fdd46848364b5fdb7360cb3256bd9482d7ca3c28",
      "tree": "d3e47c9723155f6376e3782cc47658a295c1da1c",
      "parents": [
        "4ac8d96c332b014b72c2480aa1c83762e818daef"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 25 14:57:17 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 31 13:16:12 2020 +0000"
      },
      "message": "Deduplicate interned image strings.\n\nAlso fix a bug in relocation; even for -Xnorelocate we need\nto relocate second and later extension if it\u0027s not compiled\nagainst all previous boot image components.\n\nAlso clean up InternTable includes.\n\nTest: New tests in image_space_test.\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: aosp_taimen-userdebug boots.\nBug: 152037801\nChange-Id: Ie6ae70721f4ffb48950bd248ffa123dee460bcd7\n"
    },
    {
      "commit": "d31cff10f6982c312605a980272d9aa107658c71",
      "tree": "340c9512403bc7637ee5929b599305c7ba7c2a55",
      "parents": [
        "75d2189983906b36f6952b77d6d732a74f5fbd70"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 14:29:45 2020 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 30 16:00:15 2020 +0000"
      },
      "message": "Remove conscrypt as a build time dependency of ART.\n\nIt\u0027s now only required when running tests.\n\nTest: test.py, run-libcore-tests, run-libjdwp-tests\nChange-Id: I758c9d419eef7e20884d7fc2b3d82c6bba0c2504\n"
    },
    {
      "commit": "403384e36986532310a5a600c00dd171b7cee020",
      "tree": "4da1ad084b4bd1af7a2fc72bba7759a804ee2667",
      "parents": [
        "fe57c2b63df652fe4eefd750e3566309bfe038fb"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Mar 27 12:24:36 2020 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Mar 27 19:47:47 2020 +0000"
      },
      "message": "Fix host gtests for HOST_PREFER_32_BIT\n\nThe 32-bit and 64-bit ARCH variables are switched.\nHOST_ARCH\u003dx86_64 HOST_2ND_ARCH\u003dx86\nART_HOST_ARCH\u003dx86 ART_HOST_2ND_ARCH\u003dx86_64\n\nMake sure the gtests (ART_HOST_ARCH\u003dx86) depend on\nthe right boot image (HOST_2ND_ARCH\u003dx86).\n\nTest: m test-art-host-gtest\nBug: 147817558\nBug: 147819342\nChange-Id: Idd546228326a3a116edcda9b98ed05f0cd87f68b\n"
    },
    {
      "commit": "fe57c2b63df652fe4eefd750e3566309bfe038fb",
      "tree": "839ff604e8baae86458642803bc2738d0ab7b5e3",
      "parents": [
        "a467a6e81f5c6da589a5fb16fdb85f2604860623"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Fri Mar 27 14:58:54 2020 +0000"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Fri Mar 27 19:23:23 2020 +0000"
      },
      "message": "Revert^4 \"Add \"linkage\" test options\"\"\n\nThis reverts commit 16c08ca97486f535698f1a1b17f0332bfe78e95a.\n\nReason for revert: Disabled on device testing\n\nChange-Id: I8d5442e0ebb6383ebfbce98f1857b5e844e0d5e1\nBug: none\nTest: make test-art-host-gtest-dex2oat_test\n"
    },
    {
      "commit": "16c08ca97486f535698f1a1b17f0332bfe78e95a",
      "tree": "81dc1613d8751db5e9c73031bdfe9725c361778c",
      "parents": [
        "133987d8e3387395943f33ecc467ba0dbfed77e6"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 10:07:19 2020 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 27 10:07:40 2020 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Add \"linkage\" test options\"\"\"\n\nThis reverts commit 80c0c50de048da458c707adde5b0499d75f8253a.\n\nReason for revert: Test fails on device:\nhttps://ci.chromium.org/p/art/builders/ci/angler-armv8-ndebug/1306?\n\nChange-Id: I19e9b9e24023b2d7b6b86114c7a9e4018f65b2b8\n"
    },
    {
      "commit": "80c0c50de048da458c707adde5b0499d75f8253a",
      "tree": "a8e5c0bda491c4e84b37fd483694fe9ab65766fb",
      "parents": [
        "379503d0a12d4e22f0c04b4e7f295bfb9f6349fd"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Tue Mar 24 22:02:57 2020 +0000"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Thu Mar 26 20:38:09 2020 +0000"
      },
      "message": "Revert \"Revert \"Add \"linkage\" test options\"\"\n\nThis reverts commit 91a8e6f60c508c6e010b6ef8e4056e3a6f04c447.\n\nReason for revert: Moved tests to gtest and under compilation only.\n\nChange-Id: I60899694946353bfcd334473c20bb17c84f095e0\nBug: none\nTest: make test-art-host-gtest-dex2oat_test\n"
    },
    {
      "commit": "0c0f3026ba429177cfb348256d74f3cf00a39c41",
      "tree": "dccf8ac4632fd90095f0a6c616a3b9a9b52db871",
      "parents": [
        "f368882656cce265d732cba237fac7bc312934a6"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Feb 13 15:53:01 2020 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 26 18:03:53 2020 +0000"
      },
      "message": "Host gtests: Use the apex boot image instead of core.art.\n\nClosely mirror the behaviour of target tests.\n\nTest: m test-art-host-gtest\nBug: 147817558\nChange-Id: If9a1d34cef022fa93c9c09c8f31adc26ac71afdc\n"
    },
    {
      "commit": "31e0dc244db31fde40e0d6bcbcb7d08e95913564",
      "tree": "a67fb3b997ec13e9453e30e47dc666e94a056825",
      "parents": [
        "696882f2728dc634fa84d232be11db522727b03c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 20 15:48:09 2020 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 24 09:59:18 2020 +0000"
      },
      "message": "Remove -testdex variants of bootclasspath jars.\n\nThese were used for device testing. Instead use the jars present in the\ncom.android.art.testing apex and com.android.conscrypt apex.\n\nTest: run-libcore-tests, run-libjdwp-tests, run-tests\nChange-Id: I29b5c0e32719ce05783b0860585f54d4a61adcc8\n"
    },
    {
      "commit": "8c8f148bdde5eeb799dd802d861149b3e0f538c5",
      "tree": "c060009c0ee265f196c7b39edc2f2a6aa2696dab",
      "parents": [
        "5c33d35bf3bd0d824e94784312fe3ddb823028d1"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Feb 05 20:17:10 2020 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Feb 10 16:05:59 2020 +0000"
      },
      "message": "Add blueprint modules to generate jar files for gtests.\n\nThis will be needed to run gtests under atest.\nThe output is unused for now.\n\nSome of the tests in makefile were renamed for consistency.\n\nTest: m test-art-host-gtest\nBug: 147819342\nBug: 147817606\nChange-Id: I96db24406881a2adeeec7889f04681ae18352b16\n"
    },
    {
      "commit": "7955f5e0b3a8b76bb7493f59c0b44cc0ea84f551",
      "tree": "0d1711202a1cd7b3e5351d69845a2b157bf668ef",
      "parents": [
        "e8a83afa22cab1bf6a3ce6c23d9b89d37f83b343"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Jan 28 12:18:49 2020 -0800"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 29 16:55:04 2020 +0000"
      },
      "message": "Fix RUNTIME_TARGET_GTEST_MAKE_TARGETS\n\nThere are a few modules that are `test_per_src: false`, so the guess of\nthe module name does not work.\n\nBug: 126890843\nTest: see fewer warnings about missing modules on internal master\nChange-Id: Ib7d85b80b0629c1ddd17feb3b0477062bae6c179\n"
    },
    {
      "commit": "a599252cf8290d6f02bb83dcee5b71dd7f00f6a7",
      "tree": "1db3448a38e9a7dde8a87c89b3d298f1a2513438",
      "parents": [
        "c4f6cf3652f46514b716700adada1b2a8b2803d3"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Jan 07 16:55:09 2020 +0900"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 13 00:31:56 2020 +0000"
      },
      "message": "Replaced the hard coded art test names with the auto-generated ones\n\nBug: 146995717\nTest: run-gtests.sh\nChange-Id: I360f37d5d181dc21202f820bf717439ed4a2916b\n"
    },
    {
      "commit": "eac38a141a95adc273059ba2f6ad26f073391ed3",
      "tree": "a6457ecd364192ca9b40f2cffed2b6eb7a2de0a3",
      "parents": [
        "2aa5a78482b4a1aedb35469117dfcc5238f1a1e1"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Jan 03 17:56:33 2020 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri Jan 03 18:05:50 2020 +0900"
      },
      "message": "Refactor Android.gtest.mk more\n\nThis change fixes a bug that RUNTIME_TARGET_GTEST_MAKE_TARGETS is\nexpanded with incorrect module names such as \u0027._arch_test\u0027, etc.\nThis was because aosp/1199415 changed the variable to have module names,\nbut didn\u0027t fix the part that still expects that the variable is file\npaths.\n\nThis change also does some refactoring on the namings to prevent the\nsimilar confusion from happening in the future.\n\nBug: 146995717\nTest: run-gtests.sh\nChange-Id: I971c374b6c856848c1e3aaf0996c1812200373f2\n"
    },
    {
      "commit": "340fb0b49492cc8a0cab6108020793bf6e5fa339",
      "tree": "8572f3a9e1da49395756e0b320a9816ba0a6a092",
      "parents": [
        "6079d65f090161f1e851a996b29b71a92f73a4b5"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Dec 30 10:36:22 2019 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Jan 02 16:13:12 2020 +0000"
      },
      "message": "Workaround for building gtest dependencies.\n\nNow that ART tests are not soong \"installable\" (due to go/aog/1193736),\nmanually add all gtests in the Makefile to ensure we build their\ndependencies as listed in the makefile.\n\nAlso remove bitrotted make-based target test invocation.\n\nTest: run-gtests.sh\nBug: 146995717\nChange-Id: I3c680f00b46f2cadb2c0accabcc25e085fef4c88\n"
    },
    {
      "commit": "066dd902930582873e7d9372ac0c8483ac700cb9",
      "tree": "f3a0b47419fea78001faea017ba04e630e82fd2e",
      "parents": [
        "fb537087516e34e92e3c030ef2f7fc8b233d7a47"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Dec 19 02:11:59 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 20 01:17:37 2019 +0000"
      },
      "message": "Revert submission 1194828-revert-1191937-art_apex_available-DWXQGTKMAR\n\nReason for revert: relanding with fix\nReverted Changes:\nIc4119368c:Revert submission 1191937-art_apex_available\nIa084976bb:Revert submission 1191937-art_apex_available\nIada86226d:Revert submission 1191937-art_apex_available\nIc76735eac:Revert submission 1191937-art_apex_available\nI1eb30e355:Revert submission 1191937-art_apex_available\nIcaf95d260:Revert submission 1191937-art_apex_available\nIe8bace4be:Revert submission 1191937-art_apex_available\nI8961702cf:Revert submission 1191937-art_apex_available\nI39316f9ef:Revert submission 1191937-art_apex_available\nI522a7e83b:Revert submission 1191937-art_apex_available\nI8b9424976:Revert submission 1191937-art_apex_available\nI48b998629:Revert submission 1191937-art_apex_available\n\nChange-Id: I7a101d39ff63c153675e4e741f9de1a15a778d33\n"
    },
    {
      "commit": "80599a28d1c865de7644a87111f49ee3b30f7c41",
      "tree": "e56dcf999630a752cd955a06c7f4c00b7add290b",
      "parents": [
        "1e88f980a85056165312331746862dc48186bc54"
      ],
      "author": {
        "name": "Joseph Murphy",
        "email": "murj@google.com",
        "time": "Thu Dec 19 01:06:54 2019 +0000"
      },
      "committer": {
        "name": "Joseph Murphy",
        "email": "murj@google.com",
        "time": "Thu Dec 19 01:06:54 2019 +0000"
      },
      "message": "Revert submission 1191937-art_apex_available\n\nOriginal Commit Message:\n\"\"\"\nRename modules that are APEX-only\n\nThe renamed modules are only available for APEXes, but not for the\nplatform. Use the \u003cmodule_name\u003e.\u003capex_name\u003e syntax to correctly install\nthe APEX variant of the modules.\n\"\"\"\n\nReason for revert: Build Cop - Breaks about 15 AOSP targets, with high confidence due to these changes being the only non-robot changes in those builds.\n\nReverted Changes:\nI190ce2d10:Use apex_available property\nI990e0a67e:Use apex_available property\nI0d1295683:Revert \"Avoid duplicated classes for boot dex jars...\nI5fb725403:Find the jar libraries in APEX from the correct pa...\nI322b1efcc:Rename modules that are APEX-only\nIfa2bd0f8f:Use apex_available property\nIac6533177:Use apex_available property\nIe999602c6:Use apex_available property\nI2a3d73397:Use apex_available property\nIc91bcbb9a:Use apex_available property\nIa6c324eed:Use apex_available property\nI964d0125c:Use apex_available property\n\nChange-Id: I1eb30e355cfce316b94cde0dd176002af8d222bb\n"
    },
    {
      "commit": "1e88f980a85056165312331746862dc48186bc54",
      "tree": "0cbeeaf951d6bd637a46f4f51faf80587f3ecc2b",
      "parents": [
        "c9af14e93f6a2691bf8231752d8d7c3e41b14c76"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Mon Dec 02 13:44:06 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Dec 19 00:21:38 2019 +0000"
      },
      "message": "Use apex_available property\n\nUse apex_available property to prevent modules that are only for the ART\napex from being used outside of the APEX.\n\nThis change also fixes the reference to\n$(TARGET_OUT_SHARED_LIBRARIES)/$(lib).so to $(lib).com.android.art.debug\nphony module since the former is never installed to the system partition\ndue to their \u0027apex_available\u0027 settings.\n\nBug: 128708192\nBug: 133140750\nTest: m\nChange-Id: I990e0a67e066d9b1dc221748422a2f44449258da\n"
    },
    {
      "commit": "46845f6337f6036d9e09a4e84f099d768e9faba9",
      "tree": "61bc5e0fe796940d92c1ddcafac3983ce2739b23",
      "parents": [
        "1707bae46ae11b131478d994d7371241960a8427"
      ],
      "author": {
        "name": "Søren Gjesse",
        "email": "sgjesse@google.com",
        "time": "Tue Dec 10 09:14:16 2019 +0100"
      },
      "committer": {
        "name": "Søren Gjesse",
        "email": "sgjesse@google.com",
        "time": "Tue Dec 10 15:00:21 2019 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Revert \"Remove reference to d8-compat-dx\"\"\"\"\n\nThis reverts commit 9561faf10d2e23f322da03743a30843296971fd0.\n\nTest: art/tools/buildbot-build.sh -j8 --host \u0026\u0026\n    art/tools/run-libcore-tests.sh \u0027--mode\u003dhost\u0027 \u0027--variant\u003dX64\u0027 --debug\nTest: art/test/testrunner/run_build_test_target.py -j80 art-test\n"
    },
    {
      "commit": "9561faf10d2e23f322da03743a30843296971fd0",
      "tree": "6222d0135f32e9e4dc9b4f1372cd5fd0e88c19c6",
      "parents": [
        "b0a9747b363d1a368ed390fde07c6bfd6fbc78bf"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 06 13:35:59 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 06 16:03:40 2019 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Remove reference to d8-compat-dx\"\"\"\n\nThis reverts commit 64a5d1ae323efa384e317e3b8f2cc413a1ac2680.\n\nReason for revert: Breaks vogar.\n\nChange-Id: I561f577976648c10e5eec55bb8596c55ebd63948\n"
    },
    {
      "commit": "64a5d1ae323efa384e317e3b8f2cc413a1ac2680",
      "tree": "9ccd4683d427b7bc1cfcfb196cbc8414f2f2ff3b",
      "parents": [
        "b7bf843b04046f2758998c019e947611d0208217"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 06 11:06:52 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 06 11:08:16 2019 +0000"
      },
      "message": "Revert \"Revert \"Remove reference to d8-compat-dx\"\"\n\nThis reverts commit 1caa1270a53fa08ab9c6934d5bdd2da79c7bf89e.\n\nReason for revert: The R8 change has relanded.\n\nChange-Id: Ifa4e43410b895f0809860bb21c18142fd85500d3\n"
    },
    {
      "commit": "1caa1270a53fa08ab9c6934d5bdd2da79c7bf89e",
      "tree": "575686667078218972034ec7d695310c5aa88567",
      "parents": [
        "a142f712dffa675e3cd175bca89f37ff7160a07f"
      ],
      "author": {
        "name": "Jason Lee",
        "email": "jasl@google.com",
        "time": "Wed Dec 04 09:06:41 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Dec 04 19:36:21 2019 +0000"
      },
      "message": "Revert \"Remove reference to d8-compat-dx\"\n\nThis reverts commit 1755ad0062e97d0e358c65600fd5e51b40b85d95.\n\nReason for revert: Potential culprit for Bug 145645482 - verifying through Forrest before revert submission\n\nChange-Id: I56d829b824630b0a5a408c1d8cda75086ebbb89d\n"
    },
    {
      "commit": "1755ad0062e97d0e358c65600fd5e51b40b85d95",
      "tree": "e838741fe9ac5530564bc5c0c1d3d0caadc61152",
      "parents": [
        "6c030d4174b9009808c6d72b9ab9955b1115a7fc"
      ],
      "author": {
        "name": "Søren Gjesse",
        "email": "sgjesse@google.com",
        "time": "Tue Dec 03 13:05:47 2019 +0100"
      },
      "committer": {
        "name": "Søren Gjesse",
        "email": "sgjesse@google.com",
        "time": "Wed Dec 04 07:48:48 2019 +0000"
      },
      "message": "Remove reference to d8-compat-dx\n\nTest: ./art/test/testrunner/run_build_test_target.py -j80 art-test\nChange-Id: Ifaf76a5804e6fa77168f319dd8c95ff2ea6fe326\n"
    },
    {
      "commit": "65ae669694e4376d6015d8a54668d5d4bc826c27",
      "tree": "4a213390429b9b598add13fb85262343e654981d",
      "parents": [
        "27e5f3bc36407904e76ee35d54c8d5bbfdf7402b"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Fri Oct 11 14:17:21 2019 +0100"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Tue Oct 15 06:43:05 2019 +0000"
      },
      "message": "Add jni libicu_jni library into ART APEX\n\n- The library may be moved into i18n APEX in the future\n\nBug: 138994281\nTest: device boots\nChange-Id: I9c629224bb318acde744d470e7483a80b2473aa4\n"
    },
    {
      "commit": "caf8f4c5aaa1c2827d13309bd59b9f4b7e3424b9",
      "tree": "5948f5d4c0256f7a2e59a8ac33e7b69dc4afc3d5",
      "parents": [
        "2bb44fe818f2bf1d867a6ae490ef69c7f3a51e97"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 08 18:47:48 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 09 08:35:28 2019 +0000"
      },
      "message": "Fix dependencies of profile_boot_info_test.\n\nTo fix flakes like:\nhttps://android-build.googleplex.com/builds/git_master-art-host-linux-art-generational-cc/5924459/logs/build.log\n\nTest: profile_boot_info_test\nChange-Id: I72d86ef395d64ed366810bce13d536e705210341\n"
    },
    {
      "commit": "83072060112150894f723277ee9e8ae6977b56b5",
      "tree": "2e35e2e9041e943ffb5fcb0acfd4eaaffb67a46d",
      "parents": [
        "c84fc3a742b160ce51cbf01c2e5f971ccc0a2c6c"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Oct 02 16:06:58 2019 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Oct 03 21:50:54 2019 +0000"
      },
      "message": "Follow change to ART_TEST_LIST_*\n\nART_TEST_LIST_* now contain full paths instead of paths relative\nto $(OUT_DIR).\n\nTest: m checkbuild\nChange-Id: Id4d8610bfd93eb0b9080e83f05b878aedab0967e\n"
    },
    {
      "commit": "e58624f221b967553d7b71f14d8677ceaa000553",
      "tree": "00d6caa5ca66562d9c8e448abc77c0c6018fca0c",
      "parents": [
        "48349ad38887f65da76df268f8e548d508d8c6a1"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Sep 20 15:53:40 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Sep 24 17:40:00 2019 +0000"
      },
      "message": "Various renames following the name change from \"Runtime APEX\" to \"ART APEX\".\n\nIn particular ANDROID_RUNTIME_ROOT is now ANDROID_ART_ROOT.\n\nTest: Build \u0026 boot\nTest: art/tools/run-gtests.sh in chroot\nTest: art/test/testrunner/testrunner.py --target --64 in chroot\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64 in chroot\nTest: art/tools/run-jdwp-tests.sh --mode\u003ddevice --variant\u003dX64 in chroot\nTest: m test-art-host-gtest\nTest: art/test/testrunner/testrunner.py --host --64\nTest: art/tools/run-jdwp-tests.sh --mode\u003dhost\nBug: 135753770\nChange-Id: Ia74da964e54cf396d66e9e12ea56da4e9483662a\n"
    },
    {
      "commit": "84e5bb990d48263849bab132d80d753495bc7204",
      "tree": "4c14da40ad65b10759c81892849e69119fbdaf53",
      "parents": [
        "acb12378f91cc96183b999721d2875e504bb8762"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Sep 05 19:56:46 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 06 15:31:38 2019 +0000"
      },
      "message": "Rename some build variables and targets for the ART APEX.\n\nTest: m\nBug: 135753770\nChange-Id: I66273981013710500e5e57c0a3c40a5fdc61e3d0\n"
    },
    {
      "commit": "d6be5da75294d29060440a10e77f5d3461ed8d74",
      "tree": "2a92b0c53c3b40ef36cb8a81c4326b323d63b80c",
      "parents": [
        "ad909af6c4be163bf2d5f4ca1e0487cc619a5041"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Jul 16 17:14:46 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 02 10:28:27 2019 +0000"
      },
      "message": "Update references to the ART APEX for tests.\n\nTest: art/tools/buildbot-build.sh --host \u0026\u0026 art/test.py --host --64 --optimizing\nTest: art/tools/run-gtests.sh in chroot\nTest: art/test/testrunner/testrunner.py --target --64 in chroot\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64 in chroot\nTest: art/tools/run-jdwp-tests.sh --mode\u003ddevice --variant\u003dX64 in chroot\nBug: 135753770\nChange-Id: I876c5a2931970d6a75c1812e0f87bc65ab7bde0f\nMerged-In: I876c5a2931970d6a75c1812e0f87bc65ab7bde0f\n"
    },
    {
      "commit": "6461124331de7707f3b109cec38337d851be997e",
      "tree": "551fe08dc46d71f903244080f90df751d648adb5",
      "parents": [
        "3cb59a4e22bff5a06f5bcd1deb86e2580dd36de3"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Fri Jul 05 16:32:41 2019 +0100"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Thu Aug 08 11:06:51 2019 +0000"
      },
      "message": "Remove icu .dat file from Runtime module\n\nBug: 137009149\nBug: 130295968\nTest: device boots\nTest: m out/target/common/obj/JAVA_LIBRARIES/ahat-test-dump_intermediates/test-dump.hprof\nTest: art/build/apex/runtests.sh fails due to bug 138103882\nTest: art/tools/buildbot-build.sh\nTest: m test-art-host-gtest\nChange-Id: I0501fd6dd02dac3cf9780f5f1c0103e4b0475e1f\n"
    },
    {
      "commit": "8d5a215a7e879d8aa9c7d9d2791ed107ecc41f59",
      "tree": "65c0f2ca31665dee941681339aa51759eda92f08",
      "parents": [
        "118ce36aa0568842283fbe79772fd9de73ec9cd7"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 02 19:40:28 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Aug 07 13:29:48 2019 +0000"
      },
      "message": "Build and install the Testing Runtime APEX in ART device testing.\n\nReplace the Debug Runtime APEX with the Testing Runtime APEX for ART\ndevice testing.\n\nThis change does not change the behavior of ART device testing per se,\nas test rules have not been updated (yet) to make use of the\nadditional files (ART gtests) included only in the Testing Runtime\nAPEX.\n\nTest: ART (chroot-based) device testing\nBug: 129534335\nChange-Id: I1b9dfcb9fe483584b4065908c1b2e24d19703b52\n"
    },
    {
      "commit": "f0b1de829bfa96d7d52a57bf5fb2d84b7657e141",
      "tree": "9d8d46ba8dd33fce50e5856e87ba3fc4f66b1ee6",
      "parents": [
        "6a0b657a1875b4fbb020b806169e2f73fcb2578b"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 02 19:25:58 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Aug 02 14:51:00 2019 +0000"
      },
      "message": "Introduce Make variables for the various Runtime APEX names.\n\nTest: make systemimage (with user lunch target)\nTest: make systemimage (with userdebug/eng lunch target)\nTest: art/build/apex/runtests.sh\nBug: 129534335\nChange-Id: I69a06acc777acba17deb5e32061d1099ae82beaf\n"
    },
    {
      "commit": "672c08092a7d95bb504bceb712812f72524d90da",
      "tree": "e539c269d8733b13e43c41f9784d0c6c8200a9d6",
      "parents": [
        "e91d787c2de859789ec6e467bd04ee28b22a8c4e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Jul 26 13:03:13 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jul 29 12:33:14 2019 +0000"
      },
      "message": "Update Transaction for boot image extension.\n\nAnd clean up transaction-related code to keep test code\nout of the production binaries.\n\nTest: Add TransactionTest#Constraints to transaction_test.\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nTest: aosp_taimen-userdebug boots.\nChange-Id: Iefe5f1cfde95f564069249148f9e7d71564d7a10\n"
    },
    {
      "commit": "a0fc13a97a22604c5587a30d3b92cf22e68079a7",
      "tree": "509b1c4a795d08f5b8fcdf793f20fbc41a54362d",
      "parents": [
        "92db59bdb2c0154a1bec0c1e70c50f5f13d462a7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jul 23 15:48:39 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jul 25 13:46:03 2019 +0000"
      },
      "message": "Add support for a profile listing methods in compilation order.\n\nWill be used for jit zygote. Currently naive implementation separate\nfrom the regular profiles.\n\nTest: profile_boot_info_test\nBug: 119800099\nChange-Id: I30c49dcd80f6bcdc4c020e11cf2cd9cc0a46bebe\n"
    },
    {
      "commit": "b5204f4216557b1f7bfd72be1fd49ec9d0960ecb",
      "tree": "95ca743a14876cda3e8e185ef4613220aba196ce",
      "parents": [
        "4bd5234a05db801892ce28ea0504aebb46d06a25"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 25 12:39:15 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jul 16 22:13:40 2019 +0000"
      },
      "message": "ART: Add interface class join heuristic\n\nDo not treat interfaces as regular classes. This will always\nlead to a join of java.lang.Object, rejecting semantically\nvalid programs.\n\nWe want to retain IMT dispatch, forcing us to verify interface\nassigment. In the absence of set types, the result is ambiguous\nand not well defined. In a best effort, attempt to find a joint\ninterface by walking the interface tables of the join arguments\nbackwards.\n\nIn the case of two non-interface classes, we still prefer the\nclass hierarchy.\n\nBug: 69826014\nTest: m test-art-host-gtest-reg_type_test\nChange-Id: I7e0086f045e5bb2a7c3ee3464de45fc5b02f4d3f\n"
    },
    {
      "commit": "72f6774bf65222b7c93c3e4d706938635cacf050",
      "tree": "e121e3ce1f5b0e5215b7054fb8689e8e4ceded45",
      "parents": [
        "2c029f35eebe7d8b0d00979342d64b2f2dad5a94"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Mar 06 15:48:08 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jun 24 13:13:42 2019 +0000"
      },
      "message": "Use flattened Runtime APEX contents in ART chroot-based device testing.\n\nCopy the contents of the flattened Debug Runtime Module\ndirectory (`/system/apex/com.android.runtime.debug`) to\n`/apex/com.android.runtime` within the chroot directory on the device.\n\nAvoid generating artifacts that are not expected in the `system`\ndirectory (`TARGET_OUT`) of a \"normal\" build.\n\nAdjust the chroot environment to have it use the system linker\nconfiguration of the built target (\"guest system\") and the linker\nconfiguration of the Runtime APEX, even if the linker configuration\nflavor of the \"guest system\" (e.g. legacy configuration) does not\nmatch the one of the \"host system\" (e.g. full-VNDK configuration).\nThis is done by renaming the configuration file provided by the \"guest\nsystem\" (created according to the build target configuration) within\nthe chroot environment, using the name of the configuration file\nexpected by the linker (governed by system properties of the \"host\nsystem\").\n\nTest: ART chroot-based on-device testing using the master-art branch\nTest: ART chroot-based on-device testing using the master branch (with\n      `TARGET_FLATTEN_APEX` set to `true` before building).\nBug: 124425036\nBug: 121117762\nChange-Id: Ied3f6ee8b2d68c3473fab864d1bbed9e88df59d3\n"
    },
    {
      "commit": "0df2aba868ca2f808f73e75e248a036b161088f6",
      "tree": "6b7ecde53d4169d42a35727979656ee6e05b87bf",
      "parents": [
        "148c1609b165e79a2e30161bf8148786f3eee307"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 10 16:53:55 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 11 21:50:02 2019 +0000"
      },
      "message": "ART: Use SIGTERM for timeout dumping\n\nSwitch to using SIGTERM (15), the timeout default.\n\nBug: 134837513\nTest: m test-art-host\nTest: manual (change timeout)\nChange-Id: Ic962d0a59c1636dffe742a2cbea06099ab567791\n"
    },
    {
      "commit": "148c1609b165e79a2e30161bf8148786f3eee307",
      "tree": "fac06a80d58ac9d48bc8eb4c09caecaa5fd22ebf",
      "parents": [
        "298dc0f0475ce9753f3ba105c48ed74d124c668a"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 10 16:47:46 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 11 21:50:02 2019 +0000"
      },
      "message": "ART: Rename timeout_dumper to signal_dumper\n\nTo reflect the more broad applicability.\n\nBug: 134837513\nTest: m test-art-host\nTest: manual (change timeout)\nChange-Id: I1206bd7b2be351ca2efae3564b677c28ea484766\n"
    },
    {
      "commit": "917cfdb915bd7674e27d6fe353274318862e0d8b",
      "tree": "7ab243b4350e69528f15d15069ad1b707fff3380",
      "parents": [
        "0d54cfb1a696bfe9795bdee3653c130747b97fcc"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu May 02 10:53:22 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri May 03 12:23:21 2019 +0000"
      },
      "message": "Fix build rules.\n\nThe (dir $@) is a shared directory that could collide with another\nrule. So instead prefix temporary files with $@_.\n\nAlso remove verbose flag to the zipalign command.\n\nTest: m\nChange-Id: Ie93e2b486095ee7d8a007dc15dd393f26bab03e8\n"
    },
    {
      "commit": "c36a8ccf44454f1a4b8b57420205faf11dec7046",
      "tree": "189c0baf0cf748669712b0fc3c734d229386d8ab",
      "parents": [
        "5fe1b23d54303a1adf91b644f26f6df066e175ed"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 29 13:37:42 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 29 15:29:38 2019 +0000"
      },
      "message": "Handle empty uncompressed and aligned dex file in an archive.\n\nReturn an error message for it. Callers expect it.\n\nTest: dex2oat_test\nBug: 131175467\nChange-Id: I55c05f0a9c48cea252869f88740c6338b5b28b1f\n"
    },
    {
      "commit": "3b19de27a40924b60d456a3016d324e8328cad77",
      "tree": "3061391bed405344b10634cb6a633eeaf95ffff6",
      "parents": [
        "5a0622ae24b6b07be4d720827fb5570710cea2bc"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Apr 12 16:07:51 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Apr 13 06:51:12 2019 +0000"
      },
      "message": "Fix oatdump_test build dependencies.\n\noatdump_test requires dex2oat.\n\nTest: m test-art-host-gtest-oatdump_test64\nChange-Id: If836100ddf24634562ca092fe2e37cc35709b4f1\n"
    },
    {
      "commit": "3e8aae03770a4acceff2f7fb7d6db68e05602d84",
      "tree": "297b7f7cfeb82f352da84333f7fd584b8d0f8718",
      "parents": [
        "40594870058427d6d1090f18c216f9dd155421e2"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 26 18:48:02 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Apr 11 06:57:08 2019 +0000"
      },
      "message": "Fix dex location of boot oat files during preopt\n\nDex location should reflect the path on target when preopting\non host. This previously did not hold and this patch fixes the\nissue. Other paths remain the same as before. A DCHECK is added\nto class linker to guarantee that -Xboot-classpath-locations is\nnot ignored.\n\nSimultaneously it refactors the logic for resolving a relative\npath to make it clearer which path is used for opening files\n(dex file name) and which reflects the location on target (dex\nlocation), as these differ when preopting.\n\nThe patch also adds a missing dex2oat dependency for oat_file_test.\n\nTest: test-art-gtest-{host,target}-oat_file_test\nTest: compiles, no DCHECK crashes\nChange-Id: I0629c7ee505b5fd50649800bb3e08efc1ee44102\n"
    },
    {
      "commit": "4f215d1b1ceba9dfc8d8f3d8644da81302b2cd86",
      "tree": "34ee009a807d394ab7e1bb7f9ab3b1d36e3c7269",
      "parents": [
        "774232ae5a825ad4a366edc57081bff265e0ac32"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Wed Apr 03 09:28:21 2019 -0700"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Thu Apr 04 15:28:48 2019 +0000"
      },
      "message": "Rename dexdump2 to dexdump\n\nComplete the migration from dalvik/dexdump to art/dexdump.\n\nBug: 22322814\nTest: make checkbuild test-art-host-dexdump\nChange-Id: I95d5b83d9855b440f2fe4073f1e1d746fe807888\n"
    },
    {
      "commit": "975b77427413977665f3be66d02e1d164df1efbc",
      "tree": "5f4fea939264fe245d3df9a052d5551736f802fe",
      "parents": [
        "340eff4ef043a58934304b33d0656ee3741b2f94"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 21 17:37:38 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 22 08:30:24 2019 +0000"
      },
      "message": "Fix two_runtimes_test dependencies.\n\nTest: two_runtimes_test\nChange-Id: I79b34ed0a7bcccdce78a761533155588236bf213\n"
    },
    {
      "commit": "26a5dd6fd1d65de29ba85e4bb61d9267dd428238",
      "tree": "952cdd73cefa3be7554e35dc2e9651b3054b7c29",
      "parents": [
        "d0430bfe6e08f932fa15b159457a5430f5b3ec25"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Mar 13 15:16:35 2019 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Mar 18 16:08:05 2019 +0000"
      },
      "message": "Add support for ANDROID_TZDATA_ROOT\n\nSoon, code in the Android Core Library / ICU4C library will depend on the\nANDROID_TZDATA_ROOT environment variable being set. On device this points\nto the root of the com.android.tzdata module.\n\nUnlike ANDROID_RUNTIME_ROOT, ANDROID_TZDATA_ROOT it doesn\u0027t have to point to\nanything that exists because the code will fall back to looking in\nANDROID_RUNTIME_ROOT if it can\u0027t find the files it is looking for. Most\nof the changes in this commit are plumbing to make sure the environment\nvariable is set to benign defaults or passed through to the runtime.\n\nThis commit has been put together by looking for usages of\nANDROID_RUNTIME_ROOT and duplicating the logic.\n\nBug: 128422035\nTest: build only\nChange-Id: I2fd73fe16f5022742aaf634be158765cac8759e6\n"
    },
    {
      "commit": "a5c3a808020d81447bc19d07a99288e9d28a6e6c",
      "tree": "83a9b1eac0a7209e6e407c0462d0b1ba8f95f62c",
      "parents": [
        "98fb083a30e9b37685f943e2923e65e60e0a0971"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Mar 08 14:59:41 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Mar 14 14:34:20 2019 +0000"
      },
      "message": "hiddenapi domain: Use oat dex file location if available\n\nTo determine the caller and callee domains of a hidden API access check,\nthe logic will test the dex location against several known system\nlocations. However, DexFile instances backed by an OatFile have relative\ndex locations to avoid need to rewrite the .oat file when moving files\nbetween folders. The canonical dex location is stored in the OatDexFile\ninstead.\n\nBecause the OatDexFile data structure is not available in libdexfile,\nmove the domain resolution logic to hidden_api.cc and resolve when dex\nfiles is first registered with the class linker.\n\nTest: m test-art-gtest\nTest: camera does not crash\nBug: 126901248\nBug: 127852529\nChange-Id: Id494b1c47a2199c227dec046174e08320b9cbc3b\n"
    },
    {
      "commit": "70ae00d6b9aefb285b8c8427d59cd5d1c296cecf",
      "tree": "ebb0a76aa207a7a801de8a02c798713820c6100b",
      "parents": [
        "42d9967a2417fe08987c152e40cebeb88851ec44"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Feb 15 22:41:14 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Feb 19 15:22:35 2019 +0000"
      },
      "message": "Fix missing entry for the static libdexfile_support test in the gtest list.\n\nAlso comment on the lack of test_per_src for those tests, and update the\nfind predicate in run-gtests.sh to handle these test binaries that end with\n_tests instead of _test.\n\nBug: 123186083\nTest: m test-art-host-gtest-art_libdexfile_support_tests\nTest: m test-art-host-gtest-art_libdexfile_support_static_tests\nTest: Buildbot style device test:\n  art/tools/buildbot-build.sh -j8 --target \u0026\u0026 \\\n  art/tools/cleanup-buildbot-device.sh \u0026\u0026 \\\n  art/tools/setup-buildbot-device.sh \u0026\u0026 \\\n  art/tools/buildbot-sync.sh \u0026\u0026 \\\n  art/tools/run-gtests.sh\nChange-Id: I2c103f760dde1154f44b1c90ff3ab9ae356d6318\n"
    },
    {
      "commit": "676e00a12f4b42a6ab572f4e0ae6fcb1e647bb1c",
      "tree": "0518e3b3292351d0c5ea662cc236ae1146b52fa6",
      "parents": [
        "edd96398d8562ae2adcd41962e69440c244148fc",
        "2da3cbb4af20a64108e474c0bbbe0cc5d3af2aa2"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Sat Feb 02 12:08:21 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 02 12:08:21 2019 +0000"
      },
      "message": "Merge \"hiddenapi: Fix class hierarchy traversal\""
    },
    {
      "commit": "2da3cbb4af20a64108e474c0bbbe0cc5d3af2aa2",
      "tree": "8cbdf50aab2183c701f1dc7c9ac17d1129fb5238",
      "parents": [
        "0518af4e87d484b10e785aff9b030b688926cd7f"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jan 30 16:17:50 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 01 14:59:57 2019 +0000"
      },
      "message": "hiddenapi: Fix class hierarchy traversal\n\n`hiddenapi` builds and traverses the class hierarchy, visiting all\nclass members that methods/fields in stubs may resolve to.\n\nThe algorithm wouldn\u0027t work when:\n* an interface declares a method which is in stubs, and\n* a class implements the interface by inheriting the method from its\n  superclass; neither the class nor its superclass are in stubs.\nThe problem was that once a matching method was found, only subclasses\nwould be traversed. In this case, the method would be found in the\ninterface, the class which implements it would be traversed but its\nsuperclass would not.\n\nThis patch simplifies the algorithm and partially reverts a performance\noptimization which caused the problem. As a result, there is a build\ntime regression from 5s to 8s.\n\nThe patch also adds gtests which test this behaviour. There were no\ntests until now because stubs are not present in master-art manifest.\nGet around this issue by using the actual core JARs as stubs but test\nthe behaviour on other classes.\n\nBug: 122551864\nTest: m test-art-host-gtest-hiddenapi_test\nChange-Id: I63751c5ef517c8e9d3a157dfbec8de01bd99c2d4\n"
    },
    {
      "commit": "119733d87242414100df7b9eedb6d1672a03ead6",
      "tree": "19ba75bd42d3c94a4de0684ae66f4078da1546a6",
      "parents": [
        "8a64e773d4d1221166c6a8206315b450e448705a"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jan 30 15:14:41 2019 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Jan 31 15:39:55 2019 +0000"
      },
      "message": "Revert \"Revert \"ART: introduce PALette abstraction layer\"\"\n\nThis reverts commit e6e01a0a00de80704ccb21c48d5d8bdee4470b77.\n\nBug:  122824298\nTest: art/test/testrunner/run_build_test_target.py -j50 art-test-javac\nTest: m out/target/common/obj/PACKAGING/hiddenapi-stub-flags.txt\nTest: frameworks/rs/build_rs.py\nChange-Id: If7b9ddca3daa80b75b3541abd283bf47d5b81118\n"
    },
    {
      "commit": "e6e01a0a00de80704ccb21c48d5d8bdee4470b77",
      "tree": "8f9cc651764686140accaadcfb8f77bf7572c24b",
      "parents": [
        "4b9d00aca9b025b545c9633b4605334c22fc4d2d"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jan 30 14:02:30 2019 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jan 30 14:02:30 2019 +0000"
      },
      "message": "Revert \"ART: introduce PALette abstraction layer\"\n\nThis reverts commit 4b9d00aca9b025b545c9633b4605334c22fc4d2d.\n\nReason for revert: breaks renderscript mac and run_host_tests in master.\n\nChange-Id: I6024894a384c65f3e7d81b9c5bba8ebe8ce1b420\n"
    },
    {
      "commit": "4b9d00aca9b025b545c9633b4605334c22fc4d2d",
      "tree": "7984bf247f908d145b7c6b48df99f3f0a80ae148",
      "parents": [
        "4ee4561f2153f3b0bc3be2e781488a97c73ca58e"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Jan 03 17:04:02 2019 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jan 30 09:00:27 2019 +0000"
      },
      "message": "ART: introduce PALette abstraction layer\n\nThis change decouples direct dependencies on system libraries.\n\nBug: 122824298\nTest: art/test.py --host --64\nTest: art/test.py --target -j8\nTest: m -j100 \u0026 flashall -w \u0026 device boots\nTest: art/build/apex/runtests.sh\nChange-Id: Iae927ed9aaa228a941cd444cef04e6ec53955299\n"
    },
    {
      "commit": "3ad2c2b66db119bc406d812b983e7acb9c00fe1e",
      "tree": "b846ad9e705fee33e7e7b6f513fbfdcff4818311",
      "parents": [
        "3aac63bd0f727c8ba2d707cf97a245b1b35872cb"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Jan 26 00:19:38 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Jan 26 00:20:48 2019 +0000"
      },
      "message": "Fix oatdump_test.\n\nThe ExportDex variants stopped working now that core-oj.jar is\nuncumpressed and the vdex file doesn\u0027t contain the dex code.\n\nUse an app dex file instead.\n\nChange-Id: Ib7c09a7180a62007a67de5062575ad07dcce4944\nTest: oatdump_test\n"
    },
    {
      "commit": "8baa11a3626a8230a55e2e32b2d1281995a27ae4",
      "tree": "4dcab53f983682e4da30146fcd7f68803fe34d21",
      "parents": [
        "26e2eb689f595e2f1d3cd436198bc1233c4179db"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 24 10:30:03 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 24 18:52:14 2019 +0000"
      },
      "message": "Adjust ResolveRelativeEncodedDexLocation.\n\nNow that jar files are in the apex, relax the prefix check between\nthe absolute location of the oat file and the jar location for host\ncompilation.\n\nFor example we now have:\n- /system/framework/boot-core-oj.art\n- /apex/com.android.runtime/core-oj.jar\n\nWhereas before, the jar and the art file had the same prefix path.\n\nTest: m\n\nChange-Id: Ic216229dab7a853c64c98a36e32b387559f9cc0d\n"
    },
    {
      "commit": "7c777f8fe8311dfd88d87da0c89d351a7f3e5af2",
      "tree": "b152477f68eebef701bf4408550dbad505652d78",
      "parents": [
        "f6c84a4f32290acd1bf3680ca579b4cafcc95af2"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jan 10 18:00:37 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jan 11 17:18:00 2019 +0000"
      },
      "message": "Honor `ART_TEST_ANDROID_RUNTIME_ROOT` when running ART gtests on target.\n\nWhen this environment variable is defined, use its value to define\n`ANDROID_RUNTIME_ROOT` when running ART gtests on device.\n\nThis is a generic change, but its first intended use is to point\n`ANDROID_RUNTIME_ROOT` to \"/system\" when running gtests on target, so\nthat ICU can find ICU .dat files in \"/system/etc/icu\", until the\nRuntime APEX is available in target testing on the ART Buildbot.\n\nTest: Rely on the ART Buildbot.\nBug: 121117762\nBug: 119293618\nBug: 113373927\nChange-Id: I96e12e237d3c722609a042aaf1a946b654f9544f\n"
    },
    {
      "commit": "750bf0415258435202aaadba51375f8b63b49c78",
      "tree": "d5559366283424f43cfdf44640b8401966fc6f42",
      "parents": [
        "fdb2f60e7ad3d676ec55286e29e11bc7506b1973"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Jan 09 22:51:12 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Jan 10 15:48:31 2019 +0000"
      },
      "message": "Add unit tests for libdexfile external API.\n\nThis prompted a fix to ExtDexFileMakeString in the C API to make it fully\nsupport strings with NUL chars. That\u0027s currently not expected to be\nrequired; it\u0027s for the sake of API completeness.\n\nTest: m test-art-{host,target}-gtest-dex_file_supp_test\nTest: art/test/testrunner/run_build_test_target.py -j80 art-test\nBug: 119632407\nChange-Id: Ibd3ef6e3ea7ae196f541e926a4a7665be1c91819\n"
    },
    {
      "commit": "fdb2f60e7ad3d676ec55286e29e11bc7506b1973",
      "tree": "103339655651dbcdaa89baf949f0a098dd7a647c",
      "parents": [
        "2ccc9c3f2a6318e15a7a1d63ece206a6a075fa19"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Jan 09 14:47:00 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Jan 10 15:48:13 2019 +0000"
      },
      "message": "Separate libdexfile external C ABI from the C++ header file.\n\nAlso add a test to compile it with C.\n\nTest: m\nTest: m test-art-{host,target}-gtest-dex_file_ext_c_test\nTest: art/test/testrunner/run_build_test_target.py -j80 art-test\nBug: 120978655\nChange-Id: I6e9944a2051bef9a2775bc2072df4e0ed81dc833\n"
    },
    {
      "commit": "4bdcf5dd5f65e2e3d40ecc35ede1450dd9c86a6f",
      "tree": "b59439c9bef57ce5066f768a057fb06a08dac051",
      "parents": [
        "d406b621c41330593ad69bad4eb9517116da284e"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 14 10:48:53 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Dec 18 15:02:41 2018 -0800"
      },
      "message": "ART: Use timeout --foreground\n\nDo not propagate the timeout signal to the runtime.\n\nTest: manual\nChange-Id: I51ebaa383f240828f0c9a3cf2255b235dd09ed9b\n"
    },
    {
      "commit": "0ace5633680af8864b76b4f45d63b3407e4dcdf5",
      "tree": "526435a2877d3d04eaa471238b4efd37a347d05d",
      "parents": [
        "d97e00c4f6e8735a854f4443b8bd08fc5a251ce5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 14 11:11:47 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 14 13:12:15 2018 +0000"
      },
      "message": "Revert^2 \"Allow boot image for a part of the boot classpath.\"\n\nThis reverts commit fb83d76a8b186df05f874216b535f5ad57e7bd02.\n\nFixed host run-test dependencies, cleaned up target run-test\nand gtest dependencies.\n\nTest: rm -f out/host/linux-x86/framework/conscrypt-hostdex.jar\n      testrunner.py -b --host --optimizing -t 660-clinit\nBug: 119868597\nChange-Id: Ia0a5aba0223ae6616bf3e109daf0af7b8355d048\n"
    },
    {
      "commit": "1b2ae58925bc2c3f9e1853b7bcae8860906f62ed",
      "tree": "53cdce92aeb394da9d68391015b635326448bbc5",
      "parents": [
        "fcf213c38229e8bb16798954442920b402b16e53"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 13 13:27:14 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 13 13:27:14 2018 -0800"
      },
      "message": "ART: Fix missing \\ in Android.gtest.mk\n\nFollow-up to commit 28fd62af6fcce33c83488e1f0e5876c1cdab8f15\n\nTest: m test-art-host-gtest\nChange-Id: I6b879f8372e27c18273aa1e23756388a94d4a233\n"
    },
    {
      "commit": "28fd62af6fcce33c83488e1f0e5876c1cdab8f15",
      "tree": "43618472c99d2dd8b6e320ba05628e347a7cc2e1",
      "parents": [
        "6cd9314c7fea1f1f0c4fdb8126018483f68925e6"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 12 15:15:22 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 12 15:15:50 2018 -0800"
      },
      "message": "ART: Add timeout to host gtests\n\nAdd the same timeout code as host run-tests.\n\nTest: m test-art-host-gtest\nChange-Id: I1fe673e8d5f9d25a25c236bbc265b2f13a63216c\n"
    },
    {
      "commit": "7a85e70b2bf646d1d7a226fbb4e7fafb66871dd5",
      "tree": "790ee4c1cee812535c856a08355c50c2032c5cd4",
      "parents": [
        "6a98f89c4ad645b04d6c80d3d7e260c59bf6f193"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 03 18:47:23 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Dec 04 17:17:19 2018 +0000"
      },
      "message": "Reduce core image to 6 modules.\n\nThis was\n    Revert^2 \"Reduce core image to core-{oj,libart,simple}.\"\nbut we\u0027re now keeping three additional modules, namely\nconscrypt, okhttp and bouncycastle. And we fix the boot\nclass path used by vogar with the companion change\n    https://android-review.googlesource.com/840810 .\n\nThis reverts commit 00fe35e4021e9a8679eca3ffaede48fd89b56258.\n\nChange-Id: I6137edd91c03c17be50de200267eb9adc971e8fb\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: Pixel 3 XL boots.\nTest: m test-art-target-gtest\nTest: testrunner.py --target --optimizing\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nBug: 119868597\n"
    },
    {
      "commit": "26c43778589d1c7598cbe6203b6545c9d3ab220a",
      "tree": "474167d306678366b1c90c7a9e6f824308ec7f7a",
      "parents": [
        "c89a28730fb8dff57c6cb5b18295fec45fe85d09"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Nov 23 17:56:43 2018 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Dec 03 20:05:09 2018 +0000"
      },
      "message": "Add support for ANDROID_RUNTIME_ROOT variable\n\nThis commit introduces the ANDROID_RUNTIME_ROOT environment\nvariable in preparation for its use within the runtime module.\n\nAs a module, ART must no longer use the Android-wide\nANDROID_ROOT environment variable as the base of default\npaths for module content. ANDROID_RUNTIME_ROOT will take over\nthe responsibility. It remains a variable to unify host\nand device treatment.\n\nSome test methods (SetUpAndroidData, TearDownAndroidData\nSetUpAndroidRoot) have been renamed to clarify their purpose.\n\nBug: 119935277\nTest: build / treehugger\nChange-Id: I7c7de52911cbfa56cef90270425ed369176c4767\n"
    },
    {
      "commit": "d79b37b054cc7de5be093790408208a07bb799ec",
      "tree": "16ea9f25662be0670d4f02f5a03d42e56fc0ce33",
      "parents": [
        "fd35c6862a2417d4765f65a4b81459c09a2f70ae"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Nov 02 13:06:22 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Nov 02 13:34:49 2018 +0000"
      },
      "message": "ART: Throw on soft verify failure in InitializeClass().\n\nAvoid a CHECK() failure in ClassLinker::EnsureInitialized()\nwhen the transactional interpreter tries to initialize a\nclass with soft verification failures.\n\n(When desired, compilation can be forced to fail for such\nfailures with the --abort-on-soft-verifier-error option.)\n\nTest: Added a regression test to image_test.\nTest: m test-art-host-gtest\nTest: Pixel 2 XL boots.\nTest: m test-art-target-gtest\nChange-Id: Ibb8cf6ade81b5a2944c7e484251a67aba1f1fbeb\n"
    },
    {
      "commit": "0ef9457ba1b635b3242a7dde965349ec200cd7de",
      "tree": "37fd69b213218fb730f400f2b9179356fedf21d0",
      "parents": [
        "fdd3790cd0ac299479f7b658e0ca1866c32fbb80"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Sun Oct 21 19:00:56 2018 +0000"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Sun Oct 21 19:00:56 2018 +0000"
      },
      "message": "Revert \"Remove dist-for-goals call for gtests.\"\n\nThis reverts commit fdd3790cd0ac299479f7b658e0ca1866c32fbb80.\n\nReason for revert: fixed by https://android-review.googlesource.com/c/platform/build/+/796536\n\nChange-Id: I96d6551b14b9b241a08ee6a9c6557c0de10a60fc\nTest: m test-art-host-gtest\n"
    },
    {
      "commit": "fdd3790cd0ac299479f7b658e0ca1866c32fbb80",
      "tree": "7c7b084db134c0f6130199493e8ee7d9018d0342",
      "parents": [
        "fa9abc28c7825040812101210ccf9b99ef3d565a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Oct 21 14:17:27 2018 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Oct 21 14:17:27 2018 +0100"
      },
      "message": "Remove dist-for-goals call for gtests.\n\nSeem to break with:\nFAILED: ninja: \u0027_dist_test-art-host-gtest-cmdline_parser_test32\u0027, needed by \u0027test-art-host-gtest-cmdline_parser_test32\u0027, missing and no known rule to make it\n\nAfter:\nhttps://android-review.googlesource.com/c/platform/build/soong/+/796458\n\nTest: test-art-host-gtest\nChange-Id: I041545b65517afd8deb11873af917bef238499db\n"
    },
    {
      "commit": "cd0f38fcbda3e578ac27e483a1ffb7718f83fb7a",
      "tree": "5a8a89ca8cb04ae22d2c43aff38ab50717801581",
      "parents": [
        "8677e4bd3a091588c3b8058439f7022edab57f6e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Oct 15 09:44:35 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Oct 16 13:13:26 2018 -0700"
      },
      "message": "Add logic to eagerly resolve const-string for startup methods\n\nAdded dex2oat option --resolve-startup-const-strings\u003d\u003ctrue|false\u003e\n\nIf true, this option causes the compiler driver to resolve all\nconst-strings that are referenced from methods marked as \"startup\" in\nthe profile.\n\nBug: 116059983\nTest: test-art-host\nChange-Id: I61cf9e945c125671fc4ab4b50458a911318a837f\n"
    },
    {
      "commit": "17b1dcba9e4dc956d88a0235307471b8ba7c4591",
      "tree": "7b4b686d8dc77a69e01d301b7831617ef4c76fb0",
      "parents": [
        "231a9538fcf96b016f8bea211f0c09359c4a182f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 12 15:09:42 2018 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 12 15:12:56 2018 +0100"
      },
      "message": "Add target gtest dependencies to build-art-target-tests.\n\nNow that we\u0027re not using makefile for syncing, we\u0027ve lost\nthat dependency.\n\nTest: test-art-target-gtest\nChange-Id: If0e4c9e332c34b5ceb1667945cc5c1a8eedc8768\n"
    },
    {
      "commit": "db72e5ec7ca18282fe03bba20494b021fbdaa7c6",
      "tree": "b44b533354acb58f882061ee67b1bc21a92eb891",
      "parents": [
        "432d280f68d1649b79246228f51188fbee984af3"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Oct 02 14:09:21 2018 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Oct 09 06:07:52 2018 +0000"
      },
      "message": "Stop using DIST_DIR directly, use dist-for-goals\n\nWe\u0027re moving DIST_DIR handling outside of the Kati instance that reads\nthese makefiles. As such, the dist file actually needs to be represented\nin the build graph, not as a side effect of a phony rule. All of the\ndependencies of that phony rule must be actual files in that graph now\ntoo, not other phony rules.\n\nBug: 117463001\nTest: DIST_DIR\u003ddist ./art/test/testrunner/run_build_test_target.py -j50 art-gtest\nChange-Id: I15d5a2c28321ff7f0f8d7d99dc697bd0393380cb\n"
    },
    {
      "commit": "a39a8978d2da1830a480d1a097e31e0607558b46",
      "tree": "37ada104e29bb6576f0f16d80c56f7263efb4af0",
      "parents": [
        "ad38634064bccb072e2fdff776a05d1131e9eca6",
        "44078f92b96ec7111b606b73f0af86b1a57093e4"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 03 10:22:15 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Oct 03 10:22:15 2018 +0000"
      },
      "message": "Merge \"Setup profiling_info_test dependencies.\""
    },
    {
      "commit": "a497a39fe8830fe7b1c1c23b413753fe4e12923b",
      "tree": "c1f02f404feefb94fa105a563f0e6c1146ab22b8",
      "parents": [
        "d6266f3292eab5b043262c6366ed6b8131e152c5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 26 10:52:50 2018 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 02 08:54:11 2018 +0100"
      },
      "message": "Remove patchoat.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: Pixel 2 XL boots.\nBug: 77856493\nChange-Id: I6686ce9d23e02aa8b8ef4081b302dbd860d07718\n"
    },
    {
      "commit": "44078f92b96ec7111b606b73f0af86b1a57093e4",
      "tree": "722341e2b807e0796b95c0794668f32188ff0245",
      "parents": [
        "f4180000ce79d2b360fad00fc1369c533f337124"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 01 12:57:55 2018 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 01 12:57:55 2018 +0100"
      },
      "message": "Setup profiling_info_test dependencies.\n\nbug: 116847787\nTest: profiling_info_test\nChange-Id: Ib8121d9f05b2683bf07d50d023c7694ff0c8c4f5\n"
    },
    {
      "commit": "64c2d77138f65bb7fae00aa8802055062c368fd9",
      "tree": "408d916a5888cc64acc93ee13b7cc0e017656e3c",
      "parents": [
        "4a25727eba333c19dc6eacc35950c526c11041d4"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Aug 31 09:22:44 2018 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Aug 31 10:14:07 2018 +0100"
      },
      "message": "Define $(ADB) in ART makefiles instead of hard-coding adb.\n\nFollow-up after restrictions put in place by the build, see:\nhttps://android.googlesource.com/platform/build/+/master/Changes.md#PATH_Tools\n\nTest: test-art-target-sync, test-art-target-gtest\nChange-Id: Ibd01be9c348ef1cc24d53d0d4c30c64eb1d9eac7\n"
    },
    {
      "commit": "1391390a775ca54fa1dd22ceccf211eae84073ea",
      "tree": "6d722ffc3480bf93bf9ce71b9dfe1437b5ac1dc5",
      "parents": [
        "75eec5d14039d4cbc4ec9b96485b743573665627"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Aug 24 14:19:06 2018 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Aug 28 14:21:35 2018 +0100"
      },
      "message": "Add core-simple to the standard boot classpath\n\nTrack changes in build/make to add core-simple to the\nruntime boot classpath.\n\nBug: 113148576\nTest: Treehugger / build / boot\nTest: CTS: run cts-dev -m vm-tests-tf\nChange-Id: I649acd3e354948e5b1a56d0531aceb45f244aa9d\n"
    },
    {
      "commit": "928567baee62129525b1717f61afe23bc1e18666",
      "tree": "da9d7c28e9a4e732028326ea9f6c94959157408f",
      "parents": [
        "ca182f2c81e7102d3ccd1c4ec5c96e602ad343fe"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Aug 01 10:21:12 2018 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Aug 01 10:21:12 2018 +0100"
      },
      "message": "Fix jni_internal_test dependency.\n\nbug: 111935423\nTest: jni_internal_test\nChange-Id: I4e5af07337fdf2b08b6975ca8f6b2873f347e600\n"
    },
    {
      "commit": "64fe3be84105db1a8f35550ae0a3c06f1092d436",
      "tree": "22f91ab45b3c8b1d940e83a0fd24b851be32949c",
      "parents": [
        "cca7cb9ffa56d8ab8fd0c5997c8bfd965d7426c1"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 15 12:50:22 2018 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Jun 26 14:08:29 2018 +0000"
      },
      "message": "ART: Retire desugar and dx in run-tests\n\nRun-tests now use d8 for desugaring and dexing.\n\nBuild scripts no longer have hand written dexer invocations.\n\nBug: 110150973\nBug: 73711890\nTest: art/test.py --host --64 -r\nTest: art/test.py --target --prebuild --optimizing -r\nChange-Id: Iae2199cf756624c1f045de7777c5ee6432398bd2\n"
    },
    {
      "commit": "05e34f4cb8c9db165d1008721e874b9dd3db024b",
      "tree": "c41d397ef5cfb9d7918fceadcda3195a0d0d91de",
      "parents": [
        "428d80e3a49f732b39bb0c71cfde26451e3fdf4d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu May 24 13:19:05 2018 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jun 11 14:03:37 2018 +0100"
      },
      "message": "Revert^2 \"Remove support for Valgrind in ART.\"\n\n- Disable test configuration art-gtest-valgrind64\n  (art-gtest-valgrind32 was already disabled).\n- Remove Makefile logic regarding testing with Valgrind.\n- Remove occurrences of `TEST_DISABLED_FOR_MEMORY_TOOL_VALGRIND`.\n- Replace occurrences of `TEST_DISABLED_FOR_MEMORY_TOOL_ASAN` with\n  `TEST_DISABLED_FOR_MEMORY_TOOL`.\n- Replace the potentially dynamically evaluated\n  `RUNNING_ON_MEMORY_TOOL` expression with constant\n  `kRunningOnMemoryTool`.\n- Simplify and fold the logic of\n  `art::ArenaAllocatorMemoryToolCheckImpl` and\n  `art::ArenaAllocatorMemoryToolCheck` into\n  `art::ArenaAllocatorMemoryTool`.\n- Adjust comments regarding memory tools.\n- Remove Valgrind suppression files.\n- Remove `--callgrind` option from tools/art.\n\nThis reverts commit 8b362a87d52a6668ffd2283ef6ffc274315f41c8.\n\nChange-Id: I23c76845e6ccf766f19b22b58a0d5161f60842a9\nTest: art/test.py\nTest: art/test/testrunner/run_build_test_target.py art-asan\nBug: 77856586\nBug: 29282211\n"
    },
    {
      "commit": "c6d02fd9d27429d8940b04b1d60f2497c4eeb776",
      "tree": "2f2a55696b5191dc87532909129cdeb1b5189453",
      "parents": [
        "aaebb1468cc95838aa58ed537d03de000c9cfe28"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed May 23 14:31:46 2018 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed May 23 16:59:33 2018 +0100"
      },
      "message": "Fix gtest Makefile rules with respect to chroot support.\n\nTest: make test-art-target-gtest\nBug: 34729697\nChange-Id: I751b138b39a5f77306940ca2114a30e9c2757dd4\n"
    },
    {
      "commit": "197f1ef6f4f2411d011d7e8f696775c3fbcffd86",
      "tree": "eacc720024479e75b03d12ac6764f2cd2ba945b3",
      "parents": [
        "04f0eaffa70e0384c07bb3680aa0724144358330",
        "8b362a87d52a6668ffd2283ef6ffc274315f41c8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 22 23:00:40 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 22 23:00:40 2018 +0000"
      },
      "message": "Merge \"Revert \"Remove support for Valgrind in ART.\"\""
    },
    {
      "commit": "8b362a87d52a6668ffd2283ef6ffc274315f41c8",
      "tree": "14b187cd0b4afde501b9cc7a9dc82c997362e888",
      "parents": [
        "8268cb677bd92bfbcfec7e803775c29687494e53"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue May 22 20:54:14 2018 +0000"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue May 22 20:54:14 2018 +0000"
      },
      "message": "Revert \"Remove support for Valgrind in ART.\"\n\nThis reverts commit 8268cb677bd92bfbcfec7e803775c29687494e53.\n\nReason for revert: ASAN failures\n\nChange-Id: I7e66d3f3fb461ae4f6dea6ec7d506b7dface3402\nTest: SANITIZE_HOST\u003daddress m test-art-host\nBug: 77856586\nBug: 29282211\n"
    },
    {
      "commit": "f31343f1eab771010b3f293366149d2524f30902",
      "tree": "5187b2bceee4c7d5347750dc6ba0020172d5ef51",
      "parents": [
        "e816389b61d17b9a82d8e61426ddfcce20e1238c",
        "8268cb677bd92bfbcfec7e803775c29687494e53"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue May 22 16:46:43 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 22 16:46:43 2018 +0000"
      },
      "message": "Merge \"Remove support for Valgrind in ART.\""
    },
    {
      "commit": "0226c1d40d6532757fc258cb0586a338a8cd2931",
      "tree": "f18dd1bf1359ae76c5d029a3b0d00c425b1bb8af",
      "parents": [
        "a7d37cf735f05cfc3a3585a5c44eb65d8a279874"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu May 17 00:19:12 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu May 17 10:09:55 2018 -0700"
      },
      "message": "Add some extra dexanalyze tests\n\nBased on dexdump tests, test for:\n- Missing arguments\n- Invalid input\n- Using core dex as input\n\nTest: test-art-host-gtest-dexanalyze_test\nBug: 77721545\n\nChange-Id: I8ce0607b6d3d60171de00a83047536195a81e26f\n"
    },
    {
      "commit": "8268cb677bd92bfbcfec7e803775c29687494e53",
      "tree": "b63ca42dcd440117187e3c859b4b311b11b8137e",
      "parents": [
        "004b8875b291af5001d384fb1eb76ae0660ff056"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri May 11 15:06:17 2018 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon May 14 18:40:49 2018 +0100"
      },
      "message": "Remove support for Valgrind in ART.\n\n- Disable test configuration art-gtest-valgrind64\n  (art-gtest-valgrind32 was already disabled).\n- Remove Makefile logic regarding testing with Valgrind.\n- Remove occurrences of `TEST_DISABLED_FOR_MEMORY_TOOL_VALGRIND`.\n- Replace occurrences of `TEST_DISABLED_FOR_MEMORY_TOOL_ASAN` with\n  `TEST_DISABLED_FOR_MEMORY_TOOL`.\n- Replace the potentially dynamically evaluated\n  `RUNNING_ON_MEMORY_TOOL` expression with constant\n  `kRunningOnMemoryTool`.\n- Simplify and fold the logic of\n  `art::ArenaAllocatorMemoryToolCheckImpl` and\n  `art::ArenaAllocatorMemoryToolCheck` into\n  `art::ArenaAllocatorMemoryTool`.\n- Adjust comments regarding memory tools.\n- Remove Valgrind suppression files.\n- Remove `--callgrind` option from tools/art.\n\nTest: art/test.py\nBug: 77856586\nBug: 29282211\nChange-Id: Ifdcbfccc1830104c455760457df66ede4a4cd135\n"
    },
    {
      "commit": "e11945792a98282c5383bf514d466e6346adb3a2",
      "tree": "0a5a80fdc465ff901b088a8d408eaeef84d43263",
      "parents": [
        "57b1bcd19934b447eda315dc1b612ab91a87b2fd"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu May 10 17:57:20 2018 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu May 10 17:59:17 2018 +0100"
      },
      "message": "Fix the target gtest witness filename expansion in Makefile rules.\n\nAlso fix the path to the valgrind binary in target valgrind\ngtest rules.\n\nTest: Run ART gtests with chroot\nTest: Run ART gtests without chroot\nBug: 34729697\nChange-Id: I164185ea63eee1b19f039436f99933c040f4c66e\n"
    },
    {
      "commit": "76cfe61b0c20f7c9d9ba9b60b188f483d81c5f68",
      "tree": "7ac27f14dedefc355c9f890d339397b8fdcb3e52",
      "parents": [
        "b865d9af3bb5f4777dbe9cbd60cdb2a8fe5f0557"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Oct 30 13:14:28 2017 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue May 08 13:55:56 2018 +0100"
      },
      "message": "Support ART on-device testing in a chroot environment.\n\nThis change updates the ART test rules and scripts to allow\ninstallation and ART testing in a chroot directory on device.\n\nAll existing ART testing is supported:\n- ART gtests (with and without Valgrind).\n- ART run-tests.\n- libcore tests (with companion CL in external/vogar).\n- JDWP tests (with companion CL in external/vogar).\n\nTest: Run ART tests (gtest, run-tests, libcore tests, JDWP tests) in chroot\nBug: 34729697\nBug: 68125496\nChange-Id: I398e9bafee61eccd98d827ab8d9b8f6395aaa853\n"
    },
    {
      "commit": "d5f8de8bc61160bb2cecdcc0f5aa54d151b6176a",
      "tree": "efecd6d3dffd3a1d768b87a111d9e60335d9108c",
      "parents": [
        "9417b6b81393253a56b1b9bb4c7d8a2a2966707e"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Fri Apr 27 14:12:03 2018 -0700"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Tue May 01 16:23:42 2018 -0700"
      },
      "message": "Add CommonArtTest\n\nAdd a test framework that does not start up a Runtime object.\n\nBug: 78651010\nTest: make -j 40 test-art-host\nChange-Id: I6c8af384af5fe1289c6cf137635e94934ac3795d\n"
    },
    {
      "commit": "c523600ec234e00dfdc31149e9bda9c4f27addf7",
      "tree": "8e74dcaffb303a1dc640a9209ead5f02ef37f878",
      "parents": [
        "550ea7bd03005e6b416e31b36fcf9626504aad37",
        "5d2dbf8958857d139e5f7e06940b2f6b713bc522"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Apr 14 01:29:02 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Apr 14 01:29:02 2018 +0000"
      },
      "message": "Merge \"Fix build warnings for x86+arm targets\""
    },
    {
      "commit": "0be7fa708455e2ffbf3779166269acee7a4a6791",
      "tree": "dc85326d5d93a11d12fd48a05feef43f9001f724",
      "parents": [
        "fe6cf7cb0865cc1710d14ff8a41817794e965ea5"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Apr 12 10:13:29 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Apr 12 10:32:14 2018 -0700"
      },
      "message": "Fix typo in clean vars for dexanalyze_test\n\nBug: 77721545\nTest: make\n\nChange-Id: If408ffc115ae998000ab00305706d06536be75a5\n"
    },
    {
      "commit": "2e0478a62e314ff4ce2334da7608543fa93e7c68",
      "tree": "871b75216bf0fd227fb17a0c738289edffaf0a82",
      "parents": [
        "dc83dea435e059b7ff0969636d0a6bec689e60f6"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Apr 06 14:33:25 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Apr 11 14:47:01 2018 -0700"
      },
      "message": "Add dexanalyze tool\n\nUsed to gather statistics about dex files.\n\nSample output:\nCumulative analysis for 240 DEX files\nNum string ids: 9809636\nNum method ids: 11334990\nNum field ids: 8281881\nNum type ids: 2291729\nNum class defs: 1604550\nSame class direct: 1577080\nOther class direct: 5114002\nSame class virtual: 2118445\nOther class virtual: 15998142\nSame class static: 693507\nOther class static: 6496367\nNum strings accessed from code: 5832974\nUnique(per class) method ids accessed from code: 15169103\nUnique(per class) string ids accessed from code: 4279695\nSame class invoke: 4389032\nOther class invoke: 27608511\nInvokes from code: 31997543\n\nBug: 77709234\nBug: 77721545\nTest: time dexanalyze -count-indices \u003cAPKS\u003e\nTest: mm test-art-host-gtest-dexanalyze_test -j64\nTest: mm test-art-target-gtest-dexanalyze_test -j64\n\nChange-Id: I3cd3fd10a9c540c7780942fc33f4eb4c7ff5d914\n"
    },
    {
      "commit": "5d2dbf8958857d139e5f7e06940b2f6b713bc522",
      "tree": "48fcb1b3177ba69988171adb8c10d99839958fbb",
      "parents": [
        "dc83dea435e059b7ff0969636d0a6bec689e60f6"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Apr 11 12:31:11 2018 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Apr 11 13:44:48 2018 -0700"
      },
      "message": "Fix build warnings for x86+arm targets\n\nThis likely doesn\u0027t fix all of the issues, but it at least removes the\npages of overriding command warnings for these configurations.\n\nTest: lunch aosp_x86_arm-eng; m nothing\nTest: build-aosp_arm.ninja is identical\nTest: build-aosp_arm64.ninja is identical\nChange-Id: Iacdfd56d098eec08cf588c98ca00c7c7e10c6261\n"
    },
    {
      "commit": "cf767de732a63afb03622c694cd40c01538d67ed",
      "tree": "848525d6efdda02b89b40a47f89a2ec8f6a7d66d",
      "parents": [
        "8d2e70ae234d53f825f6876f5b5e75bdfe6729b5"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Apr 10 16:40:10 2018 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Apr 10 16:40:10 2018 -0700"
      },
      "message": "Fix RUNTIME_TARGET_GTEST_MAKE_TARGETS\n\nThis was including only the \u003cfilename\u003e, while Soong test_per_src tests\nare exposed to make as \u003cname\u003e_\u003cfilename\u003e. So deconstruct the path, which\nuses .../\u003cname\u003e/\u003cfilename\u003e, instead of just taking the basename.\n\nThis has been causing warnings on some internal branch builds, about how\nwe were asking for these modules, but that they didn\u0027t exist. This\nchange removes those warnings.\n\nTest: Check warnings on internal branches\nChange-Id: I4b8559961f51cc32f2fac0bf6fb15ee34ba72bdd\n"
    },
    {
      "commit": "177696278224434829b6a7a7bc0a3cdebe7ae19d",
      "tree": "ca5a708d38bd43943629e5ab7993c1418e7f45b4",
      "parents": [
        "faa7b29f1e0c311e42ab5a265cb1b17036ca5a10"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Apr 06 13:26:36 2018 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Apr 06 13:49:06 2018 -0700"
      },
      "message": "Fix overriding commands warnings/error\n\nOn mac, where the x86_64 architecture is disabled, and on linux when the\nART_BUILD_HOST_[N]DEBUG\u003dfalse flags are set (or even the TARGET versions),\nthe modules referenced here aren\u0027t defined. Due to the text processing,\nwe end up with multiple rules defining the \u0027Uncompressed\u0027, \u0027Stripped\u0027,\netc targets:\n\nart/build/Android.gtest.mk:97: error: overriding commands for target\n`Stripped\u0027, previously defined at art/build/Android.gtest.mk:93`\n\nThese are becoming errors in this CL:\n\nhttps://android-review.googlesource.com/c/platform/build/+/657896\n\nBug: 77611511\nTest: on mac: m nothing\nTest: on linux: ART_BUILD_HOST_DEBUG\u003dfalse ART_BUILD_HOST_NDEBUG\u003dfalse \\\n  ART_BUILD_TARGET_DEBUG\u003dfalse ART_BUILD_TARGET_NDEBUG\u003dfalse m nothing\nTest: out/build-aosp_arm.ninja is the same (on linux with no args)\nChange-Id: I0fec90398839fb6e3cc6443e2e37f934401dc177\n"
    },
    {
      "commit": "567dc6f16fd8d399b19e5c9f6199ba5be82374d9",
      "tree": "9e9410ba879db760e26b6f29491e6e042560d638",
      "parents": [
        "6fcf35bc06b1eb88080863b3bd8f7e16ca099910"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Apr 05 16:37:14 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Apr 05 16:39:33 2018 -0700"
      },
      "message": "Revert \"Revert \"Write shared data section for oatdump export dex\"\"\n\nTest: test-art-target-gtest-oatdump_test64 -j64\nBug: 77469384\n\nThis reverts commit 4b670183dcc5173c19922b3f3d87c2fbddbb7a34.\n\nChange-Id: Ic727a005436753ea58ee5d10cd1aca5fbd532c6a\n"
    },
    {
      "commit": "4b670183dcc5173c19922b3f3d87c2fbddbb7a34",
      "tree": "440b7f5f212c0e3b61f2b366d2d06bd671ba3930",
      "parents": [
        "fdca4cb565c25a4a05078b2afc3f7abb374309e3"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Apr 04 12:54:15 2018 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Apr 04 12:54:15 2018 +0000"
      },
      "message": "Revert \"Write shared data section for oatdump export dex\"\n\nThis reverts commit fdca4cb565c25a4a05078b2afc3f7abb374309e3.\n\nReason for revert: CHECK failure in device testing (bad checksum).\n\nChange-Id: I43bd3ada4853022728d217ff8b79c32026fc4974\n"
    },
    {
      "commit": "fdca4cb565c25a4a05078b2afc3f7abb374309e3",
      "tree": "0d022efa40d6ac742389d81a8aea1b83dce7928f",
      "parents": [
        "bc444ffaaa51fe3be38d4037929d7755a6ffb6c7"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Apr 03 13:29:13 2018 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Apr 03 13:31:00 2018 -0700"
      },
      "message": "Write shared data section for oatdump export dex\n\nWrite this out so that the resulting dex can be dumped and inspected.\n\nBug: 77469384\nTest: test-art-host-gtest-oatdump_test\n\nChange-Id: Iadeaca0eaaf7c75a938dfc776801cf94c89d07f6\n"
    }
  ],
  "next": "7d74ef585063ca2adc0ba9c18008b7c1671ff699"
}
