)]}'
{
  "log": [
    {
      "commit": "7cd509c6d0cf3b2aa45cb8074b8c6ea674a7482f",
      "tree": "f787b7ce5b8a2378befc4df29d9ba1eae3e2f263",
      "parents": [
        "4ed28fbf6910203336c65095bc18fc47743e01c4"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 28 16:27:16 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 29 11:58:58 2021 +0000"
      },
      "message": "Include BuildId in native stack dump.\n\nThis is needed to symbolize stack for the ART apex,\nsince the compile apex path does not have to match\nthe runtime apex path.\n\nBug: 171980804\nTest: symbolize stack dump from logcat\nChange-Id: If778bfe6ea257f51c52aab615f41f28fe92bffd0\n"
    },
    {
      "commit": "4ed28fbf6910203336c65095bc18fc47743e01c4",
      "tree": "b43bacc4a635cb2707b317c2ba1de20da41fbae6",
      "parents": [
        "6620caa89a4691bc5cbdbc5af7599b17fd8896f5"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Thu Oct 28 14:53:49 2021 +0100"
      },
      "committer": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Fri Oct 29 10:36:10 2021 +0000"
      },
      "message": "Extend test 712-varhandle-invocations to check negative array indices.\n\nCheck that varhandle intrisics do not crash and delegate to slow path\nwhen array index is negative. The runtime should throw an out-of-bounds\nexception, which is caught and ignored by the test. Not throwing an\nexception fails the test as well.\n\nBug: 71781600\nTest: art/test.py -r -t 712-varhandle-invocations --host\nTest: art/test.py -r -t 712-varhandle-invocations --target\nTest: Manually change/remove the generated instructions that check for\n  negative array indices on arm64/x86_64 and ensure that the above test\n  crash in the generated code, as expected.\nChange-Id: Id2c31b639ab63fd1f3fb7d521f9e6a3676535fe5\n"
    },
    {
      "commit": "6620caa89a4691bc5cbdbc5af7599b17fd8896f5",
      "tree": "e8a5bda30356ae019df926ef1aa3e8e6149a301b",
      "parents": [
        "298f1b7f1b7219d5e9e72778f1986c8e439fe4ba"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 28 17:48:47 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 28 17:48:47 2021 +0000"
      },
      "message": "Revert \"x86_64: Implement VarHandle.get{,Acquire,Opaque,Volatile} for byte array views.\"\n\nThis reverts commit 298f1b7f1b7219d5e9e72778f1986c8e439fe4ba.\n\nReason for revert: Breaks several Android builds.\n\nBug: 71781600\nChange-Id: Ic821256aa7f67e21c64c7a8e29b5665b39a89092\n"
    },
    {
      "commit": "298f1b7f1b7219d5e9e72778f1986c8e439fe4ba",
      "tree": "4757c2120ab99ee62fffc6cbc10740a26897ee09",
      "parents": [
        "5514c8ec932bef044119c178b6e9e180b3f81cf8"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Tue Oct 12 15:08:53 2021 +0100"
      },
      "committer": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Thu Oct 28 15:40:26 2021 +0000"
      },
      "message": "x86_64: Implement VarHandle.get{,Acquire,Opaque,Volatile} for byte array views.\n\nBenchmarks improvements (using benchmarks provided by\nhttps://android-review.googlesource.com/1420959):\n\n  benchmark                              before   after\n  -----------------------------------------------------\n  VarHandleGetByteArrayViewInt             2.74   0.002\n  VarHandleGetByteArrayViewBigEndianInt    2.74   0.003\n\nBug: 71781600\nTest: lunch aosp_cf_x86_64_phone-userdebug \\\n  \u0026\u0026 art/test.py --host -r -t 712-varhandle-invocations --64\nTest: Repeat with ART_USE_READ_BARRIER\u003dfalse.\nTest: Repeat with ART_HEAP_POISONING\u003dtrue.\nChange-Id: I4974b5773efb15b6245f690575218536d2c514db\n"
    },
    {
      "commit": "5514c8ec932bef044119c178b6e9e180b3f81cf8",
      "tree": "e8a5bda30356ae019df926ef1aa3e8e6149a301b",
      "parents": [
        "e7e123a581073d1cd1458e2b677c20f095b3cd40"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Oct 19 05:40:32 2021 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Thu Oct 28 14:30:26 2021 +0000"
      },
      "message": "Add dexpreopt_test.\n\nThis is a test to verify that the compilation artifacts built in the\nsystem image for all system server jars are used. If will fail if the\nartifacts are rejected by the runtime or odrefresh has run.\n\nBug: 201491591\nTest: atest art_standalone_dexpreopt_tests\nChange-Id: Id0f943cf822b55580eb121ee25375386397ae515\n"
    },
    {
      "commit": "e7e123a581073d1cd1458e2b677c20f095b3cd40",
      "tree": "dfdeb9f9ffaced22a68d45ba8de997a683d96f06",
      "parents": [
        "6ef707212d72b93daf90d01b9fb2f89f5d35b3b0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 28 11:15:08 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 28 13:27:49 2021 +0000"
      },
      "message": "Fix checker tests after inlining change.\n\nThis fixes target tests broken by\n    https://android-review.googlesource.com/1843319 .\nIn one case we use the `$noinline$` tag to prevent inlining.\nIn the other one, we specify the field name to avoid newly\ninlined instructions from matching CHECK-NOT assertions.\n\nTest: testrunner.py --target --64 --optimizing \\\n      -t 450-checker-types -t 530-checker-lse\nBug: 154012332\nChange-Id: Ie82f425bfcaebba1c53877c223aeefcba213921e\n"
    },
    {
      "commit": "6ef707212d72b93daf90d01b9fb2f89f5d35b3b0",
      "tree": "39e3ae94a5f3d36d9ee62e758d34e8d3985b3c8e",
      "parents": [
        "4dcac3629ea5925e47b522073f3c49420e998911"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 27 15:46:18 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 28 09:07:26 2021 +0000"
      },
      "message": "Move Soong module `art-run-test-checker` from `mts` to `mts-art`.\n\nTest: Run `m mts` and check the contents of\n        `$ANDROID_HOST_OUT/mts/android-mts.zip`\nTest: Run `m mts-art` and check the contents of\n        `$ANDROID_HOST_OUT/mts-art/android-mts-art.zip`\nBug: 203466102\nChange-Id: I115930fc5539f3595a0f4733fd20bcd5133a1b6d\n"
    },
    {
      "commit": "4dcac3629ea5925e47b522073f3c49420e998911",
      "tree": "51219b64e869c15149a7397c8ab1eac2dc4e3cd4",
      "parents": [
        "48fb9f43a81fa0cab09ed4a4f3d478c1a0ecbe9e"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Sep 23 12:26:04 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed Oct 27 20:05:43 2021 +0000"
      },
      "message": "Initially allocate smaller local IRT\n\nIntroduce a separate small object allocator to allocate tables for\nthe initial local indirect reference tables, so they don\u0027t each\noccupy a full page. This seemed to be easier than using linear_alloc,\nsince these allocations are done from multiple threads. This also\nhas the advantage that GC roots are concentrated on separate\npages, that could be protected as before, but there are many fewer of\nthen than before.\n\nAs discussed with Lokesh, it might eventually be better to allocate\nthese in the Java heap. But doing that cleanly seems to require a\nmajor refactoring to split IrtEntrys into two separate components,\nwhich complicates iteration, etc. And that has locality disadvantages\nduring lookup. Or we need to either drop the serial number of merge\nit into the GcRoot, neither of which is ideal either.\n\nDrive-by-fix: When trimming, don\u0027t call madvise on empty address ranges.\n\nTest: Build and boot AOSP.\nTest: art/test/testrunner/testrunner.py --host -b --64\nBug: 184847225\nChange-Id: I297646acbdd9dbeab4af47461849fffa2fee23b1\n"
    },
    {
      "commit": "48fb9f43a81fa0cab09ed4a4f3d478c1a0ecbe9e",
      "tree": "efb8c5b83a8c2dddf88590fab45680108b9efb95",
      "parents": [
        "58ebded1817e4d95a3006c3274f2fb589207748c"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Oct 26 14:12:40 2021 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Oct 27 09:31:23 2021 +0000"
      },
      "message": "Revert \"OpenJDK 11: Add String.repeat()\"\n\nThis reverts commit d1da3ae0aa3ddde0b129364b5e1c6073f7bdb7b7.\n\nReason for revert: breakage in b/203790937\nBug: 203790937\nBug: 202962059\nTest: treehugger\n\nChange-Id: I07b6fbfe79a599abd9aa98a1dcab918a74d4b816\n"
    },
    {
      "commit": "58ebded1817e4d95a3006c3274f2fb589207748c",
      "tree": "5722d3542518a7b48129fcd510e171ac0425c32b",
      "parents": [
        "ce131feb7c60ffdf28c315c5d67f9cac33a077ce"
      ],
      "author": {
        "name": "Santiago Aboy Solanes",
        "email": "solanes@google.com",
        "time": "Tue Oct 26 17:54:26 2021 +0100"
      },
      "committer": {
        "name": "Santiago Aboy Solanes",
        "email": "solanes@google.com",
        "time": "Wed Oct 27 09:12:43 2021 +0000"
      },
      "message": "Fix test 581-rtp\n\nIt was missing `checker-` on its name so it wasn\u0027t using the checker.\nI verified that this is the only test missing checker- from its name\nwith `grep -rnw ./test/ -e \"CHECK-START\" | grep -v -e \"checker-\"`.\n\nAlso, I updated the test so that it passes the checker.\n\nChange-Id: Ic097a4e32ce2d215cbe995aac511e518007109e6\n"
    },
    {
      "commit": "ce131feb7c60ffdf28c315c5d67f9cac33a077ce",
      "tree": "c0d95161dc6ba2ed5cad0fc5cc4c131c3eed15d0",
      "parents": [
        "9c924e89e5f52da9faadd1e4e60c73eaed6bc9d1"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 26 20:03:35 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Oct 26 22:56:55 2021 +0000"
      },
      "message": "Revert \"Change hotness counting.\"\n\nThis reverts commit c86869ab894c05e3181e7d15eb1893fa8a3fcd47.\n\nReason for revert: App startup performance regression.\n\nBug: 203810169\nChange-Id: Ie816969fffd7740fcdfa330aeb645399f5351865\n"
    },
    {
      "commit": "9c924e89e5f52da9faadd1e4e60c73eaed6bc9d1",
      "tree": "8ffdc7f0c144cb392b50144a9ae9cb4ac4d3cca7",
      "parents": [
        "d690f8ae8f8e2675bc52089a83ac18c749f8e6d2"
      ],
      "author": {
        "name": "Brad Stenning",
        "email": "stenning@google.com",
        "time": "Mon Oct 11 19:09:00 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 26 17:36:32 2021 +0000"
      },
      "message": "Add support to place shared libraries after the dex path\n\nThis allows for a shared library to overriden by content in the dex path\n\nBug: 179429740\n\nTest: m test-art-host-gtest-art_runtime_tests32\n\nChange-Id: I5f69c7bf32b7bd389eff8bdbb21616ba89ed9e87\n"
    },
    {
      "commit": "d690f8ae8f8e2675bc52089a83ac18c749f8e6d2",
      "tree": "dac10b65d901cad87d6dbb7b48453f6da214a76f",
      "parents": [
        "e91a954ee350cbc0b311f342c90697191e1ae495"
      ],
      "author": {
        "name": "Santiago Aboy Solanes",
        "email": "solanes@google.com",
        "time": "Fri Oct 01 09:26:56 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 26 13:51:31 2021 +0000"
      },
      "message": "Inline across dex files for bootclaspath\u0027s methods\n\nWe can relax a bit the restriction for not inlining across dexfiles when\nwe are AoT compiling and we need an environment. There\u0027s an added new\nrestriction related to BSS entries. We could potentially inline across\ndex files for those cases too but are left to be solved in follow-up\nCLs.\n\nBug: 154012332\nTest: ART tests\nChange-Id: I5122b26c79b3e30d2643c0ccc05d595a0047953e\n"
    },
    {
      "commit": "e91a954ee350cbc0b311f342c90697191e1ae495",
      "tree": "a0bd4cc9e71f7fb79c2b25cae42e6336b2c9e340",
      "parents": [
        "fd846c5c2e9bc63b250c2bce271c2d6b8905f79d"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Mon Oct 25 16:23:27 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 26 11:30:14 2021 +0000"
      },
      "message": "Revert^2 \"ART: Redundant AND operation removal optimization\"\n\nRe-enables the original CL plus fixes a bug in\nInstructionSimplifierVisitor::VisitTypeConversion, where\nthere was no check for non-constant input for the And.\n\nThis reverts commit 050686452146e1f5d31aed560c682d992c376fed.\n\nTest: compile duckduckgo.apk.\nTest: 458-checker-instruct-simplification\nTest: test_art_target, test_art_host.\n\nChange-Id: Iecf13f492fb1d1769726d187093e455216f2c2c6\n"
    },
    {
      "commit": "fd846c5c2e9bc63b250c2bce271c2d6b8905f79d",
      "tree": "a0bd1a1c2fcdc58a4acc0531b0d6e79ce5d65313",
      "parents": [
        "0a746a7a7e2a57679adf2830a9c62f569bff9513"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 19 07:54:13 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 25 16:30:24 2021 +0000"
      },
      "message": "Remove all support for Brooks read barrier.\n\nTest: m\nBug: 177048505\nChange-Id: Ifb16927455b98996c61f0b6370bae9a114bf8018\n"
    },
    {
      "commit": "0a746a7a7e2a57679adf2830a9c62f569bff9513",
      "tree": "631f77b6692c7381a37957368f79c05fe7f5af85",
      "parents": [
        "394a082fc9268f7af97ed2e0e9fed4e459508e92"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Oct 21 19:23:31 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 25 15:51:59 2021 +0000"
      },
      "message": "Extend --installclean to delete out/target/common/obj/JAVA_LIBRARIES.\n\nTo catch missing target issues faster on build servers that build\nincrementally.\n\nTest: art/tools/buildbot-build.sh --installclean\nBug: 203776358\nChange-Id: I9f20c1189f94b4f1d5c215bc55b1decd7c5418b7\n"
    },
    {
      "commit": "394a082fc9268f7af97ed2e0e9fed4e459508e92",
      "tree": "32655526dc4d9d52d2a23f0f2307ae7753075148",
      "parents": [
        "0bc369b6a7c6d380876574f5b1f7fe3aa78839fb"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 25 10:31:15 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 25 13:16:39 2021 +0000"
      },
      "message": "Change `BitTableBase\u003c\u003e::num_rows_` to `uint32_t`.\n\nFor 64-bit targets, changing the member from `size_t` to\n`uint32_t` reduces `sizeof(CodeInfo)` from 376 to 336 and\nkeeps the `Thread::CreateInternalStackTrace()` from reaching\nthe `-Wframe-larger-than\u003d` limit enforced with `-Werror`.\n\nTest: m\nChange-Id: Ic42192355d224ca6afc3927506606a00ee084e19\n"
    },
    {
      "commit": "0bc369b6a7c6d380876574f5b1f7fe3aa78839fb",
      "tree": "48f72027cec74ed27032c71b7806bbaef9d31597",
      "parents": [
        "050686452146e1f5d31aed560c682d992c376fed"
      ],
      "author": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Wed Oct 20 14:07:44 2021 +0000"
      },
      "committer": {
        "name": "Mythri Alle",
        "email": "mythria@google.com",
        "time": "Mon Oct 25 12:08:22 2021 +0000"
      },
      "message": "Update run-test script to pass --Xjitthreshold:0 for jvmti tests\n\nTo provide better test coverage for jvmti + jit, lower the\njit threshold to 0 so we jit on the first use of the function.\n\nTest: art/testrunner.py\nChange-Id: Ida0edfccd3ae3f4990f6e863f1db00c0a210803b\n"
    },
    {
      "commit": "050686452146e1f5d31aed560c682d992c376fed",
      "tree": "951ffcdd0c82be6fe976ca06852dbcde84058754",
      "parents": [
        "884c147e93aab632ca13d2f0ea28110e8f8752a7"
      ],
      "author": {
        "name": "Joe Shih",
        "email": "joeshih@google.com",
        "time": "Mon Oct 25 04:58:23 2021 +0000"
      },
      "committer": {
        "name": "Joe Shih",
        "email": "joeshih@google.com",
        "time": "Mon Oct 25 08:11:22 2021 +0000"
      },
      "message": "Revert \"ART: Redundant AND operation removal optimization\"\n\nThis reverts commit c498a1de3de1b36baebfd7b69b0af7fb4947d58e.\n\nDroidMonitor-triggered revert due to breakage https://android-build.googleplex.com/builds/tests/view?invocationId\u003dI97700009991646450\u0026testResultId\u003dTR34427775909599300\u0026tab\u003dresults, bug b/203783068.\n\nBug: 203783068\nChange-Id: Ia7adec8217839b2b20c5409b9c87d3f920d798c2\n"
    },
    {
      "commit": "884c147e93aab632ca13d2f0ea28110e8f8752a7",
      "tree": "922f83b43624efeec01cd970b89fd0e0d30e1cb8",
      "parents": [
        "3ff922309ac7d96f572c57152216cd564f775bf3"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Oct 21 17:36:25 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Oct 21 20:55:06 2021 +0100"
      },
      "message": "Put conscrypt and core-icu4j back into the build targets again.\n\nPartially reverts https://r.android.com/1854516 - these targets are\nnecessary for Vogar after all (but \"m installclean\" doesn\u0027t clean\nenough to verify that).\n\nTest: lunch armv8-eng\n      rm -rf out/target/common \u0026\u0026 \\\n      art/tools/buildbot-build.sh \u0026\u0026 \\\n      art/tools/buildbot-teardown-device.sh \u0026\u0026 \\\n      art/tools/buildbot-cleanup-device.sh \u0026\u0026 \\\n      art/tools/buildbot-setup-device.sh \u0026\u0026 \\\n      art/tools/buildbot-sync.sh \u0026\u0026 \\\n      art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nBug: 203776358\nBug: 202521005\nChange-Id: I73ce52d86992a8582b16822dbfa75c7e258d2de2\n"
    },
    {
      "commit": "3ff922309ac7d96f572c57152216cd564f775bf3",
      "tree": "6165382ee2a277620d895f13b4a71ebcc9fb8c39",
      "parents": [
        "c498a1de3de1b36baebfd7b69b0af7fb4947d58e"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Oct 21 13:49:29 2021 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Oct 21 13:51:19 2021 +0000"
      },
      "message": "Revert \"Revert^4 \"Use cpplint.py from repohooks\"\"\n\nThis reverts commit 0a12631fd5364d5908d59ea476bea075019ebecd.\n\nReason for revert: breaks on git_sc-dev-plus-aosp\nBug: 200914293\nBug: 203764182\n\nChange-Id: I66c00e1c77ea339182d3b457dbf18afd0c70dfe8\n"
    },
    {
      "commit": "c498a1de3de1b36baebfd7b69b0af7fb4947d58e",
      "tree": "9f34ab6d331ac438b43c2f4c1a01965a4ba11877",
      "parents": [
        "0a12631fd5364d5908d59ea476bea075019ebecd"
      ],
      "author": {
        "name": "Aditya Deshpande",
        "email": "aditya.deshpande@linaro.org",
        "time": "Wed May 19 17:29:00 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 21 12:37:09 2021 +0000"
      },
      "message": "ART: Redundant AND operation removal optimization\n\nIn the following code:\n\n    b[i + length] \u003d (byte) ((value \u0026 0xff00) \u003e\u003e 8);\n\nThe AND operation is redundant because the lowest 8 bits will be\nremoved by the 8 bits right shift.\n\nThis optimization covers cases where a subsequent SHR and\nType Conversion (from Int and Short --\u003e Byte make an AND redundant.\nIn such cases, the AND operation is removed. Patch also includes tests.\nThis patch covers only signed types.\nUnsigned types will be supported in a future patch.\n\nThis optimization brings 3.3% perf increase on FFTBench workload.\n\nTest: ./scripts/tests/test_art_target.sh --single-test\\\n458-checker-instruct-simplification\n\nCan also use test_art_host.sh with same option as above.\n\nAuthor: Aditya Deshpande.\nCommitter: Artem Serov.\n\nChange-Id: I50b87576a3f998100feefc0e5df65b7b343d87e6\n"
    },
    {
      "commit": "0a12631fd5364d5908d59ea476bea075019ebecd",
      "tree": "4272a2d9b29e42fcf422f83db9726b2d2dc44507",
      "parents": [
        "970183997b6dd09ea5e21984095dec9ec44c9618"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Oct 19 08:23:42 2021 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Oct 21 12:20:53 2021 +0000"
      },
      "message": "Revert^4 \"Use cpplint.py from repohooks\"\n\nThis reverts commit dc26639f11ef2a97bc9aa9d9f4a8b8cbf9791481.\n\nReason for revert: repohooks now in sync across branches\n                   (thanks to tavila@).\nBug: 200914293\nTest: Treehugger\nTest: m cpplint-art\n\nChange-Id: I55cf52db799e7d99dde488ff0bfbc7b3dc158a59\n"
    },
    {
      "commit": "970183997b6dd09ea5e21984095dec9ec44c9618",
      "tree": "58010470b38561043ed137724553d49286bb85c2",
      "parents": [
        "c86869ab894c05e3181e7d15eb1893fa8a3fcd47"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Aug 26 14:16:48 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 21 12:09:45 2021 +0000"
      },
      "message": "Convert default-build script to python\n\nThis is a minimal mechanical 1:1 translation.\nAny further clean ups are left to future CLs.\n\nTest: test.py --host\nChange-Id: I34e8827b9bb0db05bd0f6c47e4a3cdaead17e192\n"
    },
    {
      "commit": "c86869ab894c05e3181e7d15eb1893fa8a3fcd47",
      "tree": "a0a000eea11bddba4c822d4e30e06456c12ccaa4",
      "parents": [
        "d1da3ae0aa3ddde0b129364b5e1c6073f7bdb7b7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 01 12:15:08 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 20 17:32:57 2021 +0000"
      },
      "message": "Change hotness counting.\n\nDecrement instead of increment to:\n- Simplify nterp\n- Support better future optimizations on memory savings.\n\nAlso clean up Jit::AddSamples which is now only used for the C++\ninterpreter.\n\nTest: test.py\nChange-Id: I2edcee3affc3e5205e253fc7824ccdc862565931\n"
    },
    {
      "commit": "d1da3ae0aa3ddde0b129364b5e1c6073f7bdb7b7",
      "tree": "a55c36452f8f6b28c40f6c72c435dd788b29b5dc",
      "parents": [
        "91a16c9d16178428fdbf405fb62fc953e9a28fa3"
      ],
      "author": {
        "name": "Nikita Iashchenko",
        "email": "nikitai@google.com",
        "time": "Mon Oct 18 16:44:11 2021 +0100"
      },
      "committer": {
        "name": "Nikita Iashchenko",
        "email": "nikitai@google.com",
        "time": "Wed Oct 20 11:20:50 2021 +0000"
      },
      "message": "OpenJDK 11: Add String.repeat()\n\nAdd native implementation for java.lang.String#repeat().\n\nThis implementation is 4.7-40.9 times faster (depending on how large\nresult string is) than naive StringBuilder implementation.\n\n| Test             | Java, ns   | ART, ns    |  Gain |\n|------------------+------------+------------+-------|\n| len:1  reps:1m   | 15,553,793 | 379,730    | 40.96 |\n| len:13 reps:10   | 724        | 154        |   4.7 |\n| len:13 reps:100k | 7,099,111  | 553,559 ns | 12.82 |\n\nBug: 202962059\nTest: atest CtsLibcoreOjTestCases:test.java.lang.String.StringRepeat\nTest: atest LibcoreBenchmarkTests:libcore.benchmark.StringTest\nChange-Id: I6535bb9201c14c455f0b13988e034919049e1222\n"
    },
    {
      "commit": "91a16c9d16178428fdbf405fb62fc953e9a28fa3",
      "tree": "1cca0645120b06811da05e779eb545367cc4270a",
      "parents": [
        "8c63ce27d4d3e87f535769976e9b9185fa372b9b"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Oct 19 14:00:00 2021 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Wed Oct 20 10:29:29 2021 +0000"
      },
      "message": "Remove artApex parameter from ApexBundleFactory\n\nSince coverage support was added to bootclasspath_fragment it is no\nlonger necessary to treat ART APEXes differently to other APEXes.\n\nBug: 177892522\nTest: m droid\n      m EMMA_INSTRUMENT\u003dtrue EMMA_INSTRUMENT_FRAMEWORK\u003dtrue\nChange-Id: I11d964b642f8db0a28d0406be66908a454b837c6\n"
    },
    {
      "commit": "8c63ce27d4d3e87f535769976e9b9185fa372b9b",
      "tree": "aa6967108b075529dc102eb76f150f506ef96013",
      "parents": [
        "327cfcf2dfe281de4ac8178da69e1e562881870d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 19 17:14:04 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 20 08:00:43 2021 +0000"
      },
      "message": "Allow PROT_EXEC on the zygote mappings when falling back to ashmem\n\nBecause we now protect the mappings before creating the executable one,\nwe need to also allow PROT_EXEC on an ashmem region.\n\nTest: manually change code to use ashmem, build, see that JIT is\ncreated.\nBug: 202999239\n\nChange-Id: I9f2944c45f4ff607c7e341552c82138bfe13cca4\n"
    },
    {
      "commit": "327cfcf2dfe281de4ac8178da69e1e562881870d",
      "tree": "7655b166c3b46d38077ef84f02234e3a122eb403",
      "parents": [
        "685d0ef479966811ec103340ef9696f056649285"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 12 14:13:25 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 20 07:59:43 2021 +0000"
      },
      "message": "Use the .dm file at runtime for verification.\n\nBug: 112284845\nTest: 674-HelloWorld-Dm\nChange-Id: Icd07f86cfb2b5428186a4c086f042890eaad249b\n"
    },
    {
      "commit": "685d0ef479966811ec103340ef9696f056649285",
      "tree": "6dca21066f5a786768b6dc7599cd73b72c147096",
      "parents": [
        "2ca0900e98d826644960eefeb8a21c84850c9e04"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Oct 18 18:10:47 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Oct 19 17:47:17 2021 +0000"
      },
      "message": "Temporarily disable 304-method-tracing\n\nBug: 203253172\nTest: Treehugger\nChange-Id: I979d8917d12559764e28b2b54eb82988d2b4e2d4\n"
    },
    {
      "commit": "2ca0900e98d826644960eefeb8a21c84850c9e04",
      "tree": "ba8a25622f6bee25817be41880ea01c345d9a2b1",
      "parents": [
        "44101a388089b4e23b284e1794eb475938a2f7ed"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 19 16:19:34 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 19 16:23:58 2021 +0000"
      },
      "message": "Revert \"JNI: Remove `JniMethodFast{Start,End}()`.\"\n\nThis reverts commit 64d6e187f19ed670429652020561887e6b220216.\n\nReason for revert: Breaks no-image JIT run tests (flaky).\n\nBug: 172332525\nChange-Id: I7813d89283eff0f6266318d3fb02d1257471798d\n"
    },
    {
      "commit": "44101a388089b4e23b284e1794eb475938a2f7ed",
      "tree": "39b5f845a31da5fb949a0801c62c152065dc163f",
      "parents": [
        "64d6e187f19ed670429652020561887e6b220216"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 19 15:04:57 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 19 15:07:01 2021 +0100"
      },
      "message": "More gcstress / debug timeout expectations.\n\nTo get the bot back green.\n\nTest: run-libcore-tests\nChange-Id: I88bc345803c07c2f0fc20c0504074c55d048a566\n"
    },
    {
      "commit": "64d6e187f19ed670429652020561887e6b220216",
      "tree": "0b7d39fd7d0a155786d84f23364313a7f63542a7",
      "parents": [
        "b37da9d4ffbc5ab42c41fcd60dc0dac6357ea13b"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 14 09:32:01 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 19 13:25:55 2021 +0000"
      },
      "message": "JNI: Remove `JniMethodFast{Start,End}()`.\n\nInline suspend check from `GoToRunnableFast()` to JNI stubs.\nThe only remaining code in `JniMethodFast{Start,End}()` is a\ndebug mode check that the method is @FastNative, so remove\nthe call altogether as we prefer better performance over the\ndebug mode check. Replace `JniMethodFastEndWithReference()`\nwith a simple `JniDecodeReferenceResult()`.\n\nGolem results for art-opt-cc (higher is better):\nlinux-ia32                     before after\nNativeDowncallStaticFast       149.00 226.77 (+52.20%)\nNativeDowncallStaticFast6      107.39 140.29 (+30.63%)\nNativeDowncallStaticFastRefs6  104.50 130.54 (+24.92%)\nNativeDowncallVirtualFast      147.28 207.09 (+40.61%)\nNativeDowncallVirtualFast6     106.39 136.93 (+28.70%)\nNativeDowncallVirtualFastRefs6 104.50 130.54 (+24.92%)\nlinux-x64                      before after\nNativeDowncallStaticFast       133.10 173.50 (+30.35%)\nNativeDowncallStaticFast6      109.12 135.73 (+24.39%)\nNativeDowncallStaticFastRefs6  105.29 127.18 (+20.79%)\nNativeDowncallVirtualFast      127.74 167.66 (+31.25%)\nNativeDowncallVirtualFast6     106.39 128.12 (+20.42%)\nNativeDowncallVirtualFastRefs6 105.29 127.18 (+20.79%)\nlinux-armv7                    before after\nNativeDowncallStaticFast       18.058 21.622 (+19.74%)\nNativeDowncallStaticFast6      14.903 17.057 (+14.45%)\nNativeDowncallStaticFastRefs6  13.006 14.620 (+12.41%)\nNativeDowncallVirtualFast      17.848 21.027 (+17.81%)\nNativeDowncallVirtualFast6     15.196 17.439 (+14.76%)\nNativeDowncallVirtualFastRefs6 12.897 14.764 (+14.48%)\nlinux-armv8                    before after\nNativeDowncallStaticFast       19.183 23.610 (+23.08%)\nNativeDowncallStaticFast6      16.161 19.183 (+18.71%)\nNativeDowncallStaticFastRefs6  13.235 15.041 (+13.64%)\nNativeDowncallVirtualFast      17.839 20.741 (+16.26%)\nNativeDowncallVirtualFast6     15.500 18.272 (+17.88%)\nNativeDowncallVirtualFastRefs6 12.481 14.209 (+13.84%)\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nBug: 172332525\nChange-Id: I680aaeaa0c1a55796271328180e9d4ed7d89c0b8\n"
    },
    {
      "commit": "b37da9d4ffbc5ab42c41fcd60dc0dac6357ea13b",
      "tree": "4c8d89ca2385d2ab69058ced1c97de15a8030a48",
      "parents": [
        "c8c2bb6784d70cdc6e3a75a24fc9d09970a574e4"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon Oct 18 09:40:51 2021 -0700"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon Oct 18 11:00:33 2021 -0700"
      },
      "message": "Add timeout flags to the cmdline usage\n\nBug: 202830861\nTest: m\nChange-Id: I37a63f6c0d2ebf71db544de5fb8b59d5c8314f05\n"
    },
    {
      "commit": "c8c2bb6784d70cdc6e3a75a24fc9d09970a574e4",
      "tree": "d9ee85a117d1a4459a52340dc460f001916e099b",
      "parents": [
        "bf19869f9a3e49eed27c30cd86344d72fc0366cd"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 15 09:33:09 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 18 09:20:11 2021 +0000"
      },
      "message": "JNI compiler: Rewrite exception polling.\n\nMake the slow path explicit in the JNI compiler. Fix the\nCFI data for the exceptional path of synchronized methods.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nBug: 172332525\nChange-Id: If64965eef15c063e36b78dd8bb6cba5af34ab4fa\n"
    },
    {
      "commit": "bf19869f9a3e49eed27c30cd86344d72fc0366cd",
      "tree": "569f1af745b9c847f3aefc6519773fdaf6f7cfb6",
      "parents": [
        "954b995c8cf3d3809d534353396225c9a29e6a42"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 11 14:31:55 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 18 08:02:51 2021 +0000"
      },
      "message": "Tolerate not having access or failing to read apex-info-list.xml.\n\nBe more lenient when we fail to read the file, and start executing. The\nconsequences are likely being unable to load .odex files.\n\nTest: test.py\nChange-Id: Ibe9d55db1a086ff966d60ca7c1a4ce0383accd32\n"
    },
    {
      "commit": "954b995c8cf3d3809d534353396225c9a29e6a42",
      "tree": "76dc28a60906efe9a418a3a1f881fd5d87be9653",
      "parents": [
        "4d4f3be595732e290d6973f9f83139d02fc1ab26"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri Oct 08 16:38:45 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Oct 16 02:15:11 2021 +0000"
      },
      "message": "odrefresh: Don\u0027t pass JARs in APEX as FD to dex2oat\n\nBug: 197285531\nTest: atest ComposHostTestCases\nTest: atest odsign_e2e_tests\nChange-Id: If315826031f5e0ef9c9a000bc375e7dfd16dbd6d\n"
    },
    {
      "commit": "4d4f3be595732e290d6973f9f83139d02fc1ab26",
      "tree": "ded80005637d49f079fe3116bee41c28dca3d5c1",
      "parents": [
        "884fe766bfcdff1a2a6423caef18bb2681d33283"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Sep 15 00:04:12 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 15 19:21:41 2021 +0000"
      },
      "message": "Expose dmtracedump and dexdump to the sdk-repo builds\n\nThe sdk-repo build (build-tools and platform-tools) is transitioning\nfrom Make to Soong, so this isn\u0027t a change in effective visibility, just\nrecording what was already used.\n\nBug: 187222815\nChange-Id: I1704dbc40cc5501dff316f8e34cda47cf4ae52e0\n"
    },
    {
      "commit": "884fe766bfcdff1a2a6423caef18bb2681d33283",
      "tree": "b9f9619fda7142b9cc38850f1eeab33466fe7236",
      "parents": [
        "d4d21bf191f2afcd4d6479d60a4d3ab7a19af839"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Wed Oct 13 13:55:41 2021 -0700"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri Oct 15 17:26:51 2021 +0000"
      },
      "message": "Set timeout by command line flag\n\nInstead of deriving from --use-compilation-os implicitly, the client\nshould specify its desired timeout by command line flags.\n\nBug: 202830861\nTest: atest ComposHostTestCases\nChange-Id: Id47f80475639d952d055b4658ff89d153f0f4048\n"
    },
    {
      "commit": "d4d21bf191f2afcd4d6479d60a4d3ab7a19af839",
      "tree": "904e32af33a858babf5b05bfee05683e5866069c",
      "parents": [
        "740e1f972ab1401d0afa98f365d9f5fe70a8a895"
      ],
      "author": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Wed Oct 13 11:07:25 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 15 15:03:44 2021 +0000"
      },
      "message": "Allow odrefresh to write elsewhere than dalvik-cache\n\nFor CompOS we want to be able to generate artifacts in different\nsubdirectories, e.g. /data/misc/apexdata/com.android.art/pending\nrather than /data/misc/apexdata/com.android.art/dalvik-cache.\n\nAdd a command line flag to enable this.\n\nBug: 200020887\nTest: atest art_standalone_libartbase_tests\nTest: manual: odrefresh --dalvik-cache\u003dfoo --force-compile\nChange-Id: Id10c9bcc8cb9f810c48727abc1858f5b16b360d2\n"
    },
    {
      "commit": "740e1f972ab1401d0afa98f365d9f5fe70a8a895",
      "tree": "1e189dd88dddd48e817784a4af6559f5e60e3810",
      "parents": [
        "41e56c2282bad545608d6d9711f9e4a3683354b8"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Fri Oct 15 12:11:37 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 15 14:52:15 2021 +0000"
      },
      "message": "arm, arm64: Unpoison byte array view class reference before comparison.\n\nVarhandle class reference needs to be unpoisoned before it gets compared\nto the byte array view class reference from the boot image returned by\n`LoadClassRootForIntrinsic`. This was missing in the CLs that added\nvarhandle intrinsics for byte array views and resulted in byte array\nviews handled by the slow path if poisoning is enabled:\n  - https://r.android.com/1535201 (arm64)\n  - https://r.android.com/1555075 (arm)\n\nBug: 71781600\n\nTest: Ran benchmarks provided by https://r.android.com/1420959 with\n  ART_HEAP_POISONING\u003dtrue before and after the change, observed improved\n  run time for byte array views (on sargo, arm64):\n\n                                before  after\n  -------------------------------------------\n  GetByteArrayViewInt             9.86  0.074\n  SetByteArrayViewInt            10.07  0.074\n  GetByteArrayViewBigEndianInt   10.40  0.077\n  SetByteArrayViewBigEndianInt   10.07  0.077\n\nTest: art/test.py --target -r -t 712-varhandle-invocations\nTest: same with ART_HEAP_POISONING\u003dtrue\nChange-Id: Ie776b44759df642d3227a64b824caa0b21ffd5e6\n"
    },
    {
      "commit": "41e56c2282bad545608d6d9711f9e4a3683354b8",
      "tree": "655bebbf3ceb3f07cc80d7e31da4ce6c2b615598",
      "parents": [
        "ebf496f245dec69af6abfa115aa0e5872aee93d1"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Oct 14 00:28:12 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Oct 15 13:44:58 2021 +0000"
      },
      "message": "Disable the new run test modules when not building ART from sources.\n\nTest: m droid SOONG_CONFIG_art_module_source_build\u003dfalse\n  in a platform tree\nTest: art/build/build-art-module.sh\n  on master-art\nTest: lunch armv8-eng \u0026\u0026 art/tools/buildbot-build.sh\n  on master-art\nBug: 172480615\nChange-Id: Ic342e427d4911e2afce7d5bdf032cc9fdb5a3eb0\n"
    },
    {
      "commit": "ebf496f245dec69af6abfa115aa0e5872aee93d1",
      "tree": "4d90ed1ea13dc04c364e1f75de45098cc1b2333b",
      "parents": [
        "0d0d91a2acd58696366021982279bacc6638b123"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Mon Oct 11 05:04:34 2021 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Oct 15 13:03:49 2021 +0000"
      },
      "message": "Deprecate --updatable-bcp-packages-fd and --updatable-bcp-packages-file\n\nThese flags are no longer needed and therefore deprecated. They are\nstill kept for compatibility, but they do not take any effect now.\n\nBug: 200241946\nTest: Presubmits\n\nChange-Id: I17b937e382cd3fe6eb20f2a686a638492c93d58e\n"
    },
    {
      "commit": "0d0d91a2acd58696366021982279bacc6638b123",
      "tree": "594ef419aacd6d34e18f2812f31f0bd8b8956231",
      "parents": [
        "fcef77b426e74d726bf87bba6574b097ba5b97aa"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 14 14:40:09 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 15 13:00:35 2021 +0000"
      },
      "message": "Remove unneeded checks.\n\nTest: test.py\nBug: 28313047\nChange-Id: I94d19c235c69361bf9611eb6fcf5d1d31bfcdf17\n"
    },
    {
      "commit": "fcef77b426e74d726bf87bba6574b097ba5b97aa",
      "tree": "c56b3b2099bb6b6c1047f33701a5952eb051bf55",
      "parents": [
        "099acf8eee6dfa50a0958fe3dc95e7a3ae6c6664"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Wed Oct 13 11:17:36 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 15 13:00:13 2021 +0000"
      },
      "message": "Add debug printing for MTE signal codes.\n\nKernel headers on the host may not be up to date, so we are hardcoding\nthe actual values. These are kernel ABI constants, they are not going to\nchange.\n\nBug: 201492782\nTest: none needed\nChange-Id: I0348679427fbe595cdad63b7a08d8f97e8c096c3\n"
    },
    {
      "commit": "099acf8eee6dfa50a0958fe3dc95e7a3ae6c6664",
      "tree": "631fe574f7bf00fed12176a08d3326ed6c10a382",
      "parents": [
        "0651ccc57b9aa178304546f8913cb66ceafd55bb"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Oct 15 05:40:06 2021 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Fri Oct 15 05:42:15 2021 +0000"
      },
      "message": "Temporarily disable 727-checker-unresolved-class.\n\n727-checker-unresolved-class is a checker test to test the access check\nfor unresolved classes. It uses --updatable-bcp-packages-file to make\nclasses unresolved. However, --updatable-bcp-packages-file is being\ndeprecated, so this test cannot work until it is written in another way.\n\nBug: 200241946\nTest: art/test/run-test\nChange-Id: I5cbddb2bdc0774f2a5ce10a5ffd9ce7de88f8517\n"
    },
    {
      "commit": "0651ccc57b9aa178304546f8913cb66ceafd55bb",
      "tree": "9ee66272c7b9c9aec1b5ed182823c25d05d4a7a5",
      "parents": [
        "c29b49ee7dc9a9ee2526e45423232d36faf3468d"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Wed Oct 13 11:08:22 2021 -0700"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Thu Oct 14 22:18:14 2021 +0000"
      },
      "message": "Ignore PC/SP contents in SEGV_MTEAERR faults.\n\nSEGV_MTEAERR (Async MTE fault) is delivered at an arbitrary point\nafter the actual fault. Register contents, including PC and SP, are\nunrelated to the fault and can only confuse ART signal handlers.\n\nTo be more precise, SEGV_MTEAERR is delivered at the nearest kernel\nentry after the invalid memory access. It is normally a system call, but\ncan also be a random process scheduling event.\n\nI could not reproduce the problem locally, but it is apparently\npossible to crash with \"Check failed: found_virtual Didn\u0027t find oat\nmethod index for virtual method:\" if the garbage PC value passes all the\nsanity checks in FaultManager::HandleFault, with a stack trace like\nthis:\n  art::FindOatMethodFor\n  art::ArtMethod::GetOatQuickMethodHeader\n  art::FaultManager::IsInGeneratedCode\n  art::FaultManager::HandleFault\n\nBug: 201492782\nTest: none\n\nChange-Id: I028067f1350574ea002f3e98a94babe2b10c2559\n"
    },
    {
      "commit": "c29b49ee7dc9a9ee2526e45423232d36faf3468d",
      "tree": "31e32bcc91a7679fe825790894bc01fa4a377f98",
      "parents": [
        "ae96c828a4ca0a688203e3b46abfb28a7b79600d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 13 15:37:55 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 14 20:53:17 2021 +0000"
      },
      "message": "Do not run background verification on unknown class loaders.\n\nThere can be races between the Java threads and the background\nverification thread when verifying classes. The Java threads are allowed\nto load classes while verifying, but the background verification thread\ncannot. Which means we can be in situations where the background\nverification sees, for example, a concrete j.l.Integer but an unresolved\nj.l.Number.\n\nTest: 833-background-verification\nBug: 202463489\nChange-Id: I5aadb9d5ee79003b3d8200571cecd0819e13bd64\n"
    },
    {
      "commit": "ae96c828a4ca0a688203e3b46abfb28a7b79600d",
      "tree": "e1f7595f16083c5dcc58f155c7588a80be3d194c",
      "parents": [
        "8ed59b840fe8140258e3612eff267b76280f1b8b"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Oct 13 13:02:26 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 14 12:16:10 2021 +0000"
      },
      "message": "Fix `--secondary-class-loader-context` for run-tests.\n\nChange the default context to flat PathClassLoader if the\n`--secondary` flag is passed and keep the old PCL hierarchy\notherwise. Explicitly pass that flag in tests where this\ndefault is not correct.\n\nTest: testrunner.py --host --optimizing\nTest: Make the \"ClassLoaderContext classpath size mismatch\"\n      warning FATAL and retest; only 172-app-image-twice\n      fails and the failure is expected for that test.\nBug: 166088871\nChange-Id: Ic50f206741e6d1f98e08b5db2adc2d7b067266a7\n"
    },
    {
      "commit": "8ed59b840fe8140258e3612eff267b76280f1b8b",
      "tree": "1af3b3ddf0fdcc437777b2bdf01cbac38f2eca3c",
      "parents": [
        "af9aa668c6cdd2ca4e946c8bab87e9e64d0f37d6"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Oct 12 20:48:03 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Oct 13 16:43:40 2021 +0100"
      },
      "message": "Remove the core-icu4j implementation library from run tests\ncompilation.\n\nIt\u0027s a separate APEX module so ART tests should not bypass its public\nAPI.\n\nAlso clean up conscrypt build target from the buildbot-build.sh script\n- it should not be a build time dependency. (The runtime dependencies\non both modules are satisfied through their APEX modules.)\n\nThis relands https://r.android.com/1828052 with some more work.\n\nTest: lunch armv8-eng\n      rm -rf out/target/common \u0026\u0026 \\\n      art/tools/buildbot-build.sh \u0026\u0026 \\\n      art/tools/buildbot-teardown-device.sh \u0026\u0026 \\\n      art/tools/buildbot-cleanup-device.sh \u0026\u0026 \\\n      art/tools/buildbot-setup-device.sh \u0026\u0026 \\\n      art/tools/buildbot-sync.sh \u0026\u0026 \\\n      art/test/testrunner/testrunner.py --target --64 \u0026\u0026 \\\n      art/tools/run-libjdwp-tests.sh --mode\u003ddevice --variant\u003dX64 \u0026\u0026 \\\n      art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nTest: art/test/testrunner/testrunner.py --target --64 -t 683\n  on device chroot - check that it fails without\n  https://r.android.com/1853031 and works with it.\nTest: rm -rf out/target/common \u0026\u0026 \\\n      art/tools/buildbot-build.sh --host \u0026\u0026 \\\n      art/test/testrunner/testrunner.py --host \u0026\u0026 \\\n      art/tools/run-libjdwp-tests.sh --mode\u003dhost \u0026\u0026 \\\n      art/tools/run-libcore-tests.sh --mode\u003dhost\n  (10 tests already failing in libcore - no regression)\nBug: 202711962\nBug: 192006406\nChange-Id: Id9bb81fa5ff3893c364f31cc90aa50424fad9adc\n"
    },
    {
      "commit": "af9aa668c6cdd2ca4e946c8bab87e9e64d0f37d6",
      "tree": "0e0bb3c97815acf5709b21724c3e4809ba210881",
      "parents": [
        "4eb4f23df479be7029eb34ad8a8b99c7f28261c2"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Oct 07 15:34:46 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Oct 13 15:42:13 2021 +0000"
      },
      "message": "Add option to skip building the run tests in buildbot-build.sh.\n\nWith the run test compilation moved to the build step\n(https://r.android.com/1794531), it takes a lot longer. Add an option\nto skip it, in case the caller doesn\u0027t intend to run the run tests.\n\nThis unearthed a few missing dependencies in system/lib(64) when\nbuilding gtests only. One reason it\u0027s necessary to add them here is\nthat prebuilts don\u0027t retain the source shared_lib dependencies.\n\nTest: art/tools/buildbot-build.sh --installclean \\\n        --skip-run-tests-build \u0026\u0026 \\\n      art/tools/buildbot-teardown-device.sh \u0026\u0026 \\\n      art/tools/buildbot-cleanup-device.sh \u0026\u0026 \\\n      art/tools/buildbot-setup-device.sh \u0026\u0026 \\\n      art/tools/buildbot-sync.sh \u0026\u0026 \\\n      art/tools/run-gtests.sh \u0026\u0026 \\\n      m TARGET_BUILD_UNBUNDLED\u003dtrue test-art-host-gtest\n  on master-art\nTest: art/tools/buildbot-build.sh --installclean \u0026\u0026 \\\n      art/tools/buildbot-teardown-device.sh \u0026\u0026 \\\n      art/tools/buildbot-cleanup-device.sh \u0026\u0026 \\\n      art/tools/buildbot-setup-device.sh \u0026\u0026 \\\n      art/tools/buildbot-sync.sh \u0026\u0026 \\\n      art/test/testrunner/testrunner.py --target --64 --optimizing \u0026\u0026 \\\n      art/test/testrunner/testrunner.py --host --64 --optimizing\n  on master-art\nBug: 147814778\nChange-Id: Iff15ccdc1113d19289176447fc42a40a3005bfd1\n"
    },
    {
      "commit": "4eb4f23df479be7029eb34ad8a8b99c7f28261c2",
      "tree": "c381f02ba45bd36326064a0c56cbe8ede2aad731",
      "parents": [
        "7873913daa55048cb8381c4ff46bebc7d14ad551"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 13 10:50:03 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 13 13:28:14 2021 +0000"
      },
      "message": "Fix script when passing expectation files.\n\nThey should be passed individually, instead of \u0027:\u0027 separated.\n\nTest: run-libjdwp-tests.sh\nChange-Id: I330597dafc7f7ad0fbcfb7e455725a9cfce610d4\n"
    },
    {
      "commit": "7873913daa55048cb8381c4ff46bebc7d14ad551",
      "tree": "d8f70310523acc86f5da655f368bdac9872c63cf",
      "parents": [
        "3384ccc55c77807fc3d5a507a68865e3a5fecf93"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Oct 11 23:03:02 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Oct 13 10:24:36 2021 +0000"
      },
      "message": "Change test to use a public API method to avoid an implementation\ndependency on core-icu4j.\n\njava.lang.reflect.Modifier.classModifiers() is a public static getter\nreturning a simple static field, just like\nandroid.icu.util.TimeZone.getDefaultTimeZoneType, and we dex2oat with\nthe implementation dex jars for core-oj where it\u0027s implemented.\n\nTest: art/test/testrunner/testrunner.py --target --64 -t 683\nTest: art/test/testrunner/testrunner.py --host -t 683\nBug: 202711962\nChange-Id: If099f0e8ec9c0057e2b7852e6823e65ecab2112c\n"
    },
    {
      "commit": "3384ccc55c77807fc3d5a507a68865e3a5fecf93",
      "tree": "a35183bcb37a5e811f699c05d6dc61856b4973c4",
      "parents": [
        "d816eab05365106bd2ee83767a280b9abb231b2a"
      ],
      "author": {
        "name": "Santiago Aboy Solanes",
        "email": "solanes@google.com",
        "time": "Tue Oct 12 16:04:49 2021 +0000"
      },
      "committer": {
        "name": "Santiago Aboy Solanes",
        "email": "solanes@google.com",
        "time": "Wed Oct 13 08:59:59 2021 +0000"
      },
      "message": "Update chroot instructions regarding linkerconfig error\n\nTests: N/A\nChange-Id: I33ba7b07a229c143d5330c0ac45c37f395ea595e\n"
    },
    {
      "commit": "d816eab05365106bd2ee83767a280b9abb231b2a",
      "tree": "bb233750a7bf3015eb5fa40c379fab35b1454e70",
      "parents": [
        "aaa220e7cb929e8fc54b3ae89c98cb9019c33d1a"
      ],
      "author": {
        "name": "Fujiang Wang",
        "email": "wangfujiang@oppo.corp-partner.google.com",
        "time": "Fri Oct 01 07:32:13 2021 +0000"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Tue Oct 12 23:41:03 2021 +0000"
      },
      "message": "Fix calculation of bytes allocated since last gc\n\nThe GC freebytes calculation does not include LargeObject freebytes.\n\nChange-Id: I9cee7b1c8a0a15c13056c9c5bd00160671bee339\n"
    },
    {
      "commit": "aaa220e7cb929e8fc54b3ae89c98cb9019c33d1a",
      "tree": "ef96fc448fc41a197e3f1c336d0a53b7c9353606",
      "parents": [
        "8d12ed67ba98bd0dce58bcebddf89cdb10fe3106"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon Oct 11 13:39:45 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 12 16:55:12 2021 +0000"
      },
      "message": "Don\u0027t store dex2oat-cmdline in oat of BCP ext\n\n...and system server\n\ndex2oat-cmdline is only used for debugging purpose. We may technically\nexclude only for CompOS if needed, but unless there is demand, also\nexlucde in the regular odrefresh case for simplicity.\n\nBug: 192690283\nTest: atest ComposHostTestCases\nTest: odrefresh --force-compile; oatdump boot-framework.oat\n      # no longer seeing dex2oat-cmdline\nChange-Id: Id144a5ad3bb37f548a11f429b62eb81917981035\n"
    },
    {
      "commit": "8d12ed67ba98bd0dce58bcebddf89cdb10fe3106",
      "tree": "c6f1a427139772aafd541dfacc48070a0e730db5",
      "parents": [
        "381e66a768c5100c5efc085d0e74d2e37fe6b7a4"
      ],
      "author": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Tue Oct 12 16:17:37 2021 +0000"
      },
      "committer": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Tue Oct 12 16:17:37 2021 +0000"
      },
      "message": "Revert \"Implement another OdrDexopt to use new CompOS API\"\n\nThis reverts commit 381e66a768c5100c5efc085d0e74d2e37fe6b7a4.\n\nReason for revert: Build break\n\nBug: 202843353\nChange-Id: I48299a90f17d9ad8ff9260ebc618ac915b24e6a7\n"
    },
    {
      "commit": "381e66a768c5100c5efc085d0e74d2e37fe6b7a4",
      "tree": "7762353c8990e448917cfa4f336adaca6ad6b740",
      "parents": [
        "dc744e552a489c0b9e01112a065e5c4f56077006"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri Oct 01 12:05:35 2021 -0700"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue Oct 12 15:48:35 2021 +0000"
      },
      "message": "Implement another OdrDexopt to use new CompOS API\n\nThe old OdrDexoptCompilationOS (now renamed) is still active (currently\ncontrolled by a constant in the code) until everything is in place.\n\nThe new OdrDexoptCompilationOS put DexoptBcpExtArgs or\nDexoptSystemServerArgs into ExtendableParcelable with TaskType.\nThe ExtendableParcelable and TaskType makes it easy for ART to add other\ntask types to run in CompOS.\n\nBug: 193668901\nTest: atest ComposHostTestCases (with other changes)\n\nChange-Id: I7fc76942e38c50c12f5819e5114e48911f77d08b\n"
    },
    {
      "commit": "dc744e552a489c0b9e01112a065e5c4f56077006",
      "tree": "c6f1a427139772aafd541dfacc48070a0e730db5",
      "parents": [
        "79b74d715a7c9960afe758f36c383dd9978ed25d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Oct 11 11:25:29 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 12 14:56:57 2021 +0000"
      },
      "message": "Revert \"Disable kEnableOnDemandDexDequicken.\"\n\nThis reverts commit a32d2d8b5ac9bda0aa1a7d12790b7ed3e5750b4a.\n\nReason for revert: Breaks test\n`com.android.car.VmsHalServiceSubscriptionEventTest` (again)\n\nBug: 202707926\nChange-Id: Id71c497231047b7136f39deb5a6fe9dacc6cd414\n"
    },
    {
      "commit": "79b74d715a7c9960afe758f36c383dd9978ed25d",
      "tree": "68753fe0d63f612f501d70bd9ee0124ffe361c55",
      "parents": [
        "1558048c31b90ff5b3baf611d4dd70c1a003adfb"
      ],
      "author": {
        "name": "Santiago Aboy Solanes",
        "email": "solanes@google.com",
        "time": "Tue Oct 12 13:17:46 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 12 14:21:33 2021 +0000"
      },
      "message": "Do not release the driver_ if we are dumping stats\n\nWhen using the --dump-stats option, we get those stats logged when the optimizing compiler gets destroyed. If we release the driver_, the destructor will never be called.\n\nChange-Id: I04c4c808627f0eb96d5f5f67ff123c678287c8a5\n"
    },
    {
      "commit": "1558048c31b90ff5b3baf611d4dd70c1a003adfb",
      "tree": "0d4eb1b5ac1464edc1e679f065bd5b9e432a8567",
      "parents": [
        "5cbb0a9658e4c3a906139df2d1cf5b929d989faf"
      ],
      "author": {
        "name": "Santiago Aboy Solanes",
        "email": "solanes@google.com",
        "time": "Tue Oct 12 13:11:29 2021 +0100"
      },
      "committer": {
        "name": "Santiago Aboy Solanes",
        "email": "solanes@google.com",
        "time": "Tue Oct 12 13:55:05 2021 +0000"
      },
      "message": "Add stats for last step inlining of invokes\n\nAdd kInlinedLastInvoke(VirtualOrInterface) which counts the amount of invokes we inlined on the parent-most method. This is useful to know since it is the invoke that matters the most. The other inlinings are about recursive inlinings but those will not get into the graph if the last invoke fails to be inlined.\n\nChange-Id: I4d293864033c950477f50149fd0318c501dcfb6f\n"
    },
    {
      "commit": "5cbb0a9658e4c3a906139df2d1cf5b929d989faf",
      "tree": "34adba5a4e1cdc438a3006b0ab7f389becf85ad5",
      "parents": [
        "a8d998fa443b125d8a0461f59070b6d54c386f78"
      ],
      "author": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Tue Oct 12 11:33:59 2021 +0000"
      },
      "committer": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Tue Oct 12 12:43:17 2021 +0100"
      },
      "message": "Revert^2 \"x86_64: Implement VarHandle.get{,Acquire,Opaque,Volatile} for arrays.\"\n\nThis reverts commit eb270e4cf873acc6097da5647931cbfd67879864.\n\nReason for revert: relanding original patch. The fix is to use signed\n  comparison when checking out of bounds access (JAE instead of JGE).\n\nBug: 71781600\nBug: 202734548\nChange-Id: I4f5e170d293ccd675218b34f906b471de3c19a23\nTest: atest CtsLibcoreJsr166TestCases:jsr166.AtomicReferenceArrayTest#testIndexing\n"
    },
    {
      "commit": "a8d998fa443b125d8a0461f59070b6d54c386f78",
      "tree": "f743f004871666ec7873e43fb9dc1092440dfd81",
      "parents": [
        "bc6944b88b5eba676b2385ce41d75feb18b09da6"
      ],
      "author": {
        "name": "Yang Tianping",
        "email": "yangtianping@oppo.com",
        "time": "Sat Oct 09 15:05:49 2021 +0800"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 12 09:30:45 2021 +0000"
      },
      "message": "fix the redundant dependencies validation in fast verify\n\nWhen in isolated compilation, the fast verify will validate dependencies\nof all dex files when compile every single dex file, which lead to fast\nverify not so \"fast\" when do isolated compilation.\n\nBug: 202563833\nChange-Id: Ib62fe2a87ae973017ba4934511c5d2223fb1ad83\n"
    },
    {
      "commit": "bc6944b88b5eba676b2385ce41d75feb18b09da6",
      "tree": "f411e87c063d5ab688790208a0111a1d313c8c8a",
      "parents": [
        "9104d670935067b42675ec95e60c79fde90a5679"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 11 13:54:23 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 12 08:01:47 2021 +0000"
      },
      "message": "Remove useless test.\n\nWe know at this point either adjusted_type is unresolved, or it\u0027s\nresolved and res_method_class must also be resolved to pass the\nIsAssignableFrom check.\n\nTest: test.py\nBug: 28313047\nChange-Id: Ic5c17ac1110f5c766d6a362c8f1e4d97c9ea0655\n"
    },
    {
      "commit": "9104d670935067b42675ec95e60c79fde90a5679",
      "tree": "066ed337b62cae2c91cd4c6899f240afab41761f",
      "parents": [
        "85d7e930dff5d56c36268fa706d900a8f885faa0"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Sep 30 22:07:12 2021 +0000"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Oct 11 23:15:00 2021 +0000"
      },
      "message": "Revert^2 \"Add a test for new sun.misc.Cleaner timeout\"\n\nRe-land the test.\n\nPS1 is identical to 1832814.\n\nPS2 lengthens a timeout to match the original intent.\n\nPS3 Fixes some spacing issues pointed out by Orion.\n\nBug: 197500807\nTest: art/test/run-test --host 2041-bad-cleaner\n\nChange-Id: I44e67ba62e9c31ea10485510ee66ecd51f081e22\n"
    },
    {
      "commit": "85d7e930dff5d56c36268fa706d900a8f885faa0",
      "tree": "3843d4fcd4f3b464bc0378f4246d554d40086140",
      "parents": [
        "633ac3cb89bcd23f982b7c8cb6b3667c1051a935"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Oct 07 15:26:52 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 11 20:17:02 2021 +0000"
      },
      "message": "Remove stale order-only dependency from build-art-*-tests targets.\n\nTEST_ART_RUN_TEST_ORDERONLY_DEPENDENCIES isn\u0027t set anymore. It was\nremoved in https://r.android.com/370727.\n\n#codehealth\n\nTest: art/tools/buildbot-build.sh\nChange-Id: I34bf11bb451010e330cfad092c7b7d867dd055d6\n"
    },
    {
      "commit": "633ac3cb89bcd23f982b7c8cb6b3667c1051a935",
      "tree": "30d19b63541e014334e4b1bcf515abccfd60db92",
      "parents": [
        "eb270e4cf873acc6097da5647931cbfd67879864"
      ],
      "author": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Wed Oct 06 14:00:29 2021 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 11 19:42:14 2021 +0000"
      },
      "message": "Adding Class.getDeclaredFields to unstarted runtime\n\nAs part of the update of java.util.concurrent to 11+28, it is\nneeded to have Class.getDeclaredFields() called from the\nunstarted runtime.\n\nTest: m\nBug: 188889082\nChange-Id: I0ad4629ba1f55165c6c4a14cad823735c9f8cd02\n"
    },
    {
      "commit": "eb270e4cf873acc6097da5647931cbfd67879864",
      "tree": "c673d7d32689642e594fd4ecb7d487ded4a5f730",
      "parents": [
        "3b87d854d1a6591b4a06052d74fef21527b56282"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Oct 11 18:23:03 2021 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Oct 11 18:56:17 2021 +0000"
      },
      "message": "Revert \"x86_64: Implement VarHandle.get{,Acquire,Opaque,Volatile} for arrays.\"\n\nThis reverts commit a3fe0452f6972218fce5aacd81ced3dc20ea482d.\n\nReason for revert: Likely candidate for b/202734548\n\nBug: 71781600\nBug: 202734548\nChange-Id: I43b69bc76180e6bb9d1bdcbf63ea5c3cab8c2cd7\n"
    },
    {
      "commit": "3b87d854d1a6591b4a06052d74fef21527b56282",
      "tree": "9b60a245173670f27e058d544f2da4f79d942927",
      "parents": [
        "a3fe0452f6972218fce5aacd81ced3dc20ea482d"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Oct 08 17:53:52 2021 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Oct 11 17:47:20 2021 +0000"
      },
      "message": "Use java_genrule for art run test data\n\nThe art run test data rules used genrule, but depended on a java_library\nin tool_files.  For a host-only build like the aosp-build-tools branch\nthe java_library is disabled due to no device architecture enabled, but\nthe genrules were still enabled.  Use a java_genrule so they will\nbe disabled when no device architecture is enabled.\n\nBug: 202547639\nTest: prebuilts/build-tools/build-prebuilts.sh\nChange-Id: I1aa256106b525552a534547bd990d825abf71c86\n"
    },
    {
      "commit": "a3fe0452f6972218fce5aacd81ced3dc20ea482d",
      "tree": "bd6b748011c13a25fa31755f8ec27b170cb09999",
      "parents": [
        "492649b718eed0c5834766b8a49ccbe9d86cf49a"
      ],
      "author": {
        "name": "Ulya Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Mon Sep 06 16:53:56 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 11 15:11:52 2021 +0000"
      },
      "message": "x86_64: Implement VarHandle.get{,Acquire,Opaque,Volatile} for arrays.\n\nBenchmarks improvements (using benchmarks provided by\nhttps://android-review.googlesource.com/1420959):\n\n  benchmark                              before   after\n  -----------------------------------------------------\n  VarHandleGetArrayElementInt            2.725    0.002\n  VarHandleGetArrayElementString         2.778    0.003\n\nBug: 71781600\nTest: lunch aosp_cf_x86_64_phone-userdebug \\\n  \u0026\u0026 art/test.py --host -r -t 712-varhandle-invocations --64\nTest: Repeat with ART_USE_READ_BARRIER\u003dfalse.\nTest: Repeat with ART_HEAP_POISONING\u003dtrue.\nChange-Id: Ie9c6cef4ef3cf459cbfebbc17d1f449c489ec357\n"
    },
    {
      "commit": "492649b718eed0c5834766b8a49ccbe9d86cf49a",
      "tree": "2b315da249ff97180569b9ea66b9bc1e395ffafe",
      "parents": [
        "2fc400421d6c1c16142338a70b091676730822e4"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 11 14:21:22 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 11 15:04:32 2021 +0000"
      },
      "message": "Clean up #includes in `hidden_api.h`.\n\nMove one template function `ShouldDenyAccessToMember()` to\nthe .cc file and reduce the amount of code included by .h.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: Ic969902cd0fa3b57e11eb9d8a8413f4f71a6d28b\n"
    },
    {
      "commit": "2fc400421d6c1c16142338a70b091676730822e4",
      "tree": "4327108eeb6e846389a42d996980e08ff10bd4c5",
      "parents": [
        "d95a1f2ecf322d21ae98bfb7affe0070ddb9bc08"
      ],
      "author": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Mon Oct 11 11:21:06 2021 +0100"
      },
      "committer": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Mon Oct 11 14:25:16 2021 +0000"
      },
      "message": "Use cid\u003d0 to mean not specified\n\nWe\u0027re using -1 (VMADDR_CID_ANY) as a special value to mean \"use\ncomposd rather than directly connecting to a specific CID\". So we\ncan\u0027t also use it to mean \"no CID was specified, run dex2oat\ndirectly\".\n\nThe value 0 is never valid as a CID, since it\u0027s reserved as\nVMADDR_CID_HYPERVISOR.\n\nEventually the CID parameter can just go away, and we\u0027ll have a\nboolean for use composd in a VM / normal no VM.\n\nBug: 202696349\nTest: atest ComposTestCase\nTest: adb shell apex/com.android.compos/bin/composd_cmd\nTest: Manually verify compilation runs in the VM.\nChange-Id: I11a4814481576a62294701ed2bb2f75808a4ef71\n"
    },
    {
      "commit": "d95a1f2ecf322d21ae98bfb7affe0070ddb9bc08",
      "tree": "8fc5fe8370ec051289a34cde7bf3dc5fc7a1ca7f",
      "parents": [
        "507a729e51588f7fa4eac7579d54ce7c96804349"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 23 16:32:52 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 11 11:56:59 2021 +0000"
      },
      "message": "Inline IRT frame push/pop into JNI stubs.\n\nGolem results for art-opt-cc (higher is better):\nlinux-ia32                       before after\nNativeDowncallStaticNormal       25.704 26.839 (+4.414%)\nNativeDowncallStaticNormal6      23.857 25.086 (+5.152%)\nNativeDowncallStaticNormalRefs6  23.704 25.248 (+6.513%)\nNativeDowncallVirtualNormal      25.578 27.000 (+5.560%)\nNativeDowncallVirtualNormal6     23.704 24.925 (+5.153%)\nNativeDowncallVirtualNormalRefs6 23.704 25.074 (+5.870%)\nNativeDowncallStaticFast         100.65 149.13 (+48.17%)\nNativeDowncallStaticFast6        78.304 107.39 (+37.71%)\nNativeDowncallStaticFastRefs6    76.962 104.45 (+35.71%)\nNativeDowncallVirtualFast        100.40 147.28 (+46.69%)\nNativeDowncallVirtualFast6       79.302 106.34 (+34.10%)\nNativeDowncallVirtualFastRef26   76.617 103.29 (+34.82%)\nlinux-x64                        before after\nNativeDowncallStaticNormal       26.083 26.987 (+3.465%)\nNativeDowncallStaticNormal6      24.606 25.411 (+3.271%)\nNativeDowncallStaticNormalRefs6  24.150 25.086 (+3.877%)\nNativeDowncallVirtualNormal      25.743 26.812 (+4.156%)\nNativeDowncallVirtualNormal6     24.294 25.248 (+3.927%)\nNativeDowncallVirtualNormalRefs6 23.857 25.086 (+5.152%)\nNativeDowncallStaticFast         109.95 133.10 (+21.06%)\nNativeDowncallStaticFast6        90.274 109.12 (+20.87%)\nNativeDowncallStaticFastRefs6    87.282 105.29 (+20.63%)\nNativeDowncallVirtualFast        104.00 127.55 (+22.65%)\nNativeDowncallVirtualFast6       88.191 106.73 (+21.02%)\nNativeDowncallVirtualFastRef26   85.530 102.09 (+19.36%)\nlinux-armv7                      before after\nNativeDowncallStaticNormal       6.1148 6.3694 (+4.316%)\nNativeDowncallStaticNormal6      5.6845 5.9026 (+3.837%)\nNativeDowncallStaticNormalRefs6  5.4054 5.6022 (+3.641%)\nNativeDowncallVirtualNormal      5.4726 5.7088 (+4.316%)\nNativeDowncallVirtualNormal6     5.1789 5.3685 (+3.660%)\nNativeDowncallVirtualNormalRefs6 4.9140 5.0902 (+3.586%)\nNativeDowncallStaticFast         16.683 18.058 (+8.239%)\nNativeDowncallStaticFast6        13.951 14.896 (+6.770%)\nNativeDowncallStaticFastRefs6    12.279 13.006 (+5.919%)\nNativeDowncallVirtualFast        16.161 17.848 (+10.44%)\nNativeDowncallVirtualFast6       14.085 15.196 (+7.892%)\nNativeDowncallVirtualFastRef26   12.089 12.897 (+6.683%)\nlinux-armv8                      before after\nNativeDowncallStaticNormal       6.0663 6.4229 (+5.879%)\nNativeDowncallStaticNormal6      5.7252 6.0437 (+5.563%)\nNativeDowncallStaticNormalRefs6  5.3114 5.5814 (+5.082%)\nNativeDowncallVirtualNormal      5.8795 6.2651 (+6.558%)\nNativeDowncallVirtualNormal6     5.6232 5.9494 (+5.801%)\nNativeDowncallVirtualNormalRefs6 5.1862 5.4429 (+4.948%)\nNativeDowncallStaticFast         17.638 19.183 (+8.760%)\nNativeDowncallStaticFast6        14.903 16.161 (+8.438%)\nNativeDowncallStaticFastRefs6    12.475 13.235 (+6.094%)\nNativeDowncallVirtualFast        15.826 17.848 (+12.78%)\nNativeDowncallVirtualFast6       14.064 15.504 (+10.24%)\nNativeDowncallVirtualFastRef26   11.628 12.475 (+7.285%)\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nBug: 172332525\nChange-Id: I5ecfa7a661f08ab63dd2a75d666e1c1b9121935f\n"
    },
    {
      "commit": "507a729e51588f7fa4eac7579d54ce7c96804349",
      "tree": "27f5b255f4dc7dc788688832c145494c63e5b79b",
      "parents": [
        "4a4696ad2a1403139828e5e6703479f320f06fee"
      ],
      "author": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Mon Sep 27 17:27:26 2021 +0100"
      },
      "committer": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Mon Oct 11 08:06:15 2021 +0000"
      },
      "message": "Increase max execution time for a VM\n\nWe already increased the per-process time, now additionally increase\nthe overall time. This is only needed for nested virtualization, but\nas before we currently do it for any VM. This is being fairly cautious\n- I\u0027ve only seen the timeout exceeded once, but we don\u0027t want flaky\ntests.\n\nI also modified the logic for deciding the timeout for any individual\nprocess. I think the modification reflects the original intent, but I\nmay have completely misunderstood.\n\nBug: 200924405\nTest: atest art_standalone_odrefresh_tests\nTest: atest ComposTestCase\nChange-Id: I2e1843431f709345e9b51f51be76a6c3aed2e179\n"
    },
    {
      "commit": "4a4696ad2a1403139828e5e6703479f320f06fee",
      "tree": "e40c40ba014e4ba411f2345cd4b898a91717e298",
      "parents": [
        "b0cc5923bf0b0315fa181542c765bfa8b8083cad"
      ],
      "author": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Sat Oct 09 07:14:40 2021 +0000"
      },
      "committer": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Mon Oct 11 07:30:36 2021 +0000"
      },
      "message": "Fixing Unsafe.getObjectAcquire code generation\n\nThis fixes the intrinsic code generation for\nUnsafe.getObjectAcquire which was introduced in\nIacd39ea1750c92a828d99241bff6b609acadb025\n\nTest: art/test/testrunner/testrunner.py -t 2235-JdkUnsafeTest\nBug: 188889082\nBug: 190791083\nChange-Id: I456126ce5f8355aa944b7ba6e3be9405531d3778\n"
    },
    {
      "commit": "b0cc5923bf0b0315fa181542c765bfa8b8083cad",
      "tree": "e603f603debced1bdff10f3aed90d8d33456fe20",
      "parents": [
        "73c4f79b14492a930903f15553969a4e7ecbefed"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Sep 28 15:27:55 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 11 07:22:31 2021 +0000"
      },
      "message": "With mainline, classes in the boot classpath that hard fail can happen.\n\nSpotted while reviewing code on verifier.\n\nThis is to not abort the runtime for a scenario like:\nNew code in T, not executed in S (but still shipping on S through a\nmainline update), relies on the fact a class that was present in S\nmoved from \u0027final\u0027 to \u0027non-final\u0027. When verifying on S, this could\nlead to hard failures. But given the class is not supposed to execute,\nthat\u0027s OK.\n\nTest: device booting\nChange-Id: I68512858e9085dd45c4f9b77ac3f9dea788d3fa4\n"
    },
    {
      "commit": "73c4f79b14492a930903f15553969a4e7ecbefed",
      "tree": "72ca8780c8d2584d344d1c01a0205a706f262338",
      "parents": [
        "507cf9052116f8052c45a08586a356d00daba563"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri Oct 01 18:13:52 2021 +0000"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri Oct 08 17:38:21 2021 +0000"
      },
      "message": "Reland^2: Create an abstraction for dexopt tasks\n\nCause of the revert / broken test:\n\nbuildbot-build.sh does not build libbinder_ndk.so.  Add the missing\ndependency to copy to the chroot.\n\nOriginal message:\n\nInstead of letting odrefresh building dex2oat cmdline arguments, hide\nthe specifics of cmdline flags behind an API abstraction. The API\ndefines the only necessary parameters for the actual dexopt task (e.g.\ncompiling BCP extension, system server) to proceed. The introduced API\nis private within ART.\n\nlibdexopt.so is created to contain the API and implementation. It is put\nunder art/artd/ in the sense that the future ART services can reuse and\nevolve the code.\n\nThis change should not have any effective change to the compilation\nresults.  Given the large size of the change, the dex2oat cmdline is\npurposely ordered in the same way as before.  The compiled artifacts\nshould not change at all.\n\nAlso, art_odrefresh_test is no longer built for the \"second\" ABI. This\nis to make it consistent to odrefresh, so that we won\u0027t need to test\nunused variation and build \"second\" for the dependencies.\n\nBug: 193668901\nTest: 1. Revert this change, run `odrefresh --force-compile`, capture\n\t the checksum of all output files.\n      2. Apply this change, repeat the same step.\n      3. Saw all the file hashes remain the same (except for\n\t cache-info.xml where the timestamp changed).\nTest: atest ComposHostTestCases\nTest: atest odsign_e2e_tests\nTest: atest art_standalone_odrefresh_tests\nTest: art/build/apex/runtests.sh\nTest: lunch full-eng; m; art/build/apex/runtests.sh\nTest: with master-art, art/tools/run-gtests.sh \\\n        /apex/com.android.art/bin/art/arm64/art_odrefresh_tests\nTest: TH\n\nChange-Id: I3bf805fba925c197ec10508a67f0a16e74d64c62\n"
    },
    {
      "commit": "507cf9052116f8052c45a08586a356d00daba563",
      "tree": "8723a6303ec4dcdc39480bf84fa35e2de0e7e77a",
      "parents": [
        "a32d2d8b5ac9bda0aa1a7d12790b7ed3e5750b4a"
      ],
      "author": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Wed Oct 06 12:04:56 2021 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 08 17:34:31 2021 +0000"
      },
      "message": "Adding get/put and compare-and-set methods to Unsafe\n\nAs they are needed for the update of java.util.concurrent to\n11+28, the native implementation and intrinsics for the following methods have\nbeen added to jdk.internal.misc.Unsafe:\n\tjdk.internal.misc.Unsafe.compareAndSetLong\n\tjdk.internal.misc.Unsafe.compareAndSetObject\n\tjdk.internal.misc.Unsafe.getLongAcquire\n\tjdk.internal.misc.Unsafe.putLongRelease\n\tjdk.internal.misc.Unsafe.getObjectAcquire\n\tjdk.internal.misc.Unsafe.putObjectRelease\n\nTest: m\nTest: art/test/testrunner/testrunner.py -t 2235-JdkUnsafeTest\nBug: 188889082\nBug: 190791083\nChange-Id: Iacd39ea1750c92a828d99241bff6b609acadb025\n"
    },
    {
      "commit": "a32d2d8b5ac9bda0aa1a7d12790b7ed3e5750b4a",
      "tree": "ed9a190b711fc96719ace3561eeadc70e65e4f5d",
      "parents": [
        "4d29efcc54c2d98e70e2221b66c04f309d64c398"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 08 13:43:59 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 08 13:43:59 2021 +0100"
      },
      "message": "Disable kEnableOnDemandDexDequicken.\n\nUnable to reproduce the error that triggered the revert of:\nhttps://android-review.googlesource.com/c/platform/art/+/1842432\n\nThis CL is a safer version of the complete removal. I\u0027ll follow-up with\nthe complete removal if the bots stay green.\n\nTest: test.py\nTest: atest FrameworksNetIntegrationTests\nBug: 196414062\nChange-Id: If6d96aaed06288b89dff41a85900cb24dc47adb5\n"
    },
    {
      "commit": "4d29efcc54c2d98e70e2221b66c04f309d64c398",
      "tree": "80ac62421103eecfaa8760b7f8507801b97cd2b1",
      "parents": [
        "f9e82e5cae2c31f439ecbc505c2dcac81356405e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 07 15:15:08 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 08 10:27:29 2021 +0000"
      },
      "message": "Remove unused fields in Thread.\n\nTest: test.py\nChange-Id: Iafc0be23eec86102844b127622be564f69c55eda\n"
    },
    {
      "commit": "f9e82e5cae2c31f439ecbc505c2dcac81356405e",
      "tree": "a0d93b3e813115bc1ba57a9b5194e3419bf39aa3",
      "parents": [
        "983c21762de318f0991a8fc2074c81438b1e4f17"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Oct 06 08:34:40 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 08 07:57:11 2021 +0000"
      },
      "message": "Loosen class status check after resolving.\n\nIf `ClassLinker::LinkClass()` creates a new `Class` object,\nit takes an `ObjectLock` on that object but releases that\nlock when it returns to the `ClassLinker::DefineClass()`.\nTherefore another thread can try and fail to verify the\nclass and mark it as resolved erroneous. The `CHECK()` that\nthe class is not resolved erroneous was therefore wrong\nand we remove that part.\n\nAlso dump the class status if the remaining `CHECK()` fails.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 202091046\nChange-Id: Ida9c0d45478fbae913fcaabcc237048d28a4dd3d\n"
    },
    {
      "commit": "983c21762de318f0991a8fc2074c81438b1e4f17",
      "tree": "cae4170c9856d4acaf1a84d4178bc8d6a3eace85",
      "parents": [
        "33df0e3e47adc053c34a0ad3f4bb78ee3dd40e7f",
        "7f4f4eb3b28aeede536cf0ba2852dab6b7ece113"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Thu Oct 07 23:48:13 2021 +0000"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Thu Oct 07 23:48:13 2021 +0000"
      },
      "message": "Merge \"Merge Android 12\""
    },
    {
      "commit": "33df0e3e47adc053c34a0ad3f4bb78ee3dd40e7f",
      "tree": "401957f10b116a082e7c4ed58bb86bff3c4e2615",
      "parents": [
        "ce8198e1e826142a5dc032f22a60e2c41eaeff96"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Sep 30 14:36:32 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 07 12:10:32 2021 +0000"
      },
      "message": "Revert^4 \"Lazily allocate DexCache arrays.\"\n\nWe rarely need the DexCache for compiled code.\nDelay the allocation in hope we never need it.\nThis reduces DexCache memory usage by ~25% at startup.\n\nBug: b/181097963\nTest: test.py -b --host\nChange-Id: I1f654aeb538dfed013705a61b1955af1f6b94fe7\n"
    },
    {
      "commit": "ce8198e1e826142a5dc032f22a60e2c41eaeff96",
      "tree": "4423f80eaf2eaefa156535b7aa63a2ac7db55c94",
      "parents": [
        "4af07cd8efc146503e75cc85dfbbb8f10951be9f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 05 15:07:37 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 07 07:38:46 2021 +0000"
      },
      "message": "Pass which profile the method expects.\n\nWith the CL:\nhttps://android-review.googlesource.com/c/platform/art/+/1671710\n\nWe made the requirement that callers need to be explicit on whether\nthey\u0027re reading a boot image profile or not.\n\nUpdate CompileMethodsFromProfile to pass that information.\n\nTest: manually checking JIT zygote works as intended, will follow-up\n      on having continuous tests.\nChange-Id: I3c9d367e8ce69b7c0e3205be4c379208f88d3b3e\n"
    },
    {
      "commit": "7f4f4eb3b28aeede536cf0ba2852dab6b7ece113",
      "tree": "a55ceeacb0f0e9314e11fba46c5928027b22d807",
      "parents": [
        "4af07cd8efc146503e75cc85dfbbb8f10951be9f",
        "ea887d415700cfd9a406b022861ca846cd6af650"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Oct 06 22:51:42 2021 +0000"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Oct 06 22:51:42 2021 +0000"
      },
      "message": "Merge Android 12\n\nBug: 202323961\nMerged-In: Ia94ba56e0bbafb3e027c719b8a24a40a737a2d9f\nChange-Id: I519541ff793fafd03018ff012fca0387e553e08f\n"
    },
    {
      "commit": "ea887d415700cfd9a406b022861ca846cd6af650",
      "tree": "a55ceeacb0f0e9314e11fba46c5928027b22d807",
      "parents": [
        "cedad4b625e1c95ee7ae113c1046e136223a7946",
        "4af07cd8efc146503e75cc85dfbbb8f10951be9f"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 06 17:39:18 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Oct 06 17:39:18 2021 +0000"
      },
      "message": "DexCache: Remove pre-resolved string dead code. am: 4af07cd8ef\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1846386\n\nChange-Id: Ia94ba56e0bbafb3e027c719b8a24a40a737a2d9f\n"
    },
    {
      "commit": "4af07cd8efc146503e75cc85dfbbb8f10951be9f",
      "tree": "76798ba7c6318e46de6ea440c86cdaf8b40d1654",
      "parents": [
        "271d57234ea8b2707a6cc15d8e3c9d7508f37c49"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 06 15:00:56 2021 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 06 17:22:16 2021 +0000"
      },
      "message": "DexCache: Remove pre-resolved string dead code.\n\nPre-resolved strings are no longer used,\nso remove some of the dead methods.\n\nTest: ./art/test.py -b -r --host --64\nChange-Id: I02974b1910a8b455f787f9a791fb06de2b3c229a\n"
    },
    {
      "commit": "cedad4b625e1c95ee7ae113c1046e136223a7946",
      "tree": "266b29614a8765a983e98b940f92d812b1faeaee",
      "parents": [
        "fe9aaf018ad0f16da8886f4e165972796f4d0919",
        "271d57234ea8b2707a6cc15d8e3c9d7508f37c49"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 06 15:33:54 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Oct 06 15:33:54 2021 +0000"
      },
      "message": "Run-test build: Split the main method into two. am: 271d57234e\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1846383\n\nChange-Id: Ic32a32e7a69357aa509c40ad5cac9eeea7b3b869\n"
    },
    {
      "commit": "271d57234ea8b2707a6cc15d8e3c9d7508f37c49",
      "tree": "d0e7283f46abc3b6c661d72fbc5a002f50ea97e1",
      "parents": [
        "2a4542d3755ba6f3ab5514a5b780241e29bd6785"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 06 13:40:20 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 06 15:18:15 2021 +0000"
      },
      "message": "Run-test build: Split the main method into two.\n\nCopy all files first (single-threaded) and then build all\ntests in the shard (multi-threaded).\n\nThis works around rare failure where bash is unable to run\na script that has been just written to disk. (I have not\nbeen able to track down the root cause - it might be due\nto intense I/O load due to the previous parallel file copies,\nit might be that the Python copy method does not close the\nfile descriptor fast enough in some cases based on GC,\nor it could be just generic linux issues - as suggested by\nthe fact that other people seemed to encounter the same issue\neven in other scenarios on Linux where Python is not involved).\n\nIn any case, this CL ensures that all the copies are single\nthreaded and that there is sufficient time between file copy\nand the bash execution, which should avoid the unknown issue.\n\nTest: Run \"m art-run-test-{host,target,jvm}-data\" in a loop.\nChange-Id: I7528bad2c69b651b363d986c118a1fea887c4347\n"
    },
    {
      "commit": "fe9aaf018ad0f16da8886f4e165972796f4d0919",
      "tree": "52cf4398ed18028244a29c182750fd1eb40c368d",
      "parents": [
        "a7f783e5c317ffc58f33f14021223cd8cd2ce5cc",
        "2a4542d3755ba6f3ab5514a5b780241e29bd6785"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Oct 06 10:40:05 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Oct 06 10:40:05 2021 +0000"
      },
      "message": "libprofile: Clear method bitmap padding bits. am: 2a4542d375\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1844915\n\nChange-Id: I501f698ce97c49639330013fdc6f8b29d877a393\n"
    },
    {
      "commit": "2a4542d3755ba6f3ab5514a5b780241e29bd6785",
      "tree": "b6ce3249e5b3936bf74408e58282dc091804f775",
      "parents": [
        "8c3ef13374181751784bdc0211f462316ee33ad6"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 04 09:57:48 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Oct 06 10:25:37 2021 +0000"
      },
      "message": "libprofile: Clear method bitmap padding bits.\n\nExplicitly clear padding bits instead of zero-initializing\nthe entire buffer.\n\nTest: atest com.android.cts.dexmetadata.InstallDexMetadataHostTest#testProfileSnapshotAfterInstall\nBug: 201627008\nChange-Id: I31655e053f405a8d2903fb7b2e8e7176f5344226\n"
    },
    {
      "commit": "a7f783e5c317ffc58f33f14021223cd8cd2ce5cc",
      "tree": "8bc91d34c4623a8b8a815785e8e2a6f26f695484",
      "parents": [
        "5cf026012185eb7aac664cff826d015ffb75c1f7",
        "8c3ef13374181751784bdc0211f462316ee33ad6"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue Oct 05 18:14:29 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Oct 05 18:14:29 2021 +0000"
      },
      "message": "Add ComposHostTestCases to art\u0027s mainline-presubmit am: 8c3ef13374\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1822334\n\nChange-Id: I695c7e447b152a56f640981bb573fde3723ef912\n"
    },
    {
      "commit": "5cf026012185eb7aac664cff826d015ffb75c1f7",
      "tree": "cf2f0b8dafc1de3ef1ef3b9eab63f7e09bfffa09",
      "parents": [
        "0e802db6f4d49f0928be3f62c265e6e014bc4523",
        "ceb51c92085554d065927251fdff4fc00457f113"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue Oct 05 18:14:25 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Oct 05 18:14:25 2021 +0000"
      },
      "message": "Add ComposHostTestCases to art\u0027s presubmit am: ceb51c9208\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1822333\n\nChange-Id: I87474d4d1a0a2e67f30b882e6b627327a2078c7b\n"
    },
    {
      "commit": "8c3ef13374181751784bdc0211f462316ee33ad6",
      "tree": "c36cb1b1ac0b85d5f4166a03d62f192bb8d10583",
      "parents": [
        "ceb51c92085554d065927251fdff4fc00457f113"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Wed Sep 08 11:49:56 2021 -0700"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue Oct 05 17:58:23 2021 +0000"
      },
      "message": "Add ComposHostTestCases to art\u0027s mainline-presubmit\n\nBug: 199301284\nTest: TH\n\nChange-Id: Id3abd794db2772bc619486d754ed68083aed7ec5\n"
    },
    {
      "commit": "ceb51c92085554d065927251fdff4fc00457f113",
      "tree": "7b67a7e2549207994bde923f023bd14affadfe64",
      "parents": [
        "6fbcc2915949d0680e6e9578a5836ee8dcbc467f"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Wed Sep 08 11:47:02 2021 -0700"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue Oct 05 17:58:23 2021 +0000"
      },
      "message": "Add ComposHostTestCases to art\u0027s presubmit\n\nBug: 199301284\nTest: TH\nChange-Id: I48ac0c969370e6da4f8b5c54fcb91921e298e692\n"
    },
    {
      "commit": "0e802db6f4d49f0928be3f62c265e6e014bc4523",
      "tree": "74a20849fa03993f2bfc0456207304c43a82a6c8",
      "parents": [
        "cbc0f7670754e28c45058f5737912912bde6f9d4",
        "6fbcc2915949d0680e6e9578a5836ee8dcbc467f"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Oct 05 13:24:28 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Oct 05 13:24:28 2021 +0000"
      },
      "message": "Change ClassLinker::dex_caches_ from list to unordered_map. am: 6fbcc29159\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1603475\n\nChange-Id: Ib933be35211869dbc5d668f9657ad0ee566fa165\n"
    },
    {
      "commit": "6fbcc2915949d0680e6e9578a5836ee8dcbc467f",
      "tree": "b5dfdf2ab21f693ca2d702345263bcefa9448291",
      "parents": [
        "0069ad7ddb159a8d368e0f6a289d0335238ae6c4"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Feb 23 01:05:32 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Oct 05 13:12:20 2021 +0000"
      },
      "message": "Change ClassLinker::dex_caches_ from list to unordered_map.\n\nMove the DexFile* pointer from struct field out to map key.\nThis makes it easy and fast to find DexCache from DexFile.\n\nAdd check that given DexFile* is registered only once.\n\nTest: test.py -b -r --host --64\nTest: generated images are identical as before\nChange-Id: I84a6d6cbf963af2408abe5bb5e4c99d0ca11df78\n"
    },
    {
      "commit": "cbc0f7670754e28c45058f5737912912bde6f9d4",
      "tree": "4b709ae73cc833d84e951fb6b3054cf6fc583efa",
      "parents": [
        "f33f1130e74a6dc45ae81219cd9c3e38a6927410",
        "0069ad7ddb159a8d368e0f6a289d0335238ae6c4"
      ],
      "author": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Tue Oct 05 12:38:22 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Oct 05 12:38:22 2021 +0000"
      },
      "message": "OpenJDK 11: Adding Unsafe new intrinsics for AtomicIntegerFieldUpdater am: 0069ad7ddb\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1837417\n\nChange-Id: I0bdfac1c89a59552c83bb5198f0e369500cecbcd\n"
    },
    {
      "commit": "0069ad7ddb159a8d368e0f6a289d0335238ae6c4",
      "tree": "02735717a696c0704d97526fcab0060d8d1ceae0",
      "parents": [
        "520c9b7649cdfcc12e1df414055c383335f54b69"
      ],
      "author": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Fri Sep 17 17:33:09 2021 +0000"
      },
      "committer": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Tue Oct 05 12:34:42 2021 +0000"
      },
      "message": "OpenJDK 11: Adding Unsafe new intrinsics for AtomicIntegerFieldUpdater\n\nAdding native implementation for:\njdk.internal.misc.Unsafe.compareAndSetInt\n\nAdding intrinsics for:\njdk.internal.misc.Unsafe.compareAndSetInt\njdk.internal.misc.Unsafe.getIntAcquire\njdk.internal.misc.Unsafe.putIntRelease\n\nTest: m\nTest: art/test/testrunner/testrunner.py -t 2235-JdkUnsafeTest\nBug: 188889082\nBug: 190791083\nChange-Id: Iba4a66d29ad27e269a7be0d5d5c8397755040784\n"
    },
    {
      "commit": "f33f1130e74a6dc45ae81219cd9c3e38a6927410",
      "tree": "d00574a311eab58bae1cfc2691d4f3112ad98810",
      "parents": [
        "14d0a3886c9ef1d428984fb8b0a257228ae068bb",
        "520c9b7649cdfcc12e1df414055c383335f54b69"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 05 12:03:30 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Oct 05 12:03:30 2021 +0000"
      },
      "message": "verifier: Clean up `RegisterLine::SetRegisterType*()`. am: 520c9b7649\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1844913\n\nChange-Id: Ie70f8905837e804765034b13fb04bee4d1093edb\n"
    }
  ],
  "next": "520c9b7649cdfcc12e1df414055c383335f54b69"
}
