)]}'
{
  "log": [
    {
      "commit": "4258f9e2f19016e04a71ec2b5349b707f8f47a18",
      "tree": "bd587ca13be99c9c8e1d2781719b75a887ca5897",
      "parents": [
        "4b9f86bd04a905e6ee6eaf5363b0967315136096"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Oct 13 12:10:59 2020 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 14 08:01:06 2020 +0000"
      },
      "message": "Only tag supported ART run-tests as part of `art-target-run-test`.\n\nAll ART (target) run-tests supported at the build-level have been\ntagged as part of the `art-target-run-test` TradeFed test suite;\nhowever, only a part of them are actually expected to suceed at run\ntime at the moment, meaning that many tests are currently failing on\nthe postsubmit configuration running tests tagged as\n`art-target-run-test` (currently running only on crosshatch devices).\n\nTo avoid this, use a different test configuration template for test\nexpected to succeed and for test expected to fail, and only have the\nformer test configuration template tag the test as part of the\n`art-target-run-test` test suite.\n\nTest: atest --test-mapping art:all\nTest: Rely on ATP post-submit testing\nBug: 152374989\nBug: 147812905\nChange-Id: I29ecc1d3021765cb5467f3a6f4e9d64afc4caead\n"
    },
    {
      "commit": "4b9f86bd04a905e6ee6eaf5363b0967315136096",
      "tree": "f3c15cd3ccefcc684541bb4bac0c889bff35420a",
      "parents": [
        "30864176620fbfc58f93ea58bfbacdd28f75b2c8"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Oct 13 16:37:19 2020 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 14 04:39:31 2020 +0000"
      },
      "message": "Cyclic-includes should be avoided\n\nA file including itself is generally not considered a good idea and\ncan confuse tools such as IWYU.\n\nChange-Id: I71b07fa1503588917ab62ea383833dacd53bf8f2\nTest: Treehugger\n"
    },
    {
      "commit": "30864176620fbfc58f93ea58bfbacdd28f75b2c8",
      "tree": "4fbf6dcc701ee4ae2de29f0a154653ac94f527f5",
      "parents": [
        "1a8d83b69dd6097e0d467a9ed0afb09c4025738d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Oct 13 15:36:46 2020 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Oct 13 17:46:47 2020 +0000"
      },
      "message": "Fix incorrect escape in Checker assertion in test 660-checker-simd-sad.\n\nChecker was seemingly fine with these when run with Python 2, but they\nare tripping it when run with Python 3.\n\nTest: art/test/testrunner/testrunner.py --host --64 --optimizing \\\n        -t 660-checker-simd-sad\nBug: 170308859\nChange-Id: I4e2c121008717d4b1aab59f8b4c3048a2cdc95c2\n"
    },
    {
      "commit": "1a8d83b69dd6097e0d467a9ed0afb09c4025738d",
      "tree": "ca925fd30efd35f42d33c65c01ec4c0b31698e4c",
      "parents": [
        "5c5ed3025f1a7cda51abe87319c42f5b002bf189"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Oct 12 15:43:23 2020 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Oct 13 14:36:22 2020 +0000"
      },
      "message": "Check existing_it in UpdateClass\n\nCheck that the iterator is valid instead of blindly dereferencing it.\n\nBug: 160074700\nTest: manual\nChange-Id: I444b3335f52251a24f47261b42296667bd668444\n"
    },
    {
      "commit": "5c5ed3025f1a7cda51abe87319c42f5b002bf189",
      "tree": "0962a9456d81350d37464c0a6a83415aa8ddffb0",
      "parents": [
        "11e6fead40e3db9be2924120961d8f81e3d83370"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 07 11:58:13 2020 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Oct 13 11:13:05 2020 +0000"
      },
      "message": "Move a few ART run-tests to the `presubmit` test group in `TEST_MAPPING`.\n\nMove 1% of ART run-tests from the `postsubmit` test group to the\n`presubmit` test group. This progressive rollout is to make sure\nintroducing ART run-tests to this test group won\u0027t disturb/break\nAndroid presubmits.\n\nThis partly reverts commit d9a7d0abcba766114d7b64311ea3aee4a66b2154.\n\nTest: atest --test-mapping art:presubmit\nTest: atest --test-mapping art:postsubmit\nBug: 152374989\nBug: 169310621\nChange-Id: I9c0388f26cb4fbce5f8c2e24c3d1cd256960880d\n"
    },
    {
      "commit": "11e6fead40e3db9be2924120961d8f81e3d83370",
      "tree": "100862080acb4d2559078c6b895c6859d5ef8b21",
      "parents": [
        "6667eef330b6ec0c0420f2fd6c49cbc96e5146de"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 12 09:28:30 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 13 08:20:25 2020 +0000"
      },
      "message": "Introduce a ensureJitBaselineCompiled for tests.\n\nTo fix the flakiness when relying on having baseline compiled code.\n\nTest: 638-checker-inline-cache-intrinsic\nBug: 169616148\nChange-Id: I21d114db29bb337f4eb1349b2b2b5901e71f41b3\n"
    },
    {
      "commit": "6667eef330b6ec0c0420f2fd6c49cbc96e5146de",
      "tree": "b170b60a03a50c138e39b07b9280d7a6a9aac369",
      "parents": [
        "4bb09001683e00a9d0d34f685f2ec60004c0c1ef"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 07 14:36:02 2020 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Oct 12 18:19:40 2020 +0000"
      },
      "message": "Add test-suite-tag for run-tests.\n\nThis will make it easier to identify the tests in GCL files.\n\nBug: 147812905\nChange-Id: I394cd2b34b6549abde4feb8e95fb7fe00c96ab72\n"
    },
    {
      "commit": "4bb09001683e00a9d0d34f685f2ec60004c0c1ef",
      "tree": "283e8c3c77c34a13b020275b031148cd46f1de9b",
      "parents": [
        "ae7168e19f886ed43ed200f9b0e769613df485f9"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Wed Sep 30 11:42:34 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 12 18:12:00 2020 +0000"
      },
      "message": "[metrics] Implement JitMethodCompileTime histogram\n\nJitMethodCompileTime keeps track of how long methods take to compile in\nJIT mode.\n\nTest: m test-art-host-gtest-art_libartbase_tests\nBug: 170149255\nChange-Id: Ic0e5f365d9e7eb7bc0ebcf49d23972adcd6dfb36\n"
    },
    {
      "commit": "ae7168e19f886ed43ed200f9b0e769613df485f9",
      "tree": "0c7169d33b71d643957e1acdaffc0ff61d4526fb",
      "parents": [
        "5e8e5161e5f5a1e944f5bc6fd2ef893e0a33551b"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Oct 09 15:13:29 2020 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 12 15:42:21 2020 +0000"
      },
      "message": "Remove unused image space order argument\n\nBug: 160683548\nTest: Treehugger\nChange-Id: I249d2891b645fa103106ee946f014b9ce362cbda\n"
    },
    {
      "commit": "5e8e5161e5f5a1e944f5bc6fd2ef893e0a33551b",
      "tree": "a206f69b751565a60242539be218bda05fe65e0f",
      "parents": [
        "bd489c87785260374dc68aae00ca74febbd97dbe"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 12 10:15:16 2020 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 12 14:59:39 2020 +0000"
      },
      "message": "Fix path for app image in compile_bcp.sh script.\n\nTest: compile_bcp.sh on device.\nChange-Id: Ica8cbc7d94eb3de83cd06f8a4adbe17f7aa61e2c\n"
    },
    {
      "commit": "bd489c87785260374dc68aae00ca74febbd97dbe",
      "tree": "ac2c996392ecb15c32e1d0e77d314f152048f5ed",
      "parents": [
        "6732b8057061ee753a9ff7cc6d79c2edd0a33168"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 09 14:40:29 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 12 11:11:16 2020 +0000"
      },
      "message": "Use liblog.so implementation from prebuilts/ for chroot testing.\n\nTest: test.py on device\nBug: 142935992\nChange-Id: I16b311738cb7d226c83cce517ff805b564093113\n"
    },
    {
      "commit": "6732b8057061ee753a9ff7cc6d79c2edd0a33168",
      "tree": "f807889b8ec8bca772ce05b212a99f596c6ff160",
      "parents": [
        "bfe8fc80767511676eae739e0924377dfc6c6089"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Oct 09 14:21:27 2020 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Oct 12 09:11:34 2020 +0000"
      },
      "message": "Remove the ability to generate an image in image_space.cc\n\nIn mainline, on-device signing will create image space upon APEX update.\n\nBug: 160683548\nTest: m test-art-host-gtest \u0026\u0026 art/test.py --host -r\nChange-Id: I6498336512040c922a545d6362acec3326220f77\n"
    },
    {
      "commit": "bfe8fc80767511676eae739e0924377dfc6c6089",
      "tree": "266db200bfb812ebe6b5ed9ab3ab9accb67081fe",
      "parents": [
        "7e9fc9d6d1622192f118bab771784eedfb66c60e"
      ],
      "author": {
        "name": "Daniil Riazanovskiy",
        "email": "riazanovskiy@google.com",
        "time": "Mon Oct 05 15:07:15 2020 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 12 08:23:13 2020 +0000"
      },
      "message": "Restore cfg file printing in Checker as an option\n\nTest: run checker with test that is expected to fail\nChange-Id: I14ca5e6bed38e2677cdf4b2eb4b79a6594af6f13\n"
    },
    {
      "commit": "7e9fc9d6d1622192f118bab771784eedfb66c60e",
      "tree": "98c89934b8907d62ff5e97eda11f20d3d4e97b2d",
      "parents": [
        "384dae4c7e51c34e1fd047c6f58dde63e08ab6a3"
      ],
      "author": {
        "name": "Ming-Shin Lu",
        "email": "lumark@google.com",
        "time": "Mon Oct 12 03:36:52 2020 +0000"
      },
      "committer": {
        "name": "Ming-Shin Lu",
        "email": "lumark@google.com",
        "time": "Mon Oct 12 07:15:39 2020 +0000"
      },
      "message": "Revert \"Make \u0027quicken\u0027 an alias to \u0027verify\u0027.\"\n\nThis reverts commit 4f0e8daf7ed79c0712c0fd927c8ad2c903c15773.\n\nReason for revert: Droidcop-triggered revert due to breakage https://android-build.googleplex.com/builds/tests/view?invocationId\u003dI69100006175866595\u0026testResultId\u003dTR93113908724113263, bug 170588354, bug 170589481, bug 170589988.\n\nChange-Id: If8f4396aa0db024ed5817a4fed61c13caf32f785\n"
    },
    {
      "commit": "384dae4c7e51c34e1fd047c6f58dde63e08ab6a3",
      "tree": "03303fdae65bbdfe5cab7fe9b2b8a650e7ceb144",
      "parents": [
        "4d23e51e67a419291598af3cb308aadaed1afd62"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 09 10:24:15 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Oct 11 14:41:19 2020 +0000"
      },
      "message": "Support access checks in mterp.\n\nThis is to start not treating access checks failure as soft failures.\n\nTest: test.py\nBug: 112676029\nChange-Id: I9cde52e5a2f6e00450616403ce6d9aa822a8380e\n"
    },
    {
      "commit": "4d23e51e67a419291598af3cb308aadaed1afd62",
      "tree": "bb808aa4f033c246666ca271859ac3fd967154ed",
      "parents": [
        "f86e144a921a633e6a67afe1a1d649326ce6a8b2"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Oct 09 18:02:54 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Oct 10 09:40:43 2020 +0000"
      },
      "message": "Disable some libcore ssl tests until pre-builts updated.\n\nBug: 166619732\nTest: art/tools/run-libcore-tests.sh --mode\u003dhost \\\n                                     -- libcore.javax.net.ssl.DefaultHostnameVerifierTest\nChange-Id: Ic8fe7ecb8350254dabbf32a43c01fc27996ccacd\n"
    },
    {
      "commit": "f86e144a921a633e6a67afe1a1d649326ce6a8b2",
      "tree": "d34a52947debb3aa838964301b90da0db05afe43",
      "parents": [
        "eeff8fc4586b4dd2dd62ba1c1e0d361dd448a88b"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Wed Sep 30 22:10:24 2020 +0100"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Fri Oct 09 17:29:49 2020 +0000"
      },
      "message": "Remove base pointer from object references.\n\nWe do this on a per object basis because there is some locality in\nobjects that are referred to by another object.\n\nBug: 143874090\nChange-Id: I5c72325ea51ec1c70dcd33e59cd6b66141da3b17"
    },
    {
      "commit": "eeff8fc4586b4dd2dd62ba1c1e0d361dd448a88b",
      "tree": "0f23c8d1a5d8592eaf1cd9a7b903732154744212",
      "parents": [
        "fd061070700817add2c15149e4098bab4eb8ccdd"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 07 15:29:14 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 09 13:16:11 2020 +0000"
      },
      "message": "Support access checks in nterp.\n\nBug: 112676029\nTest: test.py\nChange-Id: I0b1dcec7984d6ee91e08a86471e32ea05560ce49\n"
    },
    {
      "commit": "fd061070700817add2c15149e4098bab4eb8ccdd",
      "tree": "af2e90ad8cf7850be8a690a4c9b6b1292e0231ba",
      "parents": [
        "2e299f4d0eb8e2fd432c98b83f3f3c6ddd09c0f5"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 01 13:51:56 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 09 10:23:21 2020 +0000"
      },
      "message": "Remove unused code from dalvik.system.VMDebug.\n\nTest: m\nBug: 165361458\nChange-Id: Ic2cc2515a0af79d4541c16c0b3057980ada2a869\n"
    },
    {
      "commit": "2e299f4d0eb8e2fd432c98b83f3f3c6ddd09c0f5",
      "tree": "48104981e48944597421d26fd3180d5384ccc1a0",
      "parents": [
        "4f0e8daf7ed79c0712c0fd927c8ad2c903c15773"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 08 20:27:22 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 09 09:51:10 2020 +0000"
      },
      "message": "Handle nterp when precompiling with JIT zygote.\n\nTest: test.py\nTest: app startup with JIT zygote\nBug: 169773857\nChange-Id: I3e68e5e0dd276fd7fe11e435be0ce906bdca2a6c\n"
    },
    {
      "commit": "4f0e8daf7ed79c0712c0fd927c8ad2c903c15773",
      "tree": "6838f8b413a444b711bdab8136826be07ab95f39",
      "parents": [
        "a79872b016ea95b6ec530ae1ac35f3c5b0d9997f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 07 09:34:13 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 09 08:07:17 2020 +0000"
      },
      "message": "Make \u0027quicken\u0027 an alias to \u0027verify\u0027.\n\nBug: 170086509\nTest: test.py\nChange-Id: I3267ddd51d36c35f23cb05e26dc1a1f062065d7f\n"
    },
    {
      "commit": "a79872b016ea95b6ec530ae1ac35f3c5b0d9997f",
      "tree": "4e2f5c06efcaa3d508931862a504f2d52fa4d70c",
      "parents": [
        "1cd030f76e6ee07888aadca25ba24119fefb31b8"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Thu Oct 01 13:09:53 2020 -0700"
      },
      "committer": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Thu Oct 08 16:16:38 2020 -0700"
      },
      "message": "[metrics] Add metrics to Runtime, implement ClassVerificationTotalTime\n\nThis creates the main metrics struct and makes it readily accessible for\nART components that want to start collecting metrics. It also implements\nthe ClassVerificationTime metric.\n\nTest: m test-art-host-gtest-art_runtime_tests\nTest: m test-art-host-gtest-art_libartbase_tests\nBug: 170149255\nChange-Id: I33b5b2dd40127074619750d6730db220e3ed1257\n"
    },
    {
      "commit": "1cd030f76e6ee07888aadca25ba24119fefb31b8",
      "tree": "cb5992d5a5da66b1b1d967b48ec3d2892cda52bb",
      "parents": [
        "c4adf54117b96a34df228c83127d0986a69dc198"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Wed Sep 30 11:42:34 2020 -0700"
      },
      "committer": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Thu Oct 08 15:59:51 2020 -0700"
      },
      "message": "[metrics] Add timer conveniences\n\nThis adds convenience timers for each of the metrics. The timer\u0027s can be\nbacked by a Counter, in which case the Counter will store cumulative\ntime elapsed, or by a Histogram, in which case the timer will increment\na bucket based on the time between a particular start/stop pair.\n\nTimers can either be manually started and stopped, or can be used\nautomatically in an RAII manner.\n\nBug: 170149255\nTest: m test-art-host-gtest-art_libartbase_tests\nChange-Id: I4fc77e35f3e7b67c12fc004b72bf4fe177dc3151\n"
    },
    {
      "commit": "c4adf54117b96a34df228c83127d0986a69dc198",
      "tree": "f3dbfbd7686e7f473671da3c4b9ef83962c00ecc",
      "parents": [
        "d02435d009798c5b0a6cf0193769360307f82aa4"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Fri Oct 02 13:46:28 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 08 21:35:09 2020 +0000"
      },
      "message": "[metrics] Make metrics atomic\n\nART metrics need to be able to be updated by multiple threads. We make\nthis safe by making each metric value atomic.\n\nNote that this may be a scalability bottleneck if some metrics become\nheavily contended. If that turns out to be the case, we can explore\nother strategies, such as thread-local copies of contended metrics.\n\nBug: 170149255\nTest: m test-art-host-gtest-art_libartbase_tests\nChange-Id: I5857a0184e5715aa67cc551e5ee238552a374143\n"
    },
    {
      "commit": "d02435d009798c5b0a6cf0193769360307f82aa4",
      "tree": "c1f72d7c77b1809e36c3fbddd3d293484862e3e3",
      "parents": [
        "2734999f931a0e9082df7ae492dbfde668cd38d0"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Tue Sep 29 11:16:24 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 08 19:03:48 2020 +0000"
      },
      "message": "[metrics] Define Histogram\n\nAdds a definition of the Histogram metric type. This CL also declares\nthe JitMethodCompileTime histogram, but collection for this metric is\nnot yet included.\n\nThe ArtMetrics class is also refactored so that metrics are not exposed\ndirectly as fields, but instead through accessor functions.\n\nFinally, this CL includes a test case for ArtMetrics::ReportAllMetrics\nthat demonstrates how the set of metrics are reported to a backend.\n\nBug: 170149255\nTest: m test-art-host-gtest-art_libartbase_tests\nChange-Id: I5041588609d9c386ce053c16713c9e9bb5210e3a\n"
    },
    {
      "commit": "2734999f931a0e9082df7ae492dbfde668cd38d0",
      "tree": "28d34c9254f21b878299bf40e4e231b3ae621e0f",
      "parents": [
        "5409408a41045c7f178e362311eb51dab992d6db"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Oct 06 15:26:58 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 08 15:28:03 2020 +0000"
      },
      "message": "Fallback to using ANDROID_HOST_OUT env-var in gtests\n\nWhen running gtests using external runners in conjunction with certain\nrunners the gtest can believe that it is being run from a directory\nother than ANDROID_HOST_OUT. Instead of aborting this change makes the\ngtest simply accept the env-var and use it instead of trying to\ndetermine it based on the executable\u0027s path.\n\nTest: manual, VSCode\nChange-Id: I1ae7bbc58bea1813683d3180c9ee93be21f21df5\n"
    },
    {
      "commit": "5409408a41045c7f178e362311eb51dab992d6db",
      "tree": "4f5ed9d9ac417dfd69fd18f64412b2272c448e05",
      "parents": [
        "961f2954c12cfd66970a3150f2e3ef9b2567300f"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 07 17:44:41 2020 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 07 17:44:41 2020 +0000"
      },
      "message": "Revert \"Port Checker to python 3\"\n\nThis reverts commit 961f2954c12cfd66970a3150f2e3ef9b2567300f.\n\nReason for revert: Breaks some Checker tests on the ART Buildbot (see b/170308859).\n\nBug: 170308859\nBug: 162408889\nChange-Id: If531b015c2aa23d4e64e9e349982dc72cf8dc093\n"
    },
    {
      "commit": "961f2954c12cfd66970a3150f2e3ef9b2567300f",
      "tree": "3a10e0b5a0f9c9ec5f9f43116cd9d918e5376853",
      "parents": [
        "8d34a182fea1b24f7b8361b55e930cb953cf3fb2"
      ],
      "author": {
        "name": "Daniil Riazanovskiy",
        "email": "riazanovskiy@google.com",
        "time": "Tue Oct 06 16:29:38 2020 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 07 11:52:15 2020 +0000"
      },
      "message": "Port Checker to python 3\n\nThe porting only required very minor changes,\nmostly related to the change of the meaning of the str type\n\nTest: ./run_unit_tests.py\nTest: atest art-run-test-583-checker-zero\n\nBug: 162408889\nChange-Id: I9199a740ef19bfadddd6c52c0906e3a843c3ac2e\n"
    },
    {
      "commit": "8d34a182fea1b24f7b8361b55e930cb953cf3fb2",
      "tree": "4f5ed9d9ac417dfd69fd18f64412b2272c448e05",
      "parents": [
        "8ecbc4e844fc3b73e6a5c5151eda914d53297180"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 16 09:46:58 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 07 08:32:52 2020 +0000"
      },
      "message": "Change interface conflict stub to take the interface method.\n\nTo avoid doing dex cache lookup, pass the interface method instead. This\ncosts a few hundred KBs on speed compiled APKs (\u003c 0.5% code size), but\nimproves performance when hitting a conflict (as seen on dogfood data).\n\nFor nterp, we currently pass the conflict method instead of the\ninterface method. We need to handle default methods before optimizing\nit.\n\nThis removes our last use of dex cache in compiled code. A follow-up CL\nwill remove the NeedsDexCacheOfDeclaringClass from HInvokeInterface.\n\nTest: test.py\n\nChange-Id: I3cdd4543ad7d904b3e81950af46a48a48af6991a\n"
    },
    {
      "commit": "8ecbc4e844fc3b73e6a5c5151eda914d53297180",
      "tree": "702ce0e2469b46bb63440d7b6ddb6a9e8b1637c2",
      "parents": [
        "cbbc8df2264e8ce0528e7b7bfe43e430e5bb3e81"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 06 12:57:45 2020 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 06 15:54:28 2020 +0000"
      },
      "message": "Fix compiler crash in BCE.\n\nRemove a bogus call to HInstruction::AsConstant() that\ncauses a crash if the instruction is not a constant.\n\nTest: New test in 449-checker-bce-rem\nTest: testrunner.py --host --optimizing -t 449-checker-bce-rem\nBug: 169669115\nChange-Id: I7f962441b652538b2d1cc4238eb9ab66abc1286c\n"
    },
    {
      "commit": "cbbc8df2264e8ce0528e7b7bfe43e430e5bb3e81",
      "tree": "d3cdcc12f0cd27d9c1f67ff3967de822fe9f6398",
      "parents": [
        "f1a2c0e93f80fd9339270b10a5f68f93ebeffe67"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 30 22:02:32 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Oct 06 09:45:00 2020 +0000"
      },
      "message": "Drop the cc_defaults module for libdexfile_external_static users.\n\nIt won\u0027t work in SDK snapshots (b/169779783).\n\nThis means external dependencies (libbase, liblog, libz, libziparchive)\nare included as whole_static_libs, as before\nhttps://r.android.com/1435792, even if that may lead to duplicated code\nin depending modules. We cannot let them depend on those libraries\nseparately without better tools to avoid version conflicts.\n\nTest: atest --host art_libdexfile_external_static_tests\nBug: 142944931\nBug: 169885605\nChange-Id: I9fc176dd798ce64cbb806905e665bc03c247fddb\n"
    },
    {
      "commit": "f1a2c0e93f80fd9339270b10a5f68f93ebeffe67",
      "tree": "b3949e0e4996ef05a1d17c0f72c3d72e85c73827",
      "parents": [
        "0713ca0525579365ae927ac800797a7473d9267f"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Tue Sep 29 11:13:55 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 05 20:25:10 2020 +0000"
      },
      "message": "[metrics] Define Counter and related data structures\n\nAdd a definition for Counter, which is a type of metric ART can\ncollect. Note that this does not yet define any particular counters,\njust the infrastructure needed to add them.\n\nBug: 160734914\nTest: m test-art-host-gtest-art_libartbase_tests\nChange-Id: Ideabadbf3cca222911da357af56c7ebc2ab637fd\n"
    },
    {
      "commit": "0713ca0525579365ae927ac800797a7473d9267f",
      "tree": "47bdc9b541db6605af9bc3dbb4db42fed51f7b49",
      "parents": [
        "9c1c042dd6916e040007ad60a44c6e4e410cedc6"
      ],
      "author": {
        "name": "Daniil Riazanovskiy",
        "email": "riazanovskiy@google.com",
        "time": "Fri Oct 02 13:46:47 2020 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Oct 05 15:04:11 2020 +0000"
      },
      "message": "Disable x86 FromCpuFeatures test\n\nTest: art_runtime_tests --no_isolate \"--gtest_filter\u003dInstructionSetFeaturesTest.*\"\n\nBug: 169921883\nChange-Id: I6b596c156c110cd8aafe5c82a42c63bf5c8250b1\n"
    },
    {
      "commit": "9c1c042dd6916e040007ad60a44c6e4e410cedc6",
      "tree": "393a2ebb389ce8659f8367ae75a90ecabe18470d",
      "parents": [
        "71f7affff661a9f48afae25e19fcd3b9e82dac33"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Oct 05 13:17:02 2020 +0100"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Oct 05 13:24:22 2020 +0100"
      },
      "message": "Fix libicu.so missing in general-tests.zip\n\nThe libs under host/testcases/art_common/out/host/linux-x86/lib64/\nin general-tests are generated by the art_common module in\nAndroid.gtest.mk.\n\nOn host, the correct lib name is not libicu-host.so, but libicu.so, because\nunique_host_name is false in the libicu Soong module. This CL corrects\nthe .so name in the art_common module.\n\nBug: 160350521\nTest: Verified the libicu.so exists in general-tests.zip\nChange-Id: I11c9618db88635e8b7569fc592694b2d6c9bd52e\n"
    },
    {
      "commit": "71f7affff661a9f48afae25e19fcd3b9e82dac33",
      "tree": "0c39fae9b425703b0c05f7fdf70dc4e330bdbbbf",
      "parents": [
        "4904d5d65de32237790e5370bd076a9bccc22aa1"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Sep 15 16:45:49 2020 +0100"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Oct 05 11:41:52 2020 +0000"
      },
      "message": "Use prebuilt_visibility property on sdk/module_exports\n\nWhen the ART sdk/module_exports snapshots are unpacked in a prebuilts\ndirectory they need some additional visibility rules to be added to\nensure that the prebuilts are visible to each other. Previously, those\nwere added on a case by case basis to the individual modules. This\nchange replaces them by using the prebuilt_visibility property that\nspecifies additional visibility rules to be added to all prebuilt\nmodules in the snapshots.\n\nCurrently, the additional visibility added to the prebuilts makes them\nvisible to anything in //prebuilts or beneath which is not restrictive\nenough. Specifying the rule in a single place will make that easier to\nrestrict in future.\n\nBug: 155921753\nBug: 168301990\nTest: build sdk/snapshot, install them in prebuilts/module_sdk/art\n      and run m nothing to ensure the visibility rules are valid.\nChange-Id: I751ed6d488038214ac9df35849babe69a3c79a31\n"
    },
    {
      "commit": "4904d5d65de32237790e5370bd076a9bccc22aa1",
      "tree": "f1a6e6126200d40ba10f3411c1c0bb51f826af1b",
      "parents": [
        "463255b4f1fcc8c34856a6b0780cf5ef238941c2"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 02 13:52:00 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 05 08:28:08 2020 +0000"
      },
      "message": "Optimize JNI:GetStringRegion() for compressed strings.\n\nLooking at the disassembly, it seems clang++ was unable to\noptimize this properly, probably due to possible aliasing,\ndespite inlining the String::CharAt() and seeing all the\nString::IsCompressed() expressions.\n\nExplicitly use the fact that the string is compressed to\noptimize the function and similar patterns in JNI.\n\nTest: m test-art-host-gtest\nBug: 169674485\nChange-Id: I35dd2540a1e79611a65d2d84f2a557c826120409\n"
    },
    {
      "commit": "463255b4f1fcc8c34856a6b0780cf5ef238941c2",
      "tree": "bf6591595753304d1f846d4f3875a70dabff41a3",
      "parents": [
        "8d9c6048caa5ac3051e05540c04ea7cb3dfff9a7"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Oct 02 18:24:37 2020 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Oct 02 19:49:08 2020 +0000"
      },
      "message": "Temporarily exclude Checker tests from ART test mapping.\n\nThese tests currently break some ATP (postsubmit) test runs (see\nb/169852871), as Checker support in test suites is not complete.\n\nTest: atest --test-mapping art:postsubmit\nBug: 169852871\nBug: 162408889\nChange-Id: I39ebb261e64de7207dee21c1ce1ecce0d44e7451\n"
    },
    {
      "commit": "8d9c6048caa5ac3051e05540c04ea7cb3dfff9a7",
      "tree": "e18df218572fc3d745af384ccfa5308a352239ae",
      "parents": [
        "8b247625f58ba8a0f616594dc774089678aa57e3"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Sep 22 15:35:59 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 02 18:58:58 2020 +0000"
      },
      "message": "Add test for thread-attach naming behavior\n\nThe interaction between pthread_setname_np and AttachCurrrentThread is\nnot always obvious. Add a test to codify the interaction. Basically\nAttachCurrentThread will always override the current\npthread_setname_np thread name, including if AttachCurrentThread is\ncalled without an explicit name, in which case the pthread-name will\nbe changed to the name selected by java.\n\nTest: ./test.py --host\nBug: 168655382\nChange-Id: If0319b733dc808a4cb892b6199030657c3e69f81\n"
    },
    {
      "commit": "8b247625f58ba8a0f616594dc774089678aa57e3",
      "tree": "ff2be8fba185515184eb9aa6190ca50cdd27b2bd",
      "parents": [
        "e177bf1d28c5f8386995b9afd6df55c76fd48257"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Tue Sep 22 21:48:15 2020 +0100"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Fri Oct 02 18:32:14 2020 +0000"
      },
      "message": "Use the new libicu.so provided in the NDK\n\nBug: 160350521\nTest: device boots\nTest: art/build/apex/runtests.sh\nChange-Id: I54ce31df8349b0c2f335a50efa117d11976c1b1d\n"
    },
    {
      "commit": "e177bf1d28c5f8386995b9afd6df55c76fd48257",
      "tree": "c98b0483c2be921a71c4b00b940166b6dbee3a9c",
      "parents": [
        "5cdd368de2b21bb4d5b9e621fce7b8b0e4ac5eec"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 02 11:57:11 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 02 15:40:34 2020 +0000"
      },
      "message": "Move String::GetUtfLength() to string-inl.h.\n\nAttribute the time spent in this trivial function\nto its users in perf data.\n\nTest: m\nChange-Id: I6340c48e0cf29451e2d8cf854723f94da5650ec6\n"
    },
    {
      "commit": "5cdd368de2b21bb4d5b9e621fce7b8b0e4ac5eec",
      "tree": "01657e9e2aaef292bc82ffc906b1dc167c893259",
      "parents": [
        "2d98dc23d6e9b74ef004d4358d6c3d53503b12a7"
      ],
      "author": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Sat Sep 26 07:12:40 2020 +0000"
      },
      "committer": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Fri Oct 02 12:23:51 2020 +0000"
      },
      "message": "Revert \"Add getNativeTid function\"\n\nRevert submission 1202786-setpriority\n\nReason for revert: will cause lock contention\nReverted Changes:\nI46093c953:Use ThreadPrioritySetter to set thread priority\nIc13c13803:Add getNativeTid function\nIb486b7229:Implement the ThreadPrioritySetter interface\n\nBug: 139521784\nTest: build pass\nChange-Id: Ie13eee23321cf78cd8e0c4e06b5215936710d8d7\n"
    },
    {
      "commit": "2d98dc23d6e9b74ef004d4358d6c3d53503b12a7",
      "tree": "52e950bc8fead0bbb93cef38b17cec9723604fe1",
      "parents": [
        "cd8ffcbca3e25c3ee8c0ffeaadac4167db6f2b58"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 01 11:21:37 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 02 10:02:09 2020 +0000"
      },
      "message": "arm64: VarHandle.{get,set}{Opaque,Acquire,Volatile}.\n\nExtend the VarHandle.{get,set} for fields to similar\nvariants with additional memory ordering requirements.\n\nTest: testrunner.py --target --64 -t 712-varhandle-invocations\nTest: Repeat with ART_USE_READ_BARRIER\u003dfalse ART_HEAP_POISONING\u003dtrue.\nTest: Repeat with ART_READ_BARRIER_TYPE\u003dTABLELOOKUP.\nBug: 65872996\nChange-Id: I400802a1e089a5a81149316f88bb90979f8988e6\n"
    },
    {
      "commit": "cd8ffcbca3e25c3ee8c0ffeaadac4167db6f2b58",
      "tree": "d45796065161c252cbd0b59ac030379311f650bf",
      "parents": [
        "9e85eeb6f821f296c7fd2819f46c8dd6fae12b0f"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Sep 30 15:10:40 2020 -0700"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Thu Oct 01 19:41:34 2020 +0000"
      },
      "message": "Update ahat version number to 1.7.1\n\nTest: atest ahat-tests\nTest: open heap dump and verify version number on overview page.\nChange-Id: I8d7667b3c3a3199e734e3342913b6452095eaeb3\n"
    },
    {
      "commit": "9e85eeb6f821f296c7fd2819f46c8dd6fae12b0f",
      "tree": "3c8c7f9c3ef63076028d015e2e2cd9ba0b3fa3d6",
      "parents": [
        "01aaf0f0fdaf641013d3cec24a2c9bd2186fa5a7"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 30 17:04:23 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Oct 01 16:48:34 2020 +0000"
      },
      "message": "Link all internal libraries statically into oatdump(d) on host.\n\nAvoid all DSO dependencies except system libs, similar to dex2oat and\nhiddenapi binaries, to make it work when added to\nart-module-host-exports.\n\nThe stripped oatdump binary is 12 MB, oatdumpd is 15 MB.\n\nTest: `m oatdump{,d}` and run them from out/host/linux-x86/bin\nTest: readelf -d out/host/linux-x86/bin/oatdump(d)\n  Check that NEEDED only lists system libraries (libdl, libpthread,\n  libm, librt, libgcc_s, libc).\nBug: 145934348\nChange-Id: Ib20ce3382435b76058b88b9085e3c0831848a489\n"
    },
    {
      "commit": "01aaf0f0fdaf641013d3cec24a2c9bd2186fa5a7",
      "tree": "68149e4f65b3644cbae0a81b0eafc9c7de96aca8",
      "parents": [
        "7f8a7f29f07886d1008dfc26d43617e79965447c"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Sep 24 02:18:34 2020 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 01 12:45:09 2020 +0000"
      },
      "message": "Fix fake output from C header test to pass Tradefed scrutiny.\n\nAlso fixed stale test name in TEST_MAPPING.\n\nTest: atest --host art_libdexfile_external_tests\nBug: 120978655\nChange-Id: Ia07a786733e1c8fbdf3f6185763d159d61b267d0\n"
    },
    {
      "commit": "7f8a7f29f07886d1008dfc26d43617e79965447c",
      "tree": "629658a364e29f26d8d8ccd312e61cd41c320b8e",
      "parents": [
        "cb4fab133d14b491c57f46a4a08b66eaf8b675f6"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 23 14:44:53 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 01 11:20:13 2020 +0000"
      },
      "message": "Remove unused CorePlatformAPI methods.\n\nBug: 165370038\nTest: m\nChange-Id: I944cc5354016bef8820455c092e6cfaa033fa1f0\n"
    },
    {
      "commit": "cb4fab133d14b491c57f46a4a08b66eaf8b675f6",
      "tree": "b534a5514313c239083a1f72ab50449eaa82e358",
      "parents": [
        "baade40270fbfdc36cd0500d5245408debe7737e"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Fri Sep 25 13:57:37 2020 +0100"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Oct 01 08:37:11 2020 +0000"
      },
      "message": "Use NotifyDatasourceStopped for perfetto_hprof.\n\nThis takes the guesswork out of how long we need to run the trace for.\nNow, we can have a short trace duration (but long enough for the fork +\ndatasource init to happen), and a long datasource_stop_timeout. This\nway, the trace will only take as long as it needs to.\n\nBug: 159594916\nChange-Id: I0fa4219f454e91476833297342a11009e0e27435"
    },
    {
      "commit": "baade40270fbfdc36cd0500d5245408debe7737e",
      "tree": "6c081f03e5531cdb90da8e0b53c51b5f0358e628",
      "parents": [
        "8f63f1084b013a129f66cf8a7ed8ab1cae9f02aa"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 30 14:45:39 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 30 14:51:18 2020 +0000"
      },
      "message": "arm: Fix LoadClass/BssEntry{Public,Package}\n\nAlso update oatdump to list the new entries.\n\nTest: testrunner.py --target --32 --optimizing -t 727\nBug: 161898207\nChange-Id: I34b400531498cfac3c9606fa82b0894841054457\n"
    },
    {
      "commit": "8f63f1084b013a129f66cf8a7ed8ab1cae9f02aa",
      "tree": "6e9bbf5ad71a55f701f740e2995e0b84e9b87307",
      "parents": [
        "7aa2bfc09541ea5d2516738de84c24cd0269fed0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Sep 28 12:10:28 2020 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 30 13:58:32 2020 +0000"
      },
      "message": "Faster access to unresolved classes from compiled code.\n\nAdd two new load kinds to LoadClass, similar to kBssEntry\nbut using the access-checking entrypoint on the slow-path.\nOne is used for classes that are in the literal package and\nthe other for classes outside the literal package of the\ncompiling class. Associate new .bss entries with these load\nkinds and update them from entrypoints based on the resolved\nclass properties. If the resolved class is public, both\ntypes of entries can be updated, otherwise only the package\nlocal entry can be updated and only if the defining class\nloader of the class is the same as the caller\u0027s defining\nclass loader (which is identical for all code in an oat\nfile) because the run time access check for same package\nrequires both class loader and literal package name match.\n\nTest: Additional tests in 727-checker-unresolved-class.\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: aosp_blueline-userdebug boots.\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nBug: 161898207\nChange-Id: I281e06ac2825caf81c6d7ee3128af833abd39992\n"
    },
    {
      "commit": "7aa2bfc09541ea5d2516738de84c24cd0269fed0",
      "tree": "ab0400955d772e0826d1d4dab2e39d15570285f4",
      "parents": [
        "1e20e51b94d6c16f9c3709e1b96e5be2f61573b3"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Sep 29 15:38:40 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 30 13:51:43 2020 +0000"
      },
      "message": "Make the fakebins executable to please new symlink target check.\n\nhttps://r.android.com/1439191 added a check that the prebuilt is\nexecutable for binaries. That failed on the ART APEX check fakebins,\nalthough it didn\u0027t abort the builds.\n\nTest: m art-check-{release,debug,testing}-apex-gen-fakebin\nChange-Id: I7ed2421e5c800f7dfe09d7ec9c9cfe5123f046e6\n"
    },
    {
      "commit": "1e20e51b94d6c16f9c3709e1b96e5be2f61573b3",
      "tree": "9499d0af7aabda4e70d46b0ba004cadcf34bf3c0",
      "parents": [
        "407468761d72c1031a871c18c29238135d9f0a88"
      ],
      "author": {
        "name": "Daniil Riazanovskiy",
        "email": "riazanovskiy@google.com",
        "time": "Tue Sep 08 21:32:06 2020 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Sep 29 16:24:02 2020 +0000"
      },
      "message": "Build system support for Checker tests in Tradefed\n\nTest: atest with any checker test after regen-test-files\n\nBug: 162408889\n\nChange-Id: I12f79d11909c9d1636c1a2a2e5bcb2ec3da8647d\n"
    },
    {
      "commit": "407468761d72c1031a871c18c29238135d9f0a88",
      "tree": "d9655da2c6a95806476f3b4bfcfd522feafaad06",
      "parents": [
        "9636062c4d4839bbb2fd979ee56b2f38d8615f1e"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Sep 29 13:58:10 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Sep 29 14:55:40 2020 +0000"
      },
      "message": "Link libart-disassembler statically into static libart-compiler.\n\nNecessary to avoid runtime dlopen of non-existing\nlibart(d)-disassembler.so in host dex2oat. This increases the stripped\ndex2oat binary size by 4.8% or ~800 KB.\n\nTest: art/tools/buildbot-build.sh --host \u0026\u0026 \\\n  art/test/testrunner/testrunner.py --optimizing --host --ndebug -t 465\n  with and without HOST_PREFER_32_BIT\u003dtrue\nBug: 145934348\nChange-Id: I623019132175bd0430d30a421655484bdcb71857\n"
    },
    {
      "commit": "9636062c4d4839bbb2fd979ee56b2f38d8615f1e",
      "tree": "2562080e05eed8104de13707c092aacb3556d572",
      "parents": [
        "e2a9bb7175517c18ab0899ad54c730b272d9883c"
      ],
      "author": {
        "name": "Daniil Riazanovskiy",
        "email": "riazanovskiy@google.com",
        "time": "Wed Sep 16 23:26:52 2020 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Sep 29 13:32:59 2020 +0000"
      },
      "message": "Integrate cpu_features external library\n\nTest: art_runtime_tests --no_isolate \"--gtest_filter\u003dInstructionSetFeaturesTest.*\"\nTest: Run `InstructionSetFeaturesTest` on device (Pixel 3) with this\n      command:\n          atest --all-abi ArtGtestsTargetInstallApex -- \\\n                --test-arg com.android.tradefed.testtype.GTest:native-test-flag:\"--gtest_filter\u003d*InstructionSetFeaturesTest*\"\nBug: 128901000\nChange-Id: I49375eff2a28444af941610b750b3316bf18c7a7\n"
    },
    {
      "commit": "e2a9bb7175517c18ab0899ad54c730b272d9883c",
      "tree": "b911c47e4ef28afd99b6d683b1338e1a61dc8598",
      "parents": [
        "e0f09bb2e2e5b3971b1232edabb7db1f9219ceb7"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Sep 28 12:24:39 2020 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Sep 29 13:26:10 2020 +0000"
      },
      "message": "Augment search path for tradefed host gtests.\n\nTradefed uses different directory layout locally and remotely.\n\nBug: 147817558\nTest: m general-tests \u0026\u0026 atest art_dex2oat_tests --host\nChange-Id: I60cb5971dfb7b6a644a74a1c77d1a269ce461859\n"
    },
    {
      "commit": "e0f09bb2e2e5b3971b1232edabb7db1f9219ceb7",
      "tree": "7f95f3051a1944de089d94a39a2569c646903b23",
      "parents": [
        "d0d73c69bfd3ad2cbfb2a4b1de8651d87e870ad9"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 25 09:33:34 2020 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Sep 29 11:57:59 2020 +0000"
      },
      "message": "Reland \"JNI: Do not inhibit GC in GetStringCritical for compressed string.\"\n\nIt was accidentally reverted in https://r.android.com/1434215.\n\n(cherry-pick of b2568693d783d53aa80f71fde4715995a1f695cc)\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I7a4953ccde5bf4af1b697545c125ad9bdbe18088\n"
    },
    {
      "commit": "d0d73c69bfd3ad2cbfb2a4b1de8651d87e870ad9",
      "tree": "ab8ea7aeda76c58aa881f460968449499b12ea43",
      "parents": [
        "d5e776c070750161edd4a22e3e72bb004877a41c"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Sep 18 13:50:36 2020 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Sep 29 11:19:41 2020 +0000"
      },
      "message": "Switch-interpreter: Add trivial helpers.\n\nMake further refactoring easier.\n\nTest: ./art/test.py -b -r --host --interpreter --64\nChange-Id: Ib6a7bee314907524910dee4766d4c73a0b85aafc\n"
    },
    {
      "commit": "d5e776c070750161edd4a22e3e72bb004877a41c",
      "tree": "a26e6a994af85256bf54b010cacbd93e7439bd09",
      "parents": [
        "1de6f018f6601a11ab32ca05d7ac4f4547d31e53"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Sep 25 10:18:24 2020 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Sep 29 11:09:48 2020 +0000"
      },
      "message": "Add liblz4 and liblzma to the list of needed libs for gtests.\n\nChange-Id: Ibe77abe51333cb29e641b74064da5cfae7011445\n"
    },
    {
      "commit": "1de6f018f6601a11ab32ca05d7ac4f4547d31e53",
      "tree": "1d8e5bd665b7c1d46964c7305ef87a8f8193f8b5",
      "parents": [
        "199f2ecd9e8c915d93d365e12405f7d6a1d5d924"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 23 13:28:00 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Sep 29 08:07:34 2020 +0000"
      },
      "message": "Another fix for the resolution trampoline and invokesuper.\n\nWe need to fully resolve the target method before updating the BSS.\n\nTest: 811\nBug: 169047229\nChange-Id: I2f3a6d60e3e44b00daea4af15c02b55e1c9098d6\n"
    },
    {
      "commit": "199f2ecd9e8c915d93d365e12405f7d6a1d5d924",
      "tree": "5fb614ab9f1a9d3c4cc10d171177c49b36405aea",
      "parents": [
        "1d34c08cf005df789e72fa36dfbb99b5b9edda2c"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 28 18:11:41 2020 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Sep 28 20:11:18 2020 +0000"
      },
      "message": "Add missing art_(debug_)defaults to dex2oat host static libs.\n\nThis fixes build breakage on mac since art_defaults disables darwin.\n\nBug: 169576709\nBug: 145934348\nTest: Build ART prebuilt SDK, set prefer:true on prebuilts and build\n  platform system image using prebuilts\nTest: Build and run out/soong/host/linux-x86/bin/dex2oat(d)\n  on linux\nTest: build/soong/soong_ui.bash --make-mode \\\n      TARGET_PRODUCT\u003dsdk TARGET_BUILD_VARIANT\u003duserdebug nothing\n  on mac\nChange-Id: Iabbfbfd98974b62157d85f84b651bdfef20a122e\n"
    },
    {
      "commit": "1d34c08cf005df789e72fa36dfbb99b5b9edda2c",
      "tree": "5d9ec1b6c303729fac49429fd822940d871fb112",
      "parents": [
        "891cb8897612a156e631825615781c537032a3f3"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Sep 24 00:17:43 2020 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Sep 28 18:45:01 2020 +0000"
      },
      "message": "Update for libunwindstack changes.\n\nTest: Builds.\nChange-Id: I4a8f2ccb15998f45822e8380c41f4e7f6fac07d2\n"
    },
    {
      "commit": "891cb8897612a156e631825615781c537032a3f3",
      "tree": "c0206a93a2480388764113184e9118a8c0a120ea",
      "parents": [
        "270e10a8122d4a2abe4d92db55451e2b62f32188"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Jul 31 12:06:58 2020 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Sep 28 18:35:14 2020 +0000"
      },
      "message": "Add mutator collector coordination documentation\n\nThis affects a lot of ART and should thus be documented.\n\nIt is sufficiently low level that I believe it belongs in the source\ntree. It should only be of interest to ART developers, in a broad sense\nthat includes anyone trying to understand failures involving ART.\n\nVarious comment improvements around thread suspension and checkpoints.\n\nTest: Built AOSP.\nChange-Id: I77338ff1d6f7c6aefb7be849449770438c15c982\n"
    },
    {
      "commit": "270e10a8122d4a2abe4d92db55451e2b62f32188",
      "tree": "c79d39ac402c7c1dce256da512f4fa6fb9793bd4",
      "parents": [
        "1938b35c92396fdf8c4386e191e4fc2d95bb1898"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 24 11:48:47 2020 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Sep 28 14:55:24 2020 +0000"
      },
      "message": "Improve codegen for referrer\u0027s class...\n\n... for unresolved compiling class.\n\nTest: Update test 727-checker-unresolved-class.\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: testrunner.py --host --optimizing --interpreter --jvm -t 727\nBug: 161898207\nChange-Id: I1a931179060ae435ca52d5a6eca3c641b9356c03\n"
    },
    {
      "commit": "1938b35c92396fdf8c4386e191e4fc2d95bb1898",
      "tree": "5ab9aabb22c73d4028e54bdb8ec750402c239d63",
      "parents": [
        "35f765b9c66a9d999d35afd54c693f8636d0a7ee"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 23 01:43:41 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 28 10:14:23 2020 +0000"
      },
      "message": "Link all internal libraries statically into hiddenapi(d).\n\nTest: m hiddenapi{,d}\nTest: readelf -d out/host/linux-x86/bin/dex2oat(d)\n  Check that NEEDED only lists system libraries (libdl, libpthread,\n  libm, librt, libgcc_s, libc).\nBug: 145934348\nChange-Id: I9b1473e40b3f1f37133443407b1a5d2dd66432f8\n"
    },
    {
      "commit": "35f765b9c66a9d999d35afd54c693f8636d0a7ee",
      "tree": "4e51043f9d638c0d861022291ef80d126fb96e0d",
      "parents": [
        "a28438ab47e8e41599fa6b2343f8a6a21efa0116"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 23 00:38:38 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 28 10:13:56 2020 +0000"
      },
      "message": "Link all internal libraries statically into dex2oat(d) on host.\n\nAll static defaults had to change to whole_static_libs to work with the\nnew libdex2oat(d)_static libraries, so that they don\u0027t lose all symbols\nin the static_libs dependency from the dex2oat(d) binaries.\n\nThe static unstripped dex2oat binary is 348 MB, 35 MB smaller than the\nsum of the dynamic binary + DSO\u0027s.\n\nTest: art/build/apex/runtests.sh\nTest: runtests in device chroot\nTest: art/test/testrunner/run_build_test_target.py art-test\nTest: readelf -d out/host/linux-x86/bin/dex2oat(d)\n  Check that NEEDED only lists system libraries (libdl, libpthread,\n  libm, librt, libgcc_s, libc).\nBug: 145934348\nChange-Id: I7abcf1db9b053f71ced6a7dde38ab1b4300b7b5a\n"
    },
    {
      "commit": "a28438ab47e8e41599fa6b2343f8a6a21efa0116",
      "tree": "519080d02e7f1b3ce07d82efd579ea3bfae59b8a",
      "parents": [
        "2f47a3110a16d60128a16b280191941df4ecf237"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 23 01:40:03 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 28 10:13:56 2020 +0000"
      },
      "message": "Disable the -d vs non-d libartbase dlopen check when it\u0027s static.\n\nTest: m hiddenapi \u0026\u0026 out/host/linux-x86/bin/hiddenapi\n  when it is built with static libartbase (see child CL).\nBug: 145934348\nChange-Id: I2487e3e2b2b7153e71590748f5e2b6dbd4b5e4f6\n"
    },
    {
      "commit": "2f47a3110a16d60128a16b280191941df4ecf237",
      "tree": "37894e0e71d843de44f23c9b32d367ab99e51a67",
      "parents": [
        "e470ff7e4e5e58d292b316681fcf4e889e80638a"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jul 20 14:23:45 2020 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Sep 28 09:22:55 2020 +0100"
      },
      "message": "Integer.divideUnsigned() intrinsic on ARM.\n\nTest: Covered by 082-inline-execute.\nTest: testrunner.py --target --optimizing --32\nBug: 156736938\nChange-Id: I902c3b62b4382f94b045a36493ca7b1c799746d2\n"
    },
    {
      "commit": "e470ff7e4e5e58d292b316681fcf4e889e80638a",
      "tree": "4eb457fc814354e121a68aa46446e009da91f6df",
      "parents": [
        "0d20878372e135fff6227afb8c267e261ac2020c"
      ],
      "author": {
        "name": "Dan Shi",
        "email": "dshi@google.com",
        "time": "Thu Sep 24 15:20:23 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 25 21:55:20 2020 +0000"
      },
      "message": "Add art_common to art-host-tests suite\n\nBug: 169111770\nTest: m -j art-host-tests\nChange-Id: I394203267403b1c9d61afdb2b5987498c3b42959\n"
    },
    {
      "commit": "0d20878372e135fff6227afb8c267e261ac2020c",
      "tree": "3270522e3e18b38630e85b460f13cb46951a9f6b",
      "parents": [
        "68e5db56dadbc0e558c16696aa48a80695ccbfbc"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Sep 25 10:18:24 2020 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Sep 25 12:52:00 2020 +0000"
      },
      "message": "Add liblz4 to the list of needed libs for gtests.\n\nChange-Id: I17c3ff67ebb519545a2d1f8f434f19bf66e2e052\n"
    },
    {
      "commit": "68e5db56dadbc0e558c16696aa48a80695ccbfbc",
      "tree": "3e885cc60324c729d66730126a82d53baea9a9ff",
      "parents": [
        "b2568693d783d53aa80f71fde4715995a1f695cc"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 23 20:43:56 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Sep 25 12:46:29 2020 +0000"
      },
      "message": "Convert libdexfile_support_static to *_static_defaults modules.\n\nIt has been using whole_static_libs to propagate static library\ndependencies transitively, but that can lead to duplicate instances of\nthem. Instead provide libdexfile(d)_support_static_defaults that\ncollect dependencies just like elsewhere in ART.\n\nExternal packages (read simpleperf) that depend on static libdexfile\nare provided a separate libdexfile_external_static library. It only\ncontains the internal dependencies and have a corresponding\n*_static_defaults for the external ones, and hence shouldn\u0027t be used\ninternally.\n\nTest: flash \u0026 boot\nTest: art/build/apex/runtests.sh\nTest: art/tools/buildbot-build.sh {--host,--target}\nTest: m build-art-target-golem\nTest: atest --host art_libdexfile_support_tests \\\n  art_libdexfile_support_static_tests \\\n  art_libdexfile_external_static_tests\nBug: 145934348\nBug: 142944931\nChange-Id: Ic99eebccc5c63acb55f323611c6b6f50a83eba5a\n"
    },
    {
      "commit": "b2568693d783d53aa80f71fde4715995a1f695cc",
      "tree": "ac48148fbe7e857538c375b693d81130dade687a",
      "parents": [
        "423aefc4be393842a88cdd554df3bb58f4b79474"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 25 09:33:34 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 25 11:50:04 2020 +0000"
      },
      "message": "JNI: Do not inhibit GC in GetStringCritical for compressed string.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I6ccca9effe3820bb6b9eab6bb48263499da08321\n"
    },
    {
      "commit": "423aefc4be393842a88cdd554df3bb58f4b79474",
      "tree": "abd67c3f533248ecd9cb943b72977444787852a9",
      "parents": [
        "4075edd5acc75133ce7553003d1a04c6c840dd52"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Sep 01 18:42:22 2020 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Sep 25 11:21:26 2020 +0000"
      },
      "message": "Add ART gtests to the Mainline Test Suite (MTS).\n\nInclude the `ArtGtestsTargetInstallApex` module in the MTS test suite.\n\nAlso support multilib variants in this Soong module (using different\nsuffix per sub-architecture), which is needed on build targets with\nsecondary architectures, as the MTS test suite packaging logic\nflattens all test artifacts into a single `testcases` directory.\n\n(cherry picked from commit 8db723c5bda7dc16547a0abdacbf6f7d3ab90a54)\n\nTest: Run `m mts` and check the contents of the MTS package\n      (`out/host/linux-x86/mts/android-mts.zip`)\nBug: 167385698\nBug: 168984433\nChange-Id: I123f313db5ab32b38c2110301bb84eb208a58047\nMerged-In: I123f313db5ab32b38c2110301bb84eb208a58047\n"
    },
    {
      "commit": "4075edd5acc75133ce7553003d1a04c6c840dd52",
      "tree": "50621a257267d264251013476f96ba839c97b715",
      "parents": [
        "a3bd4ec050e10fbfb6df0fe024bc6f3851bcc326"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Sep 24 15:26:23 2020 +0100"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Fri Sep 25 09:57:26 2020 +0000"
      },
      "message": "Allow to exclude objects from heap graph.\n\nTest: Profile system_server with ignored_types.\nBug: 143874090\nChange-Id: Ibdc4c68831214b6d5717788be201a3067e1e7693\n"
    },
    {
      "commit": "a3bd4ec050e10fbfb6df0fe024bc6f3851bcc326",
      "tree": "8a373f87b05b3580f564bd8561bf0dd4ebb9161e",
      "parents": [
        "b0f405e1482df602fc57ee2ed4434456c4dc2555"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Thu Aug 27 16:26:17 2020 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Sep 25 09:16:33 2020 +0000"
      },
      "message": "Introduce Long.divideUnsigned() intrinsic on ARM64.\n\nExtends the 082-inline-execute test and reorders\ndivideUnsigned intrinsic code before VarHandle code.\n\nTest: 082-inline-execute.\nTest: testrunner.py --target --optimizing --64\nBug: 156736938\nChange-Id: I8acf3db184da30640aff36cf02570ae0c6d2b88c\n"
    },
    {
      "commit": "b0f405e1482df602fc57ee2ed4434456c4dc2555",
      "tree": "61d493a3ae65489090b186767ae83c7c1d893de1",
      "parents": [
        "5ba66998281af9719e5d5ef84fd095181d4cf9a8"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Sep 24 15:10:35 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 25 08:39:47 2020 +0000"
      },
      "message": "Move the resolved_method_reference to HInvoke.\n\nIn order to also be used by HInvokeInterface.\n\nTest: test.py\nChange-Id: If72071a5347a13843f2c3ad8da4af4d6aaee6444\n"
    },
    {
      "commit": "5ba66998281af9719e5d5ef84fd095181d4cf9a8",
      "tree": "96d6b307af969eade69f390a1af3ab623523b8a1",
      "parents": [
        "6076b6959ac6dd2f5f6c93d119b37899f70a30a8"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Sep 23 15:04:36 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 25 04:46:32 2020 +0000"
      },
      "message": "Refactor Escape-analysis to use visitors\n\nThe current escape-analysis is entirely built around finding a single\n\u0027does-escape\u0027 boolean (and a few ancillary booleans). This change adds\na new VisitEscapes function that allows one to more easily track which\ninstructions cause escapes and rewrites the other escape-analysis\nfunctions in terms of this VisitEscapes function.\n\nTest: ./test.py --host\nBug: 67037140\nChange-Id: Ie5ad7580544be21713d040c2943cae19ff5414d4\n"
    },
    {
      "commit": "6076b6959ac6dd2f5f6c93d119b37899f70a30a8",
      "tree": "fd54eb88344bdc047529c9d7c57765612d34f178",
      "parents": [
        "a48f6f1d64bf4606c6f100eb6dae674409d184cd"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Sep 23 14:25:18 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 24 23:51:52 2020 +0000"
      },
      "message": "Add ability to override gtest LOG_TAGS\n\nBy default art gtests will run with ANDROID_LOG_TAGS\u003d*:e regardless of\nwhat that environment variable is actually set to. This is generally\nsensible given the generally short nature of gtests. In some\ncircumstances it is useful to re-enable this logging when one is, for\nexample, debugging specific tests. This change adds a\nART_GTEST_OVERRIDE_LOG_TAGS which will be used as the value of\nANDROID_LOG_TAGS when set.\n\nTest: export ART_GTEST_OVERRIDE_LOG_TAGS\u003d\u0027*:v\u0027; $ANDROID_HOST_OUT/nativetest64/art_runtime_tests/art_runtime_tests --gtest_filter\u003d\"HeapTest*\"\nTest: $ANDROID_HOST_OUT/nativetest64/art_runtime_tests/art_runtime_tests --gtest_filter\u003d\"HeapTest*\"\nChange-Id: I48a42a12284d41423e9936d5d27430d88f4dac0b\n"
    },
    {
      "commit": "a48f6f1d64bf4606c6f100eb6dae674409d184cd",
      "tree": "fb2c07ef3845da03834a4a63e960cf8127896725",
      "parents": [
        "d9a7d0abcba766114d7b64311ea3aee4a66b2154"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Wed Sep 23 09:36:01 2020 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 24 22:53:52 2020 +0000"
      },
      "message": "Replace inlined string allocations to loop in 096-array-copy-concurrent\n\nReplacing inlined string allocations with a loop is expected to reduce\nthe number of GC invocations in case of GC-stress mode. Hopefully, this\nwill fix the timeout that is being observed.\n\nBug: 169242013\nTest: art/test/testrunner/testrunner.py --host -t 096-array-copy-concurrent\nChange-Id: Ib5c4130a5369749f1c28496cc2a1849f776a45be\n"
    },
    {
      "commit": "d9a7d0abcba766114d7b64311ea3aee4a66b2154",
      "tree": "a09c8a1443d81000682c96c578697cf4ba803f46",
      "parents": [
        "370948e9b91bd1a63d548b434a5d155b794c47c9"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Sep 24 16:45:26 2020 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Sep 24 16:46:58 2020 +0000"
      },
      "message": "Revert \"Move ART run-tests to the `presubmit` test group in `TEST_MAPPING`.\"\n\nThis reverts commit 455e5c2eef7cf00d561e39a3af9ad97e7284a5bb.\n\nReason for revert: The original change broke many presubmits.\n\nBug: 152374989\nChange-Id: Ia01a2f7e5e718b5fa9ff2daa2ef820dc4f092225\n"
    },
    {
      "commit": "370948e9b91bd1a63d548b434a5d155b794c47c9",
      "tree": "9b191c71fd7e37d6c4dea54376b8402679f68e8a",
      "parents": [
        "c616530e7290ad21693b9ec626c55811c1f2c473"
      ],
      "author": {
        "name": "Andra Danciu",
        "email": "andradanciu@google.com",
        "time": "Wed Sep 23 08:07:25 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 24 11:54:30 2020 +0000"
      },
      "message": "X86: Implement VarHandle.compareAndExchange\n\nTest: ART_HEAP_POISONING\u003dtrue art/test.py --host -r -t 712-varhandle-invocation --32\nTest: ART_HEAP_POISONING\u003dfalse art/test.py --host -r -t 712-varhandle-invocation --32\nTest: ART_USE_READ_BARRIER\u003dtrue art/test.py --host -r -t 712-varhandle-invocation --32\nTest: ART_USE_READ_BARRIER\u003dfalse art/test.py --host -r -t 712-varhandle-invocation --32\nBug: 65872996\nChange-Id: I880ba6176050591e7398f95b92fc3f74f566b042\n"
    },
    {
      "commit": "c616530e7290ad21693b9ec626c55811c1f2c473",
      "tree": "37af44857d1cf2c329583af72dffeb8ff6243049",
      "parents": [
        "8942b3a769729e9c1fb65f5b738317483124dc45"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 23 10:48:55 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Sep 24 11:52:10 2020 +0000"
      },
      "message": "Add missing libz4.so for Golem builds.\n\nIt\u0027s a new shared library dependency since\nhttps://r.android.com/1428533.\n\nTest: lunch silvermont\n  m CUSTOM_TARGET_LINKER\u003d$PWD/out/target/product/silvermont/system/bin/linker ART_TARGET_LINUX\u003dtrue build-art-target-golem\n  env ANDROID_I18N_ROOT\u003d$PWD/out/target/product/silvermont/system/apex/com.android.i18n ANDROID_TZDATA_ROOT\u003d$PWD/out/target/product/silvermont/system/etc/tzdata_module out/target/product/silvermont/system/bin/art --32 -Ximage:$PWD/out/target/product/silvermont/system/apex/com.android.art/javalib/boot.art -cp java-benchmarks-v3.dex benchmarks.AhatBench.java.AhatBench\nBug: 118374951\nChange-Id: I26f32e2c0eef8ec940378145ab02f1ce48564682\n"
    },
    {
      "commit": "8942b3a769729e9c1fb65f5b738317483124dc45",
      "tree": "e99c60039c9ef27d05a6d43269232953b72058be",
      "parents": [
        "0571d479f52781df0b4d94caaf704631122ba6e6"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jul 20 10:42:15 2020 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 24 10:51:06 2020 +0000"
      },
      "message": "Integer.divideUnsigned() intrinsic on ARM64.\n\nImplements the intrinsic for arm64; adds a comment\nfor a DCHECK() that prevented kNoOutputOverlap usage\nin intrinsics with slow paths.\n\nAuthor: Vladimir Marko.\nCommitter: Artem Serov.\n\nTest: Covered by 082-inline-execute.\nTest: testrunner.py --target --optimizing --64\nBug: 156736938\nChange-Id: Ie1e61c19afe6a899fd4152206e5dbf9ad013e602\n"
    },
    {
      "commit": "0571d479f52781df0b4d94caaf704631122ba6e6",
      "tree": "4d2ec8b223d592074bc380cd6dc40ddc063ecad9",
      "parents": [
        "5437e6fa3c5a1865e4146356d05e0a48764a5e3b"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 22 10:14:39 2020 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 24 10:08:56 2020 +0000"
      },
      "message": "LSE: Better elimination of array stores.\n\nThis replaces the workaround from\n    https://android-review.googlesource.com/1427546\nwith a proper fix that precisely tracks the needed stores.\n\nAlso fix spelling of Floyd-Warshall.\n\nTest: Additional tests in 530-checker-lse\nTest: testrunner.py --host --optimizing --interpreter --jvm -t 530\nTest: testrunner.py --host --optimizing\nBug: 168446366\nBug: 77906240\nChange-Id: I0cd7acb600ed210ac09d0006b28f045758c2c3ec\n"
    },
    {
      "commit": "5437e6fa3c5a1865e4146356d05e0a48764a5e3b",
      "tree": "d2394e4504afd4aa1cecc8a75511b7be1c3ab1ff",
      "parents": [
        "59a122afb0d2af069a055de7437c736480782e41"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 02 12:03:14 2020 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 24 09:39:00 2020 +0000"
      },
      "message": "Add tests for accessing referrer\u0027s class.\n\nPrepare for improving codegen for accessing referrer\u0027s class\nfrom unresolved compiling class by improving test coverage.\nThe disabled CHECK statements show the intended results.\n\nTest: Additional tests in 727-checker-unresolved-class.\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 161898207\nChange-Id: I7473d2693060b843670ea81f5f0e7bbb3c2d9031\n"
    },
    {
      "commit": "59a122afb0d2af069a055de7437c736480782e41",
      "tree": "c4ebca9b572e4ef1ef33c05e64ee22dfd06b46e4",
      "parents": [
        "25b9c7da44cd4652aa2ba26aa105509a6d035632"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 22 15:44:00 2020 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 24 09:39:00 2020 +0000"
      },
      "message": "Rename some classes in test 727.\n\nTest: testrunner.py --host --optimizing -t 727\nBug: 161898207\nChange-Id: I8ea2a11859f2190aee4fa08eb7b062ea4c9cd204\n"
    },
    {
      "commit": "25b9c7da44cd4652aa2ba26aa105509a6d035632",
      "tree": "b11d09d13e3d3c29d9782ab9b7f8521bc58747e8",
      "parents": [
        "6d69b52f331f788cbd1f21ffd5b87cb3b39965e4"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Sep 17 17:34:34 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Sep 24 08:26:53 2020 +0000"
      },
      "message": "Don\u0027t store copied methods in BSS.\n\nOtherwise, we can end up in a state where the method on the stack is\nunrelated to the receiver.\n\nAlso fix a comment related to GetCanonicalMethod and\nStackVisitor::ValidateFrame.\n\nTest: 810-checker-invoke-super-default\nChange-Id: I3030e4af6059f7a4a7a1f046f2aabae8ce9057da\n"
    },
    {
      "commit": "6d69b52f331f788cbd1f21ffd5b87cb3b39965e4",
      "tree": "2bca1001afb4c3fc45cbb198765c51aa65e45c42",
      "parents": [
        "e407d97b0f25562110511d025058dcefdacca623"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 23 14:47:28 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 23 14:47:28 2020 +0100"
      },
      "message": "Move MethodLoadKind out of HInvokeStaticOrDirect.\n\nTo prepare for using it in HInvokeInterface. For consistency, also move\nCodePtrLocation.\n\nTest: test.py\nChange-Id: I84f973764275002e2adb71080ebc833b2bafb975\n"
    },
    {
      "commit": "e407d97b0f25562110511d025058dcefdacca623",
      "tree": "0d4066f56d4e16a6bd402d10e8f38b4e14dbc246",
      "parents": [
        "e1d2dce0cda2d223ac9c4e48958b9d5810e3e987"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Sep 17 01:31:10 2020 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 23 11:43:08 2020 +0000"
      },
      "message": "Reattach some comments to what they apply to.\n\nAlso remove comments about runtime_options.h that have been copied out\nof their context (they\u0027re only relevant in runtime/Android.bp).\n\nTest: n/a - comment change\nChange-Id: I03753f273c148937ce04d4e0b44f3ec4b2303d27\n"
    },
    {
      "commit": "e1d2dce0cda2d223ac9c4e48958b9d5810e3e987",
      "tree": "3b9a664710cad714ad2ee1f9fec60908408aa23f",
      "parents": [
        "9dfb1a9d642b9eb627895ef3364736fc839b4fe4"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 21 10:06:31 2020 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Sep 23 08:12:33 2020 +0000"
      },
      "message": "Add support for compact dex files in nterp.\n\nTest: test.py\nBug: 112676029\nChange-Id: I604af166dab0647037bf675cabc6ce433053a83c\n"
    },
    {
      "commit": "9dfb1a9d642b9eb627895ef3364736fc839b4fe4",
      "tree": "776f1e58c13f620829bde196163ebab089506d1b",
      "parents": [
        "c372314fe478afe6aec5573c26bca378d686072d"
      ],
      "author": {
        "name": "Andra Danciu",
        "email": "andradanciu@google.com",
        "time": "Tue Sep 22 13:27:18 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 23 08:05:32 2020 +0000"
      },
      "message": "X86: Implement VarHandle.getAndSet, getAndSetAcquire, getAndSetRelease\n\nThis commit implements VarHandle getAndSet variants. This implied adding\nxchgb and xchgw instructions and tests for them.\n\nAlso, all the varType checks were moved to GenerateVarHandleCommonChecks.\n\nTest: ART_HEAP_POISONING\u003dtrue art/test.py --host -r -t 712-varhandle-invocation --32\nTest: ART_HEAP_POISONING\u003dfalse art/test.py --host -r -t 712-varhandle-invocation --32\nTest: ART_USE_READ_BARRIER\u003dtrue art/test.py --host -r -t 712-varhandle-invocation --32\nTest: ART_USE_READ_BARRIER\u003dfalse art/test.py --host -r -t 712-varhandle-invocation --32\nTest: m test-art-host-gtest\nBug: 65872996\n\nChange-Id: I675f47e1dbb51a5ece42f20ad8ce552cfef63ffe\n"
    },
    {
      "commit": "c372314fe478afe6aec5573c26bca378d686072d",
      "tree": "f97c79ec307d286a21e0865505d83c0695f19cf8",
      "parents": [
        "331c8e371f2a3324070a4da966af8bf296b58bbb"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Sep 23 01:17:33 2020 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 23 07:00:28 2020 +0000"
      },
      "message": "Fix missing globals_unix.cc on device.\n\nnot_windows actually means \"non-windows hosts\", so it doesn\u0027t include\nandroid.\n\nTest: Device gtests\nBug: 132163727\nChange-Id: I0e3ce186a9919d95697bc7efaf692d537f37dfc4\n"
    },
    {
      "commit": "331c8e371f2a3324070a4da966af8bf296b58bbb",
      "tree": "82ad282811d40e605bd7e0ad1c3be81ea3385e7f",
      "parents": [
        "49cde240141d84bc0d79ed2225aff5b1a7f8a65e"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Fri Sep 11 17:03:58 2020 -0700"
      },
      "committer": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Tue Sep 22 16:39:51 2020 +0000"
      },
      "message": "Fix expected results for clang-r399163 update.\n\nllvm-objdump changed the format it uses for displaying assembly, so we\nmust also adapt all of the ART tests similarly, since they check for\nexact matching output. llvm-dwarfdump has similarly changed its outputs,\nso we adjust our expectations there too.\n\nBug: http://b/155835175\nTest: m test-art-host-gtest\nChange-Id: Iefdb7b98b5f87d9c7bbad1930a4393919d9b9b34\n"
    },
    {
      "commit": "49cde240141d84bc0d79ed2225aff5b1a7f8a65e",
      "tree": "b60cdbd4cc4ecc4e69007c41d299165fe49c1076",
      "parents": [
        "d0f71f26f0f23d7a054ccdde552a9c6003fd33a6"
      ],
      "author": {
        "name": "Andra Danciu",
        "email": "andradanciu@google.com",
        "time": "Tue Sep 22 08:38:50 2020 +0000"
      },
      "committer": {
        "name": "Andra Danciu",
        "email": "andradanciu@google.com",
        "time": "Tue Sep 22 12:00:59 2020 +0000"
      },
      "message": "X86: Add VarHandle.getAndAddAcquire and getAndAddRelease\n\nTest: art/test.py --host -r -t 712-varhandle-invocation --32\nTest: art/test/run-test  --dex2oat-jobs 4 --host --prebuild --compact-dex-level fast --jit --no-relocate --runtime-option -Xcheck:jni  954-invoke-polymorphic-verifier\nBug: 65872996\nChange-Id: I685831b0dc57c0a2781f512515480db7fc830750\n"
    },
    {
      "commit": "d0f71f26f0f23d7a054ccdde552a9c6003fd33a6",
      "tree": "4a86250064448fc85678969ba70e9c28d487e65a",
      "parents": [
        "fdb81da69234b482ddcf5089d6821bb60dc93868"
      ],
      "author": {
        "name": "Andra Danciu",
        "email": "andradanciu@google.com",
        "time": "Thu Sep 17 09:00:15 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 22 11:52:55 2020 +0000"
      },
      "message": "X86: Add the other get VarHandles (getVolatile, getAcquire, getOpaque)\n\nThis commit implements VarHandle.getVolatile, getAcquire and getOpaque\nintrinsics.\n\nTest: ART_HEAP_POISONING\u003dtrue art/test.py --host -r -t 712-varhandle-invocation --32\nTest: ART_HEAP_POISONING\u003dfalse art/test.py --host -r -t 712-varhandle-invocation --32\nTest: ART_USE_READ_BARRIER\u003dtrue art/test.py --host -r -t 712-varhandle-invocation --32\nTest: ART_USE_READ_BARRIER\u003dfalse art/test.py --host -r -t 712-varhandle-invocation --32\nBug: 65872996\nChange-Id: I38501c226c9d5af0a9e5a1230abcb3114aad4737\n"
    },
    {
      "commit": "fdb81da69234b482ddcf5089d6821bb60dc93868",
      "tree": "0344db14e014d49178e41fe4616caa7fe23c9bba",
      "parents": [
        "6edcc087ac793ab5d22846854c84df5320b6d75f"
      ],
      "author": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Tue Sep 22 09:28:58 2020 +0100"
      },
      "committer": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Tue Sep 22 09:57:10 2020 +0000"
      },
      "message": "Dedupe some code in hiddenapi.cc\n\nThis makes the CHECK message for superclasses also be printed\nfor interfaces, which is useful for debugging.\n\nTest: invoke hiddenapi encode with incorrect classpath\nChange-Id: I77e99d57c90eb6ff6b75c69c80bafba45ba5b82b\n"
    },
    {
      "commit": "6edcc087ac793ab5d22846854c84df5320b6d75f",
      "tree": "0dff891ce09455c09e2113306999d59001912e6c",
      "parents": [
        "71b26b2b5d3a963002d697c0a72c8fc4fe1c1db2"
      ],
      "author": {
        "name": "Andra Danciu",
        "email": "andradanciu@google.com",
        "time": "Fri Sep 18 09:21:26 2020 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Sep 22 07:45:57 2020 +0000"
      },
      "message": "X86: Implement VarHandle.getAndBitwise\u003cOperation\u003e intrinsics\n\nThis commit implements VarHandle getAndBitwiseAnd, getAndBitwiseOr\nand getAndBitwiseXor. Acquire and Release variants are also added, as\nthey are very similar.\n\nTest: art/test.py --host -r -t 712-varhandle-invocation --32\nBug: 65872996\nChange-Id: I3d9171f499f36e083cca5412746152944f60d773\n"
    },
    {
      "commit": "71b26b2b5d3a963002d697c0a72c8fc4fe1c1db2",
      "tree": "bb5a309719674b56778cf6270ed87053d48bf917",
      "parents": [
        "2eb1f8337b4852b25517d9197ce3f313248f9b85"
      ],
      "author": {
        "name": "Andra Danciu",
        "email": "andradanciu@google.com",
        "time": "Sun Sep 20 09:01:38 2020 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Sep 21 16:44:39 2020 +0000"
      },
      "message": "X86: Ensure atomicity for VarHandle.setRelease and setOpaque\n\nThis commit corrects setRelease and setOpaque: they both need to ensure\natomicity which until now was not guaranteed.\n\nTest: art/test.py --host -r -t 712-varhandle-invocation --32\nBug: 65872996\nChange-Id: Id12cc6beb60cb089cc72cd006694c375c40d77c9\n"
    },
    {
      "commit": "2eb1f8337b4852b25517d9197ce3f313248f9b85",
      "tree": "1c8960eff3fc9f575321abc41bd0e200c850648c",
      "parents": [
        "3c7bd3c783e5a171f7ae1e5bc1c11cb95b80a93b"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Sep 17 00:25:52 2020 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 21 02:34:07 2020 +0100"
      },
      "message": "Link liblz4 and liblzma dynamically again.\n\nThis reverts https://r.android.com/821441 in spirit - it was an attempt\nto avoid external shared lib dependencies before the APEX library\ndependency logic was built. Now these shared libraries will simply be\nadded as internal libs in the APEX.\n\nSoong doesn\u0027t propagate shared lib dependencies in static libs, so we\nhave to repeat them in some cases where libelffile and libart-dex2oat\nare used.\n\nTest: art/build/apex/runtests.sh\nTest: art/tools/buildbot-build.sh\nBug: 118374951\nChange-Id: I0a61b8388f12a749ab8ab5074866eebbad78548b\n"
    },
    {
      "commit": "3c7bd3c783e5a171f7ae1e5bc1c11cb95b80a93b",
      "tree": "23d17987145abef47875db7cdbf03e5b8eb276c5",
      "parents": [
        "46c2a23dbbe48c8ba1dd0238e844f9b5fda47ec7"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Sep 17 14:16:36 2020 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Sep 18 21:43:11 2020 +0000"
      },
      "message": "Fix issue where moving BitVector could cause free(nullptr)\n\nIf one std::move\u0027s a BitVector the old BitVector\u0027s storage_ will be\nnulled and size set to 0. This is fine but when ~BitVector is run the\nallocator will be asked to free a nullptr. Since this is generally not\nexpected by allocators, not supported by some and breaks the movement\nsemantics of C++ I\u0027ve changed the behavior to only Free memory\nif there is memory to be freed.\n\nTest: ./test.py --host\nChange-Id: I2716a604370c94bcea1a0989c5e6b94e45a2b063\n"
    },
    {
      "commit": "46c2a23dbbe48c8ba1dd0238e844f9b5fda47ec7",
      "tree": "d905233d37e6af9f4476b9d25b63baa7f8c4f5b3",
      "parents": [
        "b76cb89736d889929939223a22bc7fb44c6117b2"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Sep 17 14:01:55 2020 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Sep 18 21:43:11 2020 +0000"
      },
      "message": "Don\u0027t assume allocators clear memory\n\nBitVector, when constructed with an explicit size, would assume that\nthe allocator would zero out memory. This is not always true and could\nlead to unexpected outcomes.\n\nTest: ./test.py --host\nChange-Id: Ibe556ebf07b5081f110e76efa927b7fa677a607e\n"
    },
    {
      "commit": "b76cb89736d889929939223a22bc7fb44c6117b2",
      "tree": "35d1d0121d3ea7fcd5631b4b68a57266ecbf5412",
      "parents": [
        "25c3e4872b079157873515b983c6ee62da652c48"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Sep 17 13:57:00 2020 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Sep 18 21:43:11 2020 +0000"
      },
      "message": "Fix incorrect inheritance declaration in IndexIterator\n\nThe BitVector::IndexIterator was declared as inheriting from\nstd::iterator without any access modifiers. This prevented the\ninherited declarations from being visible, meaning it could not be\nused by much of our other iterator code. Declare this inheritance\npublic and add a test that the iterator can be used with\nTransformIterator.\n\nTest: ./test.py --host\nChange-Id: I7e6483e03d01fb447dd73f80a72173190cc5fe60\n"
    }
  ],
  "next": "25c3e4872b079157873515b983c6ee62da652c48"
}
