)]}'
{
  "log": [
    {
      "commit": "1e6be713904fb24db9e9cd1d38694309e03e5f29",
      "tree": "3981019976b3ae296c91b38da3738c834eddc2b3",
      "parents": [
        "0529cfa3efd0f6f7a167aa833fce99d6cf29a518"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Aug 18 16:28:06 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 19 08:14:35 2021 +0000"
      },
      "message": "Disable errorprone builds for art runtests\n\nThe individual art runtests were disabling errorprone checks, but\nnow Soong supports disabling errorprone builds completely.\n\nAlso disable errorprone for art_cts_jvmti_test_library, which also\ncontains some of the same problematic java files.\n\nBug: 197157393\nTest: m RUN_ERROR_PRONE\u003d1 javac-check\nChange-Id: Ia7f9e30962a96f6f751229109f9c4bc0eb8ad711\n"
    },
    {
      "commit": "da106a9998d951118c26cb326906817fe1528a4b",
      "tree": "1dbbd36d5dce96fa515d0bc3a7f98df01d908fd1",
      "parents": [
        "32f8b06742a651e3d674831a18970a7d8d34a31b"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Aug 18 05:48:12 2021 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 18 15:37:00 2021 +0000"
      },
      "message": "Fix odsign_e2e_tests to accurately get file modified time in ms.\n\nBefore this change, we were using \"stat -c \u0027%.3Y\u0027\" to get file modified\ntime in ms. However, the Toybox\u0027s `stat` implementation truncates to\ntimestamp to seconds, making the timestamp not accurate enough, and\ncauses the test to be flaky. Flakes observed when odrefresh compiles\nartifacts right after a boot in a test, where the compilation time and\nthe boot time only differ in milliseconds.\n\nThis change fixes the problem by using \"stat -c \u0027%y\u0027\" and converting the\nformatted time into timestamp in Java.\n\nBug: 193616266\nTest: atest odsign_e2e_tests\nChange-Id: I36c571e9cafc2b4e99ae20f196a138834d7f57e0\n"
    },
    {
      "commit": "32f8b06742a651e3d674831a18970a7d8d34a31b",
      "tree": "7be683461716782254b17fa80743fccb67a18e4f",
      "parents": [
        "496e837a3a4cdddc95f87c6bdf5ea455015f63d0"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Aug 02 14:35:49 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 18 14:40:28 2021 +0000"
      },
      "message": "Remove direct uses of C++ compiler from run-test build\n\nAvoid calling the system compiler as part of run-tests.\nThese uses are making porting to soong build tricky.\n\nIt would be possible to build the generators in soong,\nbut it is much simpler to just rewrite them in python.\nThis is in line with what majority of other run-tests do.\n\nBug: 147814778\nTest: test.py --host\nChange-Id: I97cd54c85db81d70795bd5321a452c3306f06b72\n"
    },
    {
      "commit": "8d3d64f57da1cd501405d1e5588cdf18ac1894ee",
      "tree": "7daa104b4868bea797e80f83b901d89a00faace3",
      "parents": [
        "a0e10b1691aca250f390704c73b18810b89302e1"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Jul 29 15:46:48 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 17 19:50:05 2021 +0000"
      },
      "message": "Make run-test build scripts more deterministic\n\nUse soong_zip instead of system zip to make the build deterministic.\nThis is guaranteed to be same on all machines and removes timestamp.\n\nFix helper utility which generated java source code with functions\nin random order for some tests.\n\nThere is still some non-determinism left caused by the smali\ncompiler generating non-deterministic dex output files.\n\nBug: 147814778\nTest: test.py --host\nChange-Id: Ibd1187e7cda840b647d3f13ad158952f235716bf\n"
    },
    {
      "commit": "a0e10b1691aca250f390704c73b18810b89302e1",
      "tree": "fdfdadd710d2be165885cd4bf9f897d453072071",
      "parents": [
        "bbd13da29ec2712d7ad664f1a65baa6d1823f480"
      ],
      "author": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Wed Aug 11 16:00:13 2021 +0000"
      },
      "committer": {
        "name": "Sorin Basca",
        "email": "sorinbasca@google.com",
        "time": "Tue Aug 17 13:17:04 2021 +0000"
      },
      "message": "Have counter pre-initialized in ParallelGC test\n\nBug: 94471075\nTest: testrunner.py --target --verbose --ndebug --gcstress --optimizing --debuggable -t 114-ParallelGC\nChange-Id: Id0b3640bc4e21caf187fd886d153e00761b9ba15\n"
    },
    {
      "commit": "e84ad2c045f3439b9e20b977d74c7e4e394417a2",
      "tree": "61a2e0602b2ee9b9f8a3e92b9bc7e8deb30d0784",
      "parents": [
        "3ba3edfee2592edeea4a4cf06336577178bf2b12"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Mon Aug 16 03:19:18 2021 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Mon Aug 16 08:41:11 2021 +0000"
      },
      "message": "Fix OnDeviceSigningHostTest to correctly get mapped artifacts.\n\nWe use `pidof` to get the pid of a process, in order to get the mapped\nfiles of the process from `/proc/\u003cpid\u003e/maps`. However, `pidof` may\noutput multiple pids in some cases, separated by spaces, which leads to\nweird errors because the test cannot handle such output. After this\nchange, only the first pid is taken.\n\nBug: 189467174\nTest: atest odsign_e2e_tests\nChange-Id: I6e137819fa032611636f92fdd2b6c9faf58acd25\n"
    },
    {
      "commit": "7de49d88a1fded45a20209b5335464dd84c3ea03",
      "tree": "e70608fd9d970418cc74e5fd8bcba55959c1ac63",
      "parents": [
        "668daf892a2b81b1acc09c354d705774daa17958"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Jul 14 11:09:49 2021 +0800"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Aug 11 00:21:46 2021 +0000"
      },
      "message": "Update on-device AOT compilation to cover all cases.\n\nAfter the change, odrefresh can properly determine whether to do\ncompilation when:\n1. There is a mainline update (either a normal one or a samegrade one) that updates the ART module.\n2. There is a mainline update (either a normal one or a samegrade one) that updates a module other than ART.\n3. There is an OTA that updates a boot classpath jar.\n4. There is an OTA that updates a system server jar.\n5. There is no change since the last run.\n\nTest: manual - 1. Install a mainline module without changing its\ncontents.\n    2. Reboot the device.\n    3. See if system_server components are recompiled.\nTest: manual - 1. Do nothing and reboot the device.\n    2. See if nothing is recompiled.\nTest: atest odsign_e2e_tests\nTest: atest art_odrefresh_tests\nBug: 189467174\n\nChange-Id: I43dea5380fcd221d5d4e34753d64d46be4dbc27e\n"
    },
    {
      "commit": "18bea3d9059f9dfe4a339e1b03a5755ec147dbee",
      "tree": "6937aa71f1d80f029dcd90107b87b052d8597a3a",
      "parents": [
        "58bfbad8fd812aeec7da141bbb4c8c8558763814"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Aug 02 12:26:15 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Aug 02 12:26:15 2021 +0100"
      },
      "message": "Document standalone ART gtests on device in `test/README.atest.md`.\n\nTest: Render `README.chroot.md` as HTML and check the output manually\nBug: 147820692\nChange-Id: I66831344e502c2df92d40ee74406c0ce5f93bbc6\n"
    },
    {
      "commit": "58bfbad8fd812aeec7da141bbb4c8c8558763814",
      "tree": "104df89de9b9f549cdbafb730ffa02fa9355995a",
      "parents": [
        "cbd809bc76184d274a5999f44669850877433f3c"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Jul 29 10:22:29 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Jul 30 15:44:16 2021 +0000"
      },
      "message": "Relax 053-wait-some sucess criteria\n\nDrop constraint on total extra delay. Shorten maximum wait time.\n\nBut then only only require success in 2 out of 3 runs.\n\nSwitch timing to use nanoTime() to get a monotonic clock. This might\nhave contributed to a few of the observed failures.\n\nBug: 175435088\n\nTest: Prun-test --host 053-wait-some\nTest: Retest with sleepy.wait(delay * 3/2); on line 66.\nTest: Retest with timing set to true in code.\nChange-Id: Ic8e392340ba1d70782f2a5303bfebf1d7251a86b\n"
    },
    {
      "commit": "de54ddda0d5b2cd3e396eb4e42ef04bb3e667609",
      "tree": "c66fd9615deff45c0e1693e83feb8618ffd21815",
      "parents": [
        "7d398b070dcbe3d79718b04882aa3989717f6dba"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jul 28 20:02:04 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jul 28 20:17:28 2021 +0100"
      },
      "message": "Add support for gtest options to `tools/run-gtests.sh`.\n\nHave `tools/run-gtests.sh` accept gtest options after `--` on the\ncommand line, and pass them verbatim to each executed gtest\nbinary.\n\nAlso document the use of gtest options with `tools/run-gtests.sh`\nin `test/README.chroot.md`.\n\nTest: art/tools/run-gtests.sh -- --gtest_list_tests\nTest: art/tools/run-gtests.sh \\\n        /apex/com.android.art/bin/art/arm64/art_cmdline_tests \\\n        -- --gtest_list_tests\nTest: Render `README.chroot.md` as HTML and check the output manually\nBug: 34729697\nChange-Id: If41181666eb52750444b1b40dfab0629f802b7b5\n"
    },
    {
      "commit": "7d398b070dcbe3d79718b04882aa3989717f6dba",
      "tree": "da1d1dccaf23c7c3d84696c427ed63d09cf15b7c",
      "parents": [
        "dc00c3aef3561f97ac0ffda60aee1254c6d5fb74"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jul 16 19:27:45 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jul 28 11:21:28 2021 +0000"
      },
      "message": "Add OkHttp tests to the generated ART MTS definition.\n\nAdd `MtsLibcoreOkHttpTestCases` to the generated ART MTS definition.\n\nAdd this test module to the existing ART MTS shard 02.\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art-shard-02\nBug: 167385698\nChange-Id: I7c0abf96a9e2a5b9bab0add638a3b51f51083dd4\n"
    },
    {
      "commit": "dc00c3aef3561f97ac0ffda60aee1254c6d5fb74",
      "tree": "b676f79954a3347de1447308962e35717d1b1e41",
      "parents": [
        "ce9b902a161b86eb2d5ef9fe4442305e25828d0a"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Jul 26 18:16:30 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Jul 27 20:27:48 2021 +0000"
      },
      "message": "Retry more carefully\n\nWhen we notice that notifications ran too quickly, start over from\nthe beginning. Just retrying the notiofications was ineffective,\npresumably because we already triggered a GC. but it somehow\ncompleted before we looked for blocking behavior.\n\nTest: Treehugger, some manual testing with code changes.\nBug: 190148586\nChange-Id: Ic4689165c5f37535b6ba0e05f03584cdc1d04c40\n"
    },
    {
      "commit": "a8f858e4eddeede8c465cc5b9fb40733e4649aed",
      "tree": "871974880c9348440ee5a10c3776df5579f45688",
      "parents": [
        "4aebd580c9c9de348b8fefed6353b86621cceb53"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Jul 27 05:41:31 2021 +0000"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Tue Jul 27 07:34:20 2021 +0000"
      },
      "message": "Verify that artifacts can still be loaded after a reboot.\n\nBefore this change, odsign_e2e_tests only verified that artifacts are loaded right after being generated. This change increases the test coverage.\n\nTest: atest odsign_e2e_tests\nBug: 194754733\nChange-Id: Icf7e630bbe31eddf2b442bb84bdff8d06943d1fc\n"
    },
    {
      "commit": "a0dd228837fbbacb3d29445bdf027649567f94fb",
      "tree": "f7f8c1c4fce0a752b27734c21b80ce38391fac36",
      "parents": [
        "017aae426873d57e260d5ae52fd5ce2ed2bddb1c"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Jul 22 21:09:46 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jul 23 11:40:07 2021 +0000"
      },
      "message": "odsign_e2e_tests: do not assume time monotonicity across reboots\n\nBug: 194365586\nTest: atest --iterations 10 com.android.tests.odsign.OnDeviceSigningHostTest\nChange-Id: I824da7fb9bfc0c455c852f99d2564e89728170ea\n"
    },
    {
      "commit": "1b621225a8869f930d530e4855157a444971aca1",
      "tree": "9885c16405db986e26419e4d0e001ab0c5fd48b1",
      "parents": [
        "fc42ce1a2b013059b7868ffc69d35fade6c5b743"
      ],
      "author": {
        "name": "Stelios Ioannou",
        "email": "stelios.ioannou@linaro.org",
        "time": "Thu Jun 17 14:15:45 2021 +0100"
      },
      "committer": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Thu Jul 22 13:07:21 2021 +0000"
      },
      "message": "ART: Implements a test option of forced generation of .cfg\n\nThis patch introduces the option to dump .cfg for any type of test. If\nthe \"--dump-cfg \u003cpath/graph.cfg\u003e option\" is present, then it generates\na .cfg following the same logic used for the \"checker\" tests but\nforcing it for any type of test. This option works for both host and\ntarget.\n\nBefore the artifacts are wiped, the generated .cfg file is copied to\nthe specified host path.\n\nNote that it will only dump a .cfg if the compiler type is set to\n\"optimizing\". Otherwise, it will throw a warning.\n\nTest: ./art/test/run-test  --host --simulate-arm64  --optimizing \\\n--dump-cfg \u003cpath\u003e/graph.cfg  \u003ctest\u003e\n\nChange-Id: I034b13b401bd1dee8d871297da8d09e807a35fd1\n"
    },
    {
      "commit": "81c76d8dac3f4c4d50cad21a0b94a155908bc7d1",
      "tree": "93196a264a2e52031ccf419adfe54acf57db36e3",
      "parents": [
        "edc005e396947fb4fa681c4a0be7beba66354239"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jul 16 10:48:15 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 20 08:46:12 2021 +0000"
      },
      "message": "Add BouncyCastle tests to the generated ART MTS definition.\n\nAdd `CtsLibcoreWycheproofBCTestCases` to the generated ART MTS\ndefinition.\n\nAdd this test module to the existing ART MTS shard 02.\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art-shard-02\nBug: 167385698\nChange-Id: Icf2a43b3bf1a765d420eeebf7433b90eb4424a55\n"
    },
    {
      "commit": "66934efcabd2b75fd84b3cc0a8665f4ecc136727",
      "tree": "b55d836b7df49dcc73126cbcded7a0e64451ba39",
      "parents": [
        "cf74ae7eae39affc8886b4bce5294aceebb908c3"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 07 14:56:23 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jul 15 14:26:13 2021 +0000"
      },
      "message": "Clean up ClassLinker::VerifyClass.\n\nAnd drop kAccWasVerificationAttempted. It\u0027s not needed and duplicates\nlogic already present in the compiler and the class status.\n\nThis CL also enables nterp running methods with soft failures.\n\nTest: test.py\nBug: 28313047\nChange-Id: I853a6f00b9e0c38091d86fcd77167c92ff5b383c\n"
    },
    {
      "commit": "dcb148a48a6bc69aba71cf3e2b8ab915ab3bf6d5",
      "tree": "6fb49285680464b01d93b881526d27f7d4e86733",
      "parents": [
        "d61b021fffc641906d1c531a233b62a8f66c184a"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Jul 15 09:22:14 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Jul 15 09:22:14 2021 +0100"
      },
      "message": "odsign_e2e_tests: Drop Java 11-ism\n\nUse Optional.isPresent() instead of Optional.isEmpty().\n\nBug: 193753166\nTest: m\nChange-Id: Ife11afa2310f9d78645354587e47ec98d21f07c5\n"
    },
    {
      "commit": "d61b021fffc641906d1c531a233b62a8f66c184a",
      "tree": "2e81f49ce6986fbc069286d28b48f41b19dce0c6",
      "parents": [
        "9e050ab1a061d9660eb0c1daa01a823ad75b0f05"
      ],
      "author": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Thu Jul 08 10:20:26 2021 +0800"
      },
      "committer": {
        "name": "Jiakai Zhang",
        "email": "jiakaiz@google.com",
        "time": "Wed Jul 14 23:37:32 2021 +0000"
      },
      "message": "Trigger on-device AOT compilation for system_server on mainline update.\n\nBefore this change, AOT compilation for system_server are triggered only\non ART mainline update, and only the system_server components in /system are compiled.\n\nAfter this change, AOT compilation for system_server are triggered on\nany mainline update that touches $BOOTCLASSPATH or\n$SYSTEMSERVERCLASSPATH, and the system_server components in mainline\nmodules are also compiled.\n\nTest: manual - 1. Modify a mainline module (such as com.android.wifi).\n    2. Install the modified module on a device and reboot the device.\n    3. See if system_server components are recompiled (while boot\n    classpath components are not).\nTest: atest odsign_e2e_tests\nTest: art/tools/run-gtests.sh -j8 apex/com.android.art/bin/art/x86_64/art_libartbase_tests\nTest: atest art_odrefresh_tests\nBug: 189467174\nChange-Id: Icaba5471e9f62fd035f0a24d662ecfaf2e064cab\n"
    },
    {
      "commit": "1b9d442dc906d0158300c5178683f417fa59b026",
      "tree": "dd52852cd7a16af7f5480c5f6c9213079a319dc8",
      "parents": [
        "52eebc756c96fbf71ad77b6d30bdff8a67723569"
      ],
      "author": {
        "name": "Chuck Liao",
        "email": "chuckliao@google.com",
        "time": "Mon Jul 12 01:25:23 2021 +0000"
      },
      "committer": {
        "name": "Chuck Liao",
        "email": "chuckliao@google.com",
        "time": "Mon Jul 12 02:58:46 2021 +0000"
      },
      "message": "Revert \"Do not create 4-byte sequences in `ConvertUtf16ToModifiedUtf8()`\"\n\nThis reverts commit e0a4f373dc4a738a2f26965a67d31239cbbd4f6a.\n\nReason for revert: DroidMonitor-triggered revert due to breakage https://android-build.googleplex.com/builds/tests/view?invocationId\u003dI44000009917256156\u0026testResultId\u003dTR23027520914949881, bug b/193363191\n\nBug: 193363191\nChange-Id: I2e7fe6de3f63864b58729d2c76e9ab5c95aa7983\n"
    },
    {
      "commit": "e0a4f373dc4a738a2f26965a67d31239cbbd4f6a",
      "tree": "b097c82983074f167ef1a14ab529750fcc842b9f",
      "parents": [
        "d920b7b01f92676eec2aa504ef6cf13c3f3283fc"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jul 08 11:22:53 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 09 23:17:15 2021 +0000"
      },
      "message": "Do not create 4-byte sequences in `ConvertUtf16ToModifiedUtf8()`\n\nThis encoding was different from the encoding in dex files\nand this caused wrong `Class::IsInSamePackage()` result\nfor proxy classes if the packages name contained at least\none character outside the BMP plane.\n\nThis essentially reverts commit\n    e16dad1d6388b0305f13e2171308a77f42e7c682\nbut keeps all tests, only updating expectations.\n\nAlso rename `CountUtf8Bytes()` to `CountModifiedUtf8Bytes()`\nto make the format explicit in the function name.\n\nTest: New test 181-proxy-non-bmp\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 192935764\nBug: 193141629\nChange-Id: I8e6e8b08174c7a6d3ff84b0e1e929056b3947785\n"
    },
    {
      "commit": "20b3c57170206febd53a20287bf6b7d5e620b62d",
      "tree": "b00ce13aa9fd9069dcf922f23901a6e70e9cb539",
      "parents": [
        "2ec38232c632a2c7f3069f02d5c4d7036f14575b"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Jul 08 20:41:48 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jul 09 14:00:00 2021 +0000"
      },
      "message": "odrefresh: add test for samegrade ART APEX install\n\nAdds a test that a samegrade ART APEX installation triggers\nrecompilation of AOT artifacts.\n\nThe test exposed situation where the first log entry is incorrectly\nlogged as zero which is also fixed here.\n\nBug: 192647837\nTest: atest odsign_e2e_tests\nTest: atest art_odrefresh_tests\nChange-Id: Iefb0fbbca119ed3e47bc17caa2ef8467b241b26c\n"
    },
    {
      "commit": "8782f17c8adcf729a535dc4f9c221b9602b71017",
      "tree": "3d4022fd1fb06912aa49cf2c09be178be823bedf",
      "parents": [
        "6a2e6893290eac83f59dac4ec5bc10abf985ae10"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Sun Jul 04 14:12:37 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jul 08 16:56:35 2021 +0000"
      },
      "message": "Add standalone ART gtests to the generated ART MTS definition.\n\nAdd these test modules to the existing ART MTS shard 00.\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art-shard-00\nBug: 167385698\nChange-Id: Ie7d291e1c68705a1693b15f019fadeeb502410a9\n"
    },
    {
      "commit": "6a2e6893290eac83f59dac4ec5bc10abf985ae10",
      "tree": "ee7f59774da19363bb867df9c0e9dc4f35f01fa2",
      "parents": [
        "592bceac0c030794175ae41d9c7e2ca092739d2e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Sun Jul 04 14:21:07 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jul 08 16:56:35 2021 +0000"
      },
      "message": "Add support for standalone ART gtests to MTS.\n\nThis change:\n- adds standalone ART gtests to test suite `mts-art`;\n- adds `MainlineTestModuleController` support to standalone ART\n  gtests. This in order to have these tests run in a Mainline context\n  only when the ART Module (either `com.google.android.art` or\n  `com.android.art`) is installed on the test device.\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art-shard-00\nBug: 167385698\nChange-Id: I97d9c00b7c10debff8c63e4ae75f90da02be271c\n"
    },
    {
      "commit": "1de4428db83a426fd7d0615dc9cdd204de41f6e3",
      "tree": "66e6141371e6a4e93f1eae26d3bac82b3a3e0085",
      "parents": [
        "515b0cf805c4ef9168516de814dabe087a037a69"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jul 05 11:44:39 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jul 08 10:03:23 2021 +0100"
      },
      "message": "Add standalone ART gtests to `TEST_MAPPING` group `mainline-presubmit`.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 626 ART run-tests out of 930 (67%).\n  Generated TEST_MAPPING entries for 376 ART run-tests out of 930 (40%):\n    376 ART run-tests (100%) in `mainline-presubmit` test group.\n     19 ART gtests (100%) in `mainline-presubmit` test group.\n    376 ART run-tests (100%) in `presubmit` test group.\n     19 ART gtests (100%) in `presubmit` test group.\n      0 ART run-tests (0%) in `postsubmit` test group.\n\nTest: Rely on TreeHugger presubmits\nBug: 178703264\nBug: 152379281\nChange-Id: I84da85e33c7ac1e44361bbb0b3bfa399ceab9b2f\n"
    },
    {
      "commit": "515b0cf805c4ef9168516de814dabe087a037a69",
      "tree": "41bc5dd107adb47a87eec95ab83f8c0be89ddf0b",
      "parents": [
        "3362cf159a0766f4a45691f7be568a88d0e60a8a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jul 05 19:21:15 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jul 08 08:37:21 2021 +0000"
      },
      "message": "Add more Libcore tests to the generated ART MTS definition.\n\nAdd `CtsLibcoreApiEvolutionTestCases`, `CtsLibcoreFileIOTestCases`,\nand `CtsLibcoreLegacy22TestCases` to the generated ART MTS definition.\n\nAdd these test modules to the existing ART MTS shard 02.\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art-shard-02\nBug: 167385698\nChange-Id: Icf0e1ff4dae52d95e9ba687010029ae40a6a43a4\n"
    },
    {
      "commit": "6cd7ab38ec76943d1b9cdc2191f1260188511b2b",
      "tree": "7aea757a61ab1ac917d09151f08a6fc440cfa358",
      "parents": [
        "b17c908047a2df675ecb4bd0aa2b21114376bbae"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 07 09:35:50 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 07 11:39:34 2021 +0000"
      },
      "message": "Only set nterp entrypoint after a class is verified.\n\nIf a method needs lock counting, we need to use the switch interpreter.\n\nTest: test.py\nTest: 825-unbalanced-lock\nChange-Id: I50629d20305e01ce2efe75606b00641052378234\n"
    },
    {
      "commit": "85d6bf94dc0d3a9c648dc6d614a293c4e416b247",
      "tree": "4405a93ef24c21e942a5c4eb95773fa3af257da2",
      "parents": [
        "24c080f628e7df51460332374f4ebcae2762d155"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jul 06 10:29:19 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jul 07 08:02:41 2021 +0000"
      },
      "message": "Test for static field VarHandle and class unloading.\n\nTest: Additional test in 710-varhandle-creation\nTest: testrunner.py --host --optimizing -t 710-varhandle-creation\nBug: 191980149\nChange-Id: I95b7d8c435fcf5286a57bba3d4877dfac65b5771\n"
    },
    {
      "commit": "4dc6589f392d46800a3b64625245bdfe4bbbfc2f",
      "tree": "b159262fd300a650ab89277667641ebe7e13d357",
      "parents": [
        "e0386f10d4591afa9823658099e4f2ac7a693255"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jul 05 17:43:35 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 07 07:13:01 2021 +0000"
      },
      "message": "Don\u0027t wrap VerifyError into NoClassDefFoundError.\n\nFollow RI behavior by returning the VerifyError. NoClassDefFoundError\nonly wraps initializer errors.\n\nAlso rename the field in ClassExt from verifyError to\nerroneousStateError for better clarity.\n\nAnd remove now unused feature of storing a class in the verifyError\nfield.\n\nTest: test.py\nTest: 824-verification-rethrow\nBug: 28313047\nChange-Id: I19383f7b74f22a62ab1e0b8a13bea75a14c7b33f\n"
    },
    {
      "commit": "e0386f10d4591afa9823658099e4f2ac7a693255",
      "tree": "433907529c66ad9ff68227b13c7e7c6ab4506c68",
      "parents": [
        "dd411969bb486c36081926d61dbcc0bfbc8066a5"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jul 05 11:35:10 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 06 17:06:58 2021 +0000"
      },
      "message": "Add standalone ART gtests to `TEST_MAPPING` group `presubmit`.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 626 ART run-tests out of 930 (67%).\n  Generated TEST_MAPPING entries for 376 ART run-tests out of 930 (40%):\n    376 ART run-tests (100%) in `mainline-presubmit` test group.\n    376 ART run-tests (100%) in `presubmit` test group.\n     19 ART gtests (100%) in `presubmit` test group.\n      0 ART run-tests (0%) in `postsubmit` test group.\n\nTest: atest --test-mapping art:presubmit\nTest: Rely on TreeHugger presubmits\nBug: 152379281\nChange-Id: Ibfcf212a4bc3094ca74f8f3c0f98469810c6ea19\n"
    },
    {
      "commit": "dd411969bb486c36081926d61dbcc0bfbc8066a5",
      "tree": "aa0601299b351d41c349e64ed468cb2c9b95e6f4",
      "parents": [
        "f040914a122be86e280efe5e31af1168f2b7c72e"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 25 08:55:22 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jul 06 13:58:08 2021 +0000"
      },
      "message": "VarHandle: add StaticFieldVarHandle class\n\nAdd StaticFieldVarHandle class to keep a live reference to the\ndeclaring class for the target field of VarHandle\u0027s targeting static\nfields.\n\nBug: 191980149\nTest: art/test.py --host -r -g\nChange-Id: I3a1cada6591d146b8f9fc9066105e3b617290185\n"
    },
    {
      "commit": "f040914a122be86e280efe5e31af1168f2b7c72e",
      "tree": "8ea3fa76be8f215d36977477015ed7f9f3a2f65c",
      "parents": [
        "b4bd92f27fb143135870d07b459ea52637afcfa5"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 22 15:45:03 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 06 10:52:35 2021 +0000"
      },
      "message": "Uncouple ART gtests from the ART APEX.\n\nIntroduce standalone versions of ART gtests on target, not bundled\nwith the ART APEX.\n\nSo far ART gtests have always been built as debug artifacts (and\nlinked against ART debug libraries). Make some adjustments in some of\nthese tests so that they can also work as non-debug artifacts and be\nused with the Release ART APEX (which contains only non-debug\nartifacts).\n\nNewly added tests:\n* `art_standalone_cmdline_tests`\n* `art_standalone_compiler_tests`\n* `art_standalone_dex2oat_tests`\n* `art_standalone_dexdump_tests`\n* `art_standalone_dexlist_tests`\n* `art_standalone_dexoptanalyzer_tests`\n  * Note: Requires root access to the device.\n* `art_standalone_libartbase_tests`\n* `art_standalone_libartpalette_tests`\n* `art_standalone_libartservice_tests`\n* `art_standalone_libarttools_tests`\n* `art_standalone_libdexfile_support_tests`\n* `art_standalone_libdexfile_tests`\n* `art_standalone_libprofile_tests`\n* `art_standalone_oatdump_tests`\n* `art_standalone_odrefresh_tests`\n* `art_standalone_profman_tests`\n  * Note: Requires root access to the device.\n  * Note: Some tests (2 out of 37) are failing in multi-ABI\n    contexts and have been temporarily disabled.\n* `art_standalone_runtime_compiler_tests`\n* `art_standalone_runtime_tests`\n  * Note: Some tests (16 out of 686) are failing and have been\n    temporarily disabled.\n  * Note: Some tests (4 out of 686) are failing in multi-ABI\n    contexts and have been temporarily disabled.\n* `art_standalone_sigchain_tests`\n\nTests not added:\n* `art_standalone_dexanalyze_tests`\n  * Reason: ART binary `dexanalyze` is not part of the Release ART APEX.\n* `art_standalone_dexdiag_tests`\n  * Reason: ART binary `dexdiag` is not part of the Release ART APEX.\n* `art_standalone_dexlayout_tests`\n  * Reason: ART binary `dexlayout` is not part of the Release ART APEX.\n* `art_standalone_imgdiag_tests`\n  * Reason: ART binary `imgdiag` is not part of the Release ART APEX.\n\nTest: atest -a art_standalone_cmdline_tests\nTest: atest -a art_standalone_compiler_tests\nTest: atest -a art_standalone_dex2oat_tests\nTest: atest -a art_standalone_dexdump_tests\nTest: atest -a art_standalone_dexlist_tests\nTest: atest -a art_standalone_dexoptanalyzer_tests\nTest: atest -a art_standalone_libartbase_tests\nTest: atest -a art_standalone_libartpalette_tests\nTest: atest -a art_standalone_libartservice_tests\nTest: atest -a art_standalone_libarttools_tests\nTest: atest -a art_standalone_libdexfile_support_tests\nTest: atest -a art_standalone_libdexfile_tests\nTest: atest -a art_standalone_libprofile_tests\nTest: atest -a art_standalone_oatdump_tests\nTest: atest -a art_standalone_odrefresh_tests\nTest: atest -a art_standalone_profman_tests\nTest: atest -a art_standalone_runtime_compiler_tests\nTest: atest -a art_standalone_runtime_tests\nTest: atest -a art_standalone_sigchain_tests\nTest: atest -a art_standalone_\\*_tests\nTest: m art_chroot \u0026\u0026 atest ArtGtestsTargetChroot\nBug: 162834439\nBug: 162734417\nChange-Id: I8beda9159d48c4ca495698357dc3bd95e3ff84d5\n"
    },
    {
      "commit": "8d5d58554519ffc673760ba932a77e113f68c5fe",
      "tree": "39b5519ce4ba35bf0d15fd7e799811ec9a5e1d76",
      "parents": [
        "c94ab92f6e61b9ea9d90bdb3d72c4d4e2aab9db5"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jun 30 17:58:18 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Sun Jul 04 18:27:22 2021 +0000"
      },
      "message": "Disable run-test `art-run-test-2040-huge-native-alloc`.\n\nThis test is currently failing when run with the `ArtRunTest` TradeFed\ntest runner.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  Generated Blueprint files for 626 ART run-tests out of 930 (67%).\n  Generated TEST_MAPPING entries for 376 ART run-tests out of 930 (40%):\n    376 tests (100%) in `mainline-presubmit` test group.\n    376 tests (100%) in `presubmit` test group.\n    0 tests (0%) in `postsubmit` test group.\n\n(No change to generated ART test files.)\n\nTest: atest --test-mapping art:presubmit\nChange-Id: I2facdab526a263ddefa4b316c31c89ea2a019f55\n"
    },
    {
      "commit": "cd133d85874d94cd05b5ba11389c851550e6d8f4",
      "tree": "514f7f1fa4bfaa9038e5c98a299543ccbb4bfdd6",
      "parents": [
        "971068dcaf5955634679dbfaf7b562ed52aff772"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 25 16:10:39 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jul 02 15:27:21 2021 +0000"
      },
      "message": "Verifier cleanups.\n\n- For apps \u003c\u003d S, keep the behavior of not analyzing an unreachable\n  handler. If \u003e\u003d T, we analyze it to simplify handling in the compiler.\n- Remove VERIFY_ERROR_SKIP_COMPILER and fold uncompilable methods into\n  checking HasInstructionThatWillThrow.\n\nTest: test.py\nBug: 28313047\nChange-Id: I20b65cf50def2a4a95617a03142575b8591ae0ec\n"
    },
    {
      "commit": "44dc8a300adb63b1bf465de555b7f8cce0481bb3",
      "tree": "095bc4801079f46f36a474db3e05dded5f7971f8",
      "parents": [
        "c9df5ce4cca760b27e9650363eaba5b92d87324c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jun 21 15:23:49 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 30 13:04:57 2021 +0000"
      },
      "message": "verifier: do not infer an instruction will throw.\n\nTurning a regular instruction into a throwing one has currently\nundesirable consequences:\n1) It leads to inconsistencies between the AOT verification and the\n   runtime verification.\n2) It treats the following code dead and does not analyze it. We treat\n   this as an non-compilable method as it\u0027s a lot simpler for the\n   compiler to consider all code verified.\n3) It prevents verification optimizations like doing one-pass\n   analysis over the code.\n\nTo be AOT / runtime consistent and follow RI behavior, stop considering\nsuch instructions as throwing.\n\nWe make this API version dependent for app compatibility reasons.\n\nTest: test.py\nBug: 28313047\nChange-Id: I9c847043d1f431f642731a70f651c93ef22fdf86\n"
    },
    {
      "commit": "55ffe7fa9ead8b501a756bb53f2571e3e7602f5e",
      "tree": "c4f63e30679b3e11d65268e52bf7548416f26792",
      "parents": [
        "8bf1da992a15a79ae76bcf53e9a2909912fbe96a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jun 14 15:18:54 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jun 28 11:40:15 2021 +0000"
      },
      "message": "Rename some ART gtest related Soong modules.\n\nART gtests currently link with the debug (\"d\") versions of ART\nlibraries. The gtests themselves and their libraries are compiled as\ndebug artifacts. For the sake of consistency, perform the following\nrenaming of ART gtest related Soong modules:\n\n* `libart-compiler-gtest` -\u003e `libartd-compiler-gtest`\n* `libart-dex2oat-gtest`  -\u003e `libartd-dex2oat-gtest`\n* `libart-gtest-defaults` -\u003e `libartd-gtest-defaults`\n* `libart-gtest`          -\u003e `libartd-gtest`\n* `libart-runtime-gtest`  -\u003e `libartd-runtime-gtest`\n* `libartbase-art-gtest`  -\u003e `libartbased-art-gtest`\n\nAs we plan to introduce non-debug (\"non-d\"), standalone versions of\nART gtests in the context of uncoupling ART (target) gtests from the\nART APEX (b/162834439), this renaming will help us, as we\u0027ll be able\nto use the old names of a \"d\" module for the corresponding \"non-d\"\nversion.\n\nTest: mmma art\nTest: Run ART gtests on host and target\nTest: env OVERRIDE_TARGET_FLATTEN_APEX\u003dfalse art/build/apex/runtests.sh\nTest: env OVERRIDE_TARGET_FLATTEN_APEX\u003dtrue  art/build/apex/runtests.sh\nBug: b/162834439\nChange-Id: I4ca27a7f445a760398f41a9e60a7008d77294505\n"
    },
    {
      "commit": "9e95eacdfbcf10dcd9fb62f99a7c6e18ff4b4787",
      "tree": "4c13c02985e38d3c304aa06c4a2c763c86c64d96",
      "parents": [
        "082659bcbf66c08e2ad9be88363c7ab88c50e114"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jun 23 16:42:18 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 25 09:08:59 2021 +0000"
      },
      "message": "Revert \"odrefresh: temporarily disable system_server artifact test\"\n\nThis reverts commit 6c30777a278d24e1a4c3226405416a85e6523d3f.\n\nBug: 180949581\nTest: atest odsign_e2e_tests\nChange-Id: Icce47524668dd2a92e7128af8242066741563e95\n"
    },
    {
      "commit": "f5958f8881e299c42ac923e4751f8f34d72db7f0",
      "tree": "db15e90ad9152c5cbd9515209841c7e71764a67f",
      "parents": [
        "1282f3805b1b6f50761f3e136d569e85dbda7090"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 02 14:48:14 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jun 24 07:54:05 2021 +0000"
      },
      "message": "Add x86 implementation for nterp.\n\nBug: 112676029\nTest: test.py, run-libcore-tests, run-libjdwp-tests\nChange-Id: I06bd2c9dde6834f371f042fadda2ced23e02b7ed\n"
    },
    {
      "commit": "1282f3805b1b6f50761f3e136d569e85dbda7090",
      "tree": "eaf74fab46eb96d51e327676e734a139afbe5fef",
      "parents": [
        "7f0473851d9a8d5644fde8c483390a985c238433"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Jun 21 20:22:12 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 23 19:22:50 2021 +0000"
      },
      "message": "Add sampling support in the metrics reporter\n\nThe sample rate percentage can be configured via 2 runtime\nflags (MetricsReportingMods and MetricsReportingNumMods).\n\nA runtime session will report metrics if and only if its\nsession id % MetricsReportingNumMods \u003c MetricsReportingMods.\n\nA value of 0 on the mods will effectively disable reporting,\nwhile configuring MetricsReportingMods to be equal to the\nMetricsReportingNumMods will enable reporting in all cases.\n\nTest: gtest\nBug: 170149255\nChange-Id: Ie1353e4fc0ff695fc627696145d95e9ccd3c6a94\n"
    },
    {
      "commit": "6c30777a278d24e1a4c3226405416a85e6523d3f",
      "tree": "d67168ccd4132f327bbd0f164f4b42c8e4c7a156",
      "parents": [
        "df0db3b60895184d164812fc1072957aa763f527"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jun 23 13:43:29 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jun 23 14:54:03 2021 +0000"
      },
      "message": "odrefresh: temporarily disable system_server artifact test\n\nNeeds an update to SELinux policy and zygote initialization.\n\nBug: 180949581\nFix: 191830020\nTest: atest odsign_e2e_tests\nChange-Id: Iaa1b017f21d0aa7288c18d3fb464b90d10c2a828\n"
    },
    {
      "commit": "1ff9056b87705e251501ea4d19280a7e4fe2d009",
      "tree": "aefef09122429a3960d810033443c461f73b5023",
      "parents": [
        "c893d1597b2e653659e0bc73cc2640590d01e8b0"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jun 16 14:37:42 2021 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Jun 21 14:27:16 2021 +0000"
      },
      "message": "Move metric reporting config to flags\n\nThis will enable us to enable periodic reporting according\nto the properties set in the device config.\n\nAs part of this CL, enable cmdline only flags for thing that\ndo not make sense to read from system properties.\n\nTest: gtest\nBug: 170149255\n\nChange-Id: I99bae25d89cf3a17906b4d3c671e5c63e9a3c180\n"
    },
    {
      "commit": "5da0507fd2d2b6342a9b87f4cce5ebbfa2c67dd3",
      "tree": "ebc00f7f0504da88d5e0e4d1d3858b77caa2fc3d",
      "parents": [
        "4ef36490afb1cfa6a29442c8d76938ec9fd9b9dc"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 18 15:51:12 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jun 21 13:03:16 2021 +0000"
      },
      "message": "Support inlining methods that may have soft verifier failures.\n\nTest: 536-checker-needs-access-check\nTest: 675-checker-unverified-method\nBug: 28313047\nChange-Id: Ie532014a658935a20dbd0b6acebfda07c28c4af4\n"
    },
    {
      "commit": "602da4f604a15249f7838eff36df2f75af72e27f",
      "tree": "3c561bed21cdbcc87f40c4046356e60b62b53c59",
      "parents": [
        "2af026df0beca1fe51d58e1d3163ee7678e6078b"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Jun 14 17:51:41 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Sat Jun 19 22:06:55 2021 +0000"
      },
      "message": "Further improve 2040-huge-native-alloc reliability\n\nAdd trace variant to knownfailures.\n\nAdd a way to query the current GC counter. Use that to retry in the\nevent of an unexpectedly early GC, and to fail if we don\u0027t see\na newly completed GC.\n\nDoes not yet address \"excessive blocking\" issue we\u0027ve seen\noccasionally. The addition of a less timing-sensitive success\ncriterion does give us more options.\n\nTest: Check retry path with temporary code change; Treehugger.\nBug: 190148586\nChange-Id: Ide2f6f721a86296042fcc66705cc110335f3df9b\n"
    },
    {
      "commit": "028cc7e1e87d2ea1cf3f56360343cff8c3334f36",
      "tree": "2181926bacd746425605d6b5fec80e6549918ba0",
      "parents": [
        "17374091085affd929d03664bee5a827e76b1b21"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 16 15:29:19 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 18 08:32:56 2021 +0000"
      },
      "message": "Disable compact dex code item deduping.\n\nIt conflicts with thread interpreter cache, where the interpreter\nexpects that once an entry is in the cache, it doesn\u0027t need to\nperform access checks again.\n\nTest: 536-checker-needs-access-check\nBug: 191252775\nChange-Id: I65999abc8afe31e4f4bf2ca403432d6cd8be70ee\n"
    },
    {
      "commit": "71b2cb54099218952385c8c295dbff8be81263ce",
      "tree": "eb63230d86e92b12af34fc2ea3d3290352855bf0",
      "parents": [
        "885929fda9e1247910aa1f68f982d098fb84c843"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jun 16 20:08:16 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Jun 17 08:47:26 2021 +0000"
      },
      "message": "odrefresh: fix instruction set selection.\n\nRefactoring led to the instruction-set argument being dropped in\nodrefresh. This manifested itself as failures in the odsign_e2e_tests\nas the secondary zygote was running in jit-zygote mode.\n\nRe-enables the verifyGeneratedArtifactsLoaded test and enforces a\ndeterministic order for the odsign_e2e_tests.\n\nBug: 191113888\nTest: atest odsign_e2e_tests\nChange-Id: I5308a6cf9ddf16e2991bfaf9c6f27bd7e8ff0aff\n"
    },
    {
      "commit": "319333f6ea3408b8c99bd9c644f0f34b66fe31b8",
      "tree": "b2eec6f9bdc00c3e22a28d5f9bb81912784812f6",
      "parents": [
        "ecaf7d1657d8e92697775d3979ff42c59e5cfc89"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jun 16 09:19:36 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jun 16 09:20:25 2021 +0100"
      },
      "message": "odrefresh: temporarily disable test\n\nTest is failing on zygote64.\n\nBug: 191113888\nTest: atest odsign_e2e_tests\nChange-Id: Idf06d0a875d4d3daf3699015ceb92832647ad263\n"
    },
    {
      "commit": "7f21ebe84b726081874cd2bd3fc8dd1ea39aa2d8",
      "tree": "867fdf002d67c11ba4f63af71fe415ce7a4a0186",
      "parents": [
        "0886d4e7e0243a02c081d6015de88e10f7eb79f5"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jun 14 18:26:11 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jun 15 12:06:10 2021 +0000"
      },
      "message": "Fix instructions for running target ART gtests in `chroot` with Atest.\n\nWe currently have to manually build `art_chroot` manually before\ninvoking `atest ArtGtestsTargetChroot`, because of build system\nlimitations; adjust the ART testing documentation until we find a way\nto address this build system dependency issue.\n\nTest: Render `README.atest.md` as HTML and check the output manually\nBug: 187416712\nBug: 147820692\nChange-Id: I5c5d13ca49d65b6737fb58bd3f6778a560087739\n"
    },
    {
      "commit": "f761f5887918375b842e4cc62ed9cbe7521c8444",
      "tree": "5cc23ca0310d55ac2f9a1dcd8959351f1376745b",
      "parents": [
        "890f2eb950930b9054bca6a77fd19f0e6c1a9c9b"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jun 09 10:50:57 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Jun 10 08:00:22 2021 +0000"
      },
      "message": "Revert^2 \"odrefresh: compilation backoff\"\n\nAdds backoff logic to limit attempts odrefresh tries to compile. It\nwill always recompile if the APEX is updated or the input JARs change,\nbut if compilation fails for any reason then odrefresh backs off\nexponentially in days.\n\nRelands commit 6859ffca5ffd15128459293046590488008221ff. The\nodsign_e2e tests required updating to remove the compilation log whose\npurpose is to backoff compilation attempts in the wild.\n\nBug: 187494247\nTest: atest art_odrefresh_tests\nTest: atest odsign_e2e_tests\nChange-Id: Id41ee875cf1ca376f8e2ae05a43d0f6f74a9995f\n"
    },
    {
      "commit": "094b1cfc9fa9e1c02238a2352c190be1746f5622",
      "tree": "2ce218587228aafd5cdaf3bd17ee2cecde484957",
      "parents": [
        "4f6bb446f8fbaa192f4e5b69734414c66d5e1bae"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Jun 08 09:28:28 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 09 11:34:22 2021 +0000"
      },
      "message": "odrefresh: enable loading of system_server image files\n\nFix check in ValidateBootImageChecksum() to account for image files\nwith multiple components which exists for boot-framework when\ncompiling on device.\n\nUpdate logic for only_load_system_executable to be\nonly_load_trusted_executable and treat /system and the ART APEX data\ndirectory as trusted.\n\nAdd test to check .art,.odex,.vdex files derived from the\nsystem_server classpath are mapped when the ART module updates.\n\nAdd test to check .art,.oat,.vdex files for the boot class path\nextensions are present in the zygote processes.\n\nBug: 180949581\nTest: atest com.android.tests.odsign.OnDeviceSigningHostTest#verifyGeneratedArtifactsLoaded\nChange-Id: I3114fc6393402d8da2eb16ba756ab5fab713dc20\n"
    },
    {
      "commit": "d0020ba4148f08b9a3e0fa0a543ab8a76277ba36",
      "tree": "cc569802ede27e84ec95e866a6b6a433d0aa1758",
      "parents": [
        "4573be38b0fb938c1177b8aa474e980c64ab5587"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Jun 07 15:44:45 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Jun 08 15:23:20 2021 +0000"
      },
      "message": "Make 2040-huge-native-alloc more robust\n\nMost importantly, call gc() before we start, so we start with a clean\nslate.\n\nAllocate a bit more to make sure we\u0027re over the threshold for\ntriggering blocking.\n\nGet a third reference time. Try twice to trigger a blocking GC.\n\nBug: 190148586\nTest: run-test --host 2040-huge-native-alloc\nChange-Id: If7f8aa8baec715c6f295384ce70b0b349ea2c71d\n"
    },
    {
      "commit": "5b3c1ec1fc1c723bd091641d0c578a377d56fa09",
      "tree": "0cc4b3a0ff47b9fdce8c5ecc1184ad34f9d6f4ed",
      "parents": [
        "14a5151ea476d722b48aa58069451a48580998df"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Jun 04 14:09:38 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Sat Jun 05 01:28:17 2021 +0000"
      },
      "message": "Disable 2040-huge-native-alloc for interpreter\n\nBug: 190148586\nTest: Treehugger\nChange-Id: I6c4b8bb8a8a95b3ec104d22238c6652cf92ea8a9\n"
    },
    {
      "commit": "03e214f9581c2be62bdedad3632fd5ecbefb27cd",
      "tree": "4b390f31cf3e7dd7712537e6206cf7a746e04d9f",
      "parents": [
        "5b83a1b2c4b2dd3569d95ca646d7a31a31f73d4d"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Jun 03 14:55:04 2021 -0700"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 04 10:43:59 2021 +0000"
      },
      "message": "Disable 2040-huge-native-alloc on gcstress \u0026 asan \u0026 debuggable\n\nGcstress:\nWe trigger too many GCs to count on their absence, as this test does.\n\nAsan:\nApparently GCs don\u0027t get triggered. Entirely possible, since it\u0027s\nsensitive to other allocated native memory, and asan presumably\nallocates a lot of other memory. I did not investigate in detail.\n\nBug: 190148586\nTest: Treehugger\nChange-Id: I57fe519eab8aba51e91485d56ae21a2740f5e027\n"
    },
    {
      "commit": "6031ec1e5d916c3537dbbacb14bc16c6fff4bf3c",
      "tree": "b1de00d51735244272733237889077dd39571287",
      "parents": [
        "c8451cb4302e028d4e106c1a2a44749d5cb9bb31"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue May 25 22:08:59 2021 +0000"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Jun 03 18:29:57 2021 +0000"
      },
      "message": "Re-land \"Add 2040-huge-native-alloc test\"\n\nThis reverts commit c256028e1fb92b47c741db67b6bc8ca6995e6c1b.\n\nReason for revert: The underlying problem is fixed, and we need\nbetter testing.\n\nPS2 and later also contains the following change:\n\nMore aggressively notify the collector of native allocation, to account\nfor the fact that on host, only one notification in 384 is pass through,\nsince mallinfo is SLOW.\n\nThis version once again assumes that we sleep if necessary to allow the\ntriggered collection to both get started and complete.\n\nTest: Treehugger\nBug: 189150802\nBug: 189955496\n\nChange-Id: I2ec4ca9a37fa9dbd9c7d351208d3d5ca2d4ee5d4\n"
    },
    {
      "commit": "654f01cd509ca11eae22177d4e764f1241fb3a53",
      "tree": "d17db438be0691a5e4e6b4721b670530e336690e",
      "parents": [
        "028c7efaf7321a1e253fb4d9dcc5d85e8a9e6d68"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed May 26 16:40:20 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 28 00:31:54 2021 +0000"
      },
      "message": "Fix lock visiting for synchronized native methods.\n\nThe `GetGenericJniSynchronizationObject()` function was used\nin the wrong context. As documented, it can be used only for\na method with a GenericJni frame and also on the top of the\nstack. When visiting locks, we can have a non-GenericJni\nmethod frame as well as a method deeper in the stack.\nReplace the wrong use with specialized code.\n\nTest: Added regression test to 178-app-image-native-methods\nTest: testrunner.py --host --debug --ndebug\nBug: 172332525\nBug: 189235039\nChange-Id: Ia26f0b980c04a766e31b1588a1c011bcf46c90d8\n"
    },
    {
      "commit": "d196f661fae8473dedfd4b544c6873144202bc78",
      "tree": "86cfc190bd2a5e57a86e10f3ae5606643bb25c84",
      "parents": [
        "46bf0f2c4423bc6e7c59b228d5c4a17e4a4e6200"
      ],
      "author": {
        "name": "Nikita Iashchenko",
        "email": "nikitai@google.com",
        "time": "Tue Apr 27 18:31:03 2021 +0100"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Wed May 26 00:26:18 2021 +0000"
      },
      "message": "Rename setters to conform Android API guidelines\n\nBug: 184654804\nTest: m droid\nChange-Id: I6ae5dd363bdb32cea6acd9dab7afbd4579fb0c4c\n"
    },
    {
      "commit": "9d27fbc8ced914f4726187920a7794b07eca3e71",
      "tree": "0fd6eb99d0766ac78513d650d629f217273ab294",
      "parents": [
        "e3124d26d725a2b042b4409abfb30a39bb76794d"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri May 21 09:23:38 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue May 25 16:34:18 2021 +0000"
      },
      "message": "Improve suspension timeout diagnostic and fix race\n\nFix a data race on state_and_flags. Since the access was volatile\nand there are system calls in the loop, this is extremely unlikey\nto have casused the bug here, but ...\n\nSo, assuming this is still broken, produce more informative\noutput once we time out.\n\nRemove unused argument from SuspendThreadByPeer(). It made the\nlogic more complicated and made it harder to reason about\ncorrectness.\n\nRemove dead code after LOG(FATAL, ...)\n\nBug: 181778559\nTest: TreeHugger, temporarily paste log message into hotter path.\nChange-Id: I6f3455925b3a3f4726a870150aeb54ea60a38d67\n"
    },
    {
      "commit": "e3124d26d725a2b042b4409abfb30a39bb76794d",
      "tree": "6b5a0ccda438fd0c1c68ff995eb64bdad4f7eb08",
      "parents": [
        "3156695aa5a69e3ca27b5befcaf0934e7e62e9fb"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon May 24 17:41:34 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue May 25 08:46:26 2021 +0100"
      },
      "message": "Add liblog to art_gtest_defaults\n\n(cherry picked from commit 5ca3da72385a8d0d847cedccfec023d1f40dc590)\n\nBug: 185256332\nBug: 188879721\nTest: TH\nMerged-In: Id1d9a618513c8f60cce25929b853f7c6f33e68c1\nChange-Id: I638562eeda92d47e23c2b8632cf48fe697289740\n"
    },
    {
      "commit": "fcc922a54093aea69c92a9b0fcf4b9a99e8a97a1",
      "tree": "73a31de5157804c674fe06bfbbc7d84c26222b7a",
      "parents": [
        "d42902692d1fbb101a3c60ba314df69005da9c83"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri May 21 11:32:33 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon May 24 16:07:35 2021 +0000"
      },
      "message": "art: unbreak dalvikvm builds on host\n\nAdds liblog shared library dependency for host builds in a few places.\n\n(cherry picked from commit 69b282642746aa7e5304d561281aafbfad4aef36)\n\nBug: 188879721\nBug: 188067586\nTest: [master-art-internal] art/tools/buildbot-build.sh --host\nMerged-In: I102a8c8b5fe134047ac71fb940d063e2b1100630\nChange-Id: Ida196259a6061cc65e1c3593ae831d0ee75fe745\n"
    },
    {
      "commit": "8f8935ce292bec925e8a18719227df9ad06a111d",
      "tree": "7846fff48a2188ba93e454cc72f4d4221a3bf014",
      "parents": [
        "c13227cd5b913f2c1c7ca1b7b39676cb4fbe077c"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu May 20 17:30:52 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon May 24 12:23:49 2021 +0000"
      },
      "message": "Add `CtsLibcoreJsr166TestCases` to the generated ART MTS definition.\n\nAdd this test module to the existing ART MTS shard 02.\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art-shard-02\nBug: 167385698\nChange-Id: Ie80a43e745c8a04f1d43980e25cc7e18a67365f1\n"
    },
    {
      "commit": "3d05e61a420e499bfc9221445237c964e0a8aa63",
      "tree": "b58b5583ae24c17d0dbf525628f2324872a00b84",
      "parents": [
        "642c8f6e69929f46a1a52583cb55b68d83828a02"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu May 20 15:58:01 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri May 21 11:20:02 2021 +0000"
      },
      "message": "Put 100% of ART run-tests in `TEST_MAPPING` group `mainline-presubmit`.\n\nInclude remaining ART run-tests into the `mainline-presubmit` test\ngroup. This progressive rollout is to make sure introducing ART\nrun-tests to this test group won\u0027t disturb/break Android presubmits.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 625 ART run-tests out of 929 (67%).\n  Generated TEST_MAPPING entries for 376 ART run-tests out of 929 (40%):\n    376 tests (100%) in `mainline-presubmit` test group.\n    376 tests (100%) in `presubmit` test group.\n    0 tests (0%) in `postsubmit` test group.\n\nTest: Rely on TreeHugger presubmits\nBug: 178703264\nBug: 152374989\nChange-Id: I58c2ad4669905d2fb22bb55d549f616de2266ba4\n"
    },
    {
      "commit": "ca15b8d4b05e374569fd98599b5c395b4aa655c7",
      "tree": "ab72586d846136b64ab2af8556e794893eb41780",
      "parents": [
        "2ce26fd4a022090e8613b8e2555f2c5e3be018c5"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Apr 23 12:25:08 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 20 22:22:29 2021 +0000"
      },
      "message": "testrunner.py: Add --build-only and --skip-build options.\n\nThe build stage is more expensive than the test stage\nand we do it redundantly repeatedly for all variants.\n\nMake it possible to separate the build and test stages,\nwhich will allow us to do the build just once on buildbots.\n\nThe proper solution is to move all the build work to soong,\nand we will be able to remove this code again at that point.\n\nBug: 188631922\nTest: testrunner.py --host --build-only \u0026\u0026 \\\n      testrunner.py --host --skip-build\nChange-Id: I542feac03acc25a853dbf7f1a2e5587a2c5d6d7a\n"
    },
    {
      "commit": "3ddf4d4916fdb7bc3157aa375fb1d670f4cf80bb",
      "tree": "45d67decea87e2f47339250a1bc6c253855d977a",
      "parents": [
        "06fb7fa55cca3210f38c92ac7cc7ad525ff30c83"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue May 11 10:19:28 2021 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu May 20 21:45:57 2021 +0000"
      },
      "message": "Update registerAppInfo signatures to accomodate more data.\n\nTest: m\nBug: 182793486\nBug: 185979271\nChange-Id: Ib92327e39bad5914d48ae8a37dd4b5092c5e1407\n"
    },
    {
      "commit": "56f2444d2e58f453c90b7ba8477da3f6b2c107cf",
      "tree": "0efcc199b54f8bf1e89c3123ceecb58653de9273",
      "parents": [
        "26e9e75dc4ef6fbe863651e29aaaeff00edcdf92"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue May 18 14:55:56 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed May 19 16:48:07 2021 +0000"
      },
      "message": "Regenerate ART test files (2021-05-19).\n\nDisable new run-test `730-cha-deopt` as it is currently failing when\nrun with the `ArtRunTest` TradeFed test runner.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 625 ART run-tests out of 929 (67%).\n  Generated TEST_MAPPING entries for 376 ART run-tests out of 929 (40%):\n    282 tests (75%) in `mainline-presubmit` test group.\n    376 tests (100%) in `presubmit` test group.\n    0 tests (0%) in `postsubmit` test group.\n\nTest: atest art-run-test-576-polymorphic-inlining\nTest: atest art-run-test-730-checker-inlining-super\nTest: atest --test-mapping art:presubmit\nChange-Id: I587b4df7af3021d800c346cb909e759051027cf1\n"
    },
    {
      "commit": "1dc77abf87d303a8f4aa35148c57f7ab20832222",
      "tree": "61f4aae7377072ad2a1f24e62043b86a6f49954c",
      "parents": [
        "496b9b43c987a2d769d0c178ee1d88cd92da84d9"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon May 10 17:44:05 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed May 19 14:31:13 2021 +0000"
      },
      "message": "Disable most ART source modules when ART prebuilts are enabled.\n\nAfter libdexfile_external was merged into libdexfile, libdexfile is an\nAPEX stub when prebuilts are enabled, and that cannot be used to build\nlibart and all the other internal modules that depend on it.\n\nThis CL:\n\n- Changes art_defaults to disable native modules when building from\n  prebuilts. Some other modules that depends on them, like the\n  art-script sh_binary, also get disabled.\n- Consolidates the makefile sections that are disabled when building\n  from prebuilts so that only a small bit is still enabled then.\n- Temporarily removes the prebuilt for libctstiagent and activates its\n  source even when prebuilts are used, to work around sdk_version\n  problem (b/187288515).\n- Removes explicit \"enabled: true\" in a couple of places that would\n  override the inherited flag that lets us disable them in builds from\n  prebuilts.\n- Makes some Soong defaults available to libcore.\n\nTest: m checkbuild\nTest: art/build/build-art-module.sh --skip-apex\n      packages/modules/ArtPrebuilt/update-art-module-prebuilts.py \\\n        --local-dist out/dist/ --skip-apex\n      m SOONG_CONFIG_art_module_source_build\u003dfalse droid\n      m SOONG_CONFIG_art_module_source_build\u003dfalse checkbuild\nChange-Id: Ief60b933cd6273fc8b85fe7637b99ba1b78505f6\n"
    },
    {
      "commit": "c63d9672264e894d8d409e8d582b4e086b26abca",
      "tree": "1e285cbab4c71aea3c8c37b4e4c5e8241a3ce117",
      "parents": [
        "0bf5b6729be507f1e78fc61f17554393dd978e46"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 31 15:50:39 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon May 17 13:42:11 2021 +0000"
      },
      "message": "Rewrite profile file format.\n\nThe new format contains one mandatory section and several\noptional sections. This allows extending the profile with\nnew sections that shall be ignored by old versions of ART.\n\nWe add an \"extra descriptors\" section to support class\nreferences without a `dex::TypeId` in the referencing dex\nfile. Type indexes between the dex file\u0027s `NumTypeIds()`\nand `DexFile::kDexNoIndex16` are used to index these extra\ndescriptors. This prepares for collecting array classes\nwhich shall be tied to the element type\u0027s dex file even\nwhen the array type is not needed by that dex file and has\nbeen used only from another dex file. It also allows inline\ncaches to be self-contained, so we can remove the profile\nindex from data structures and serialized data.\n\nThe creation of the the binary profile from text files is\nupdated to correctly allow array types to be stored as the\nprofiled classes using the \"extra descriptors\". However,\nthe interface for filling in inline caches remains unchanged\nfor now, so we require a `TypeId` in one of the processed\ndex files. The data collection by JIT has not been updated.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing --speed-profile\nTest: boots.\nTest: atest BootImageProfileTest\nBug: 148067697\nChange-Id: Idd5f709bdc0ab4a3c7480d69d1dfac72d6e818fc\n"
    },
    {
      "commit": "2ef367acf3f95ee4c0459b73c3b18613cfa7d74d",
      "tree": "193c094b51ab441159f04e40324d4ac51e1d32f9",
      "parents": [
        "833d76f4bdca60ed06a76b3d248ea643efafb844"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon May 10 14:14:03 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri May 14 16:46:48 2021 +0000"
      },
      "message": "Ensure verifier deps in the vdex file are 4-byte aligned.\n\nIt simplifies the encoding / decoding logic.\n\nTest: 663-odd-dex-size\nBug: 186405713\nChange-Id: I26bcf2b6cfa16548a520a501e6e1b38c238eb1df\n"
    },
    {
      "commit": "ec06809b9fb7d4a0d2c3e46066bd37034130e53b",
      "tree": "c3a69b142e38d249a01ed425cde23caa78c1d36c",
      "parents": [
        "1651c6050d913fb38ebd293df9da6d189eb3851d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon May 10 17:28:32 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri May 14 07:38:39 2021 +0000"
      },
      "message": "Reland \"Devirtualize to HInvokeStaticOrDirect.\"\n\nThis reverts commit 39d4df62d4e2606073d05cc363370db825ad7b9f.\n\nReason for revert: fix JIT-zygote issue.\n\nTest: JIT zygote boots.\n\nChange-Id: I895ad8e59e472fb662ca9bc5394c2fd9c6babc74\n"
    },
    {
      "commit": "1651c6050d913fb38ebd293df9da6d189eb3851d",
      "tree": "bd0ac66d37d6f72abcd19878571b6c97f65d2f09",
      "parents": [
        "b2e091b39176cbcf998284c97281bf21ba1a3539"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu May 13 14:24:06 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu May 13 19:53:06 2021 +0100"
      },
      "message": "Add 2001-virtual-structural-multithread to list of failures.\n\nBug: 176786675\nest: test.py\nChange-Id: Ib3e1beedbd0c72f7db4daf5339a8b6c1bfd0202a\n"
    },
    {
      "commit": "7e363b8a078ccc68a5666461c455cfc1d192b7b5",
      "tree": "6ca23e3efb66f73e8a8ad4cfa5aaa65e51ffd4e0",
      "parents": [
        "b94401e6e15903b64de709fd69863b6880cedd7c"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed May 05 13:10:42 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 13 15:42:46 2021 +0000"
      },
      "message": "Drop ro.debuggable restriction for NATIVELOADER_DEFAULT_NAMESPACE_LIBS.\n\nTo allow running tests on user builds. The (non)existence of the\nenvironment variable itself serves fine as a toggle, and it is hard to\ninject into the zygote environment on a user build anyway.\n\nAlso a few other cleanups from comments on\nhttps://r.android.com/1689792.\n\nTest: art/test/testrunner/testrunner.py --target --64 --optimizing\nBug: 130340935\nChange-Id: I1843a8bbfb5dadc560919022d1f2123eb652be5a\n"
    },
    {
      "commit": "b94401e6e15903b64de709fd69863b6880cedd7c",
      "tree": "cd1729038943aea0f3f1648109b095bb43d28530",
      "parents": [
        "3606cc69f5975d7ae81044a51706a6896d148781"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Apr 26 23:06:57 2021 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 13 15:42:46 2021 +0000"
      },
      "message": "Drop ANDROID_ADDITIONAL_PUBLIC_LIBRARIES.\n\nIt\u0027s not needed any more since libarttest(d).so is loaded from the ART\nlinker namespace.\n\nTest: art/test/testrunner/testrunner.py --target --64 --optimizing\nBug: 130340935\nBug: 167578583\nChange-Id: I785133e921277cb25360856e9af20fa681b54a3b\n"
    },
    {
      "commit": "dac82393785d1d2fddae6bf6d8364b55b001925a",
      "tree": "2870783966316c965d40c3a6cd4b2cadce632c79",
      "parents": [
        "b1db5a110d312c5a51a52f7f6bc870f9205b6ff8"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon May 10 15:44:24 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu May 13 08:49:06 2021 +0000"
      },
      "message": "Fix array location aliasing checks in LSE.\n\nTest: New tests in load_store_elimination_test.\nTest: New test in 539-checker-lse.\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 187487955\nChange-Id: Iff66d5406cf1b36c3bebbce1d48117f83bb50553\n"
    },
    {
      "commit": "41299bf5c8ed5dec2ce20f94fa77bb32c21d26b2",
      "tree": "0fb0a777ae46f0913fc05c107f14b0da54b31cde",
      "parents": [
        "95f4c66f72e4f9b1877e6f851ba2bb68d3f2f84c"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Tue May 11 14:07:25 2021 +0200"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed May 12 08:44:50 2021 +0000"
      },
      "message": "odsign_e2e_tests: Add required artifacts to test.\n\nMake sure we verify some critical parts of the boot class path actually\nexist as part of the test.\n\nBug: 187494247\nTest: atest od2sign_e2e_tests\nChange-Id: Ic94bc6dc87d5d3dcd20caeca0f815e71bc629873\n"
    },
    {
      "commit": "0108f0d5c1e820d3a4bb0d90aad989b89e28784a",
      "tree": "90ee7820c08edc689bea888e6cf56cabb66fa11f",
      "parents": [
        "9a5a2b817c53fe86b0ebbc9390a97e7c5acbb44e"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun May 09 21:56:04 2021 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon May 10 11:02:49 2021 +0000"
      },
      "message": "Use only one core on fugu by default.\n\nMake the current buildbot setting the default so\nthat we can remove the setting from the buildbot.\n\nTest: \"testrunner.py --host\" and check the concurrency\nTest: \"testrunner.py --target\" and check the concurrency\nChange-Id: I0293d00e7ace1087341a387802a1b2bfeb1cb719\n"
    },
    {
      "commit": "266594305a1a1a140a911685cbb5a1ded45426f7",
      "tree": "0406bf1264fffb62a00f3f87ddf0e319692fb3d0",
      "parents": [
        "816cab342a8db032b660018d4c933032a326b5c8"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Apr 16 19:55:03 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon May 10 09:40:21 2021 +0000"
      },
      "message": "Avoid loading external libraries from ARTs internal linker namespace\n(reland).\n\ndlopen() calls in ART will use its own linker namespace\n(com_android_art). That\u0027s appropriate for internal libraries in the\nAPEX, but not when ART loads libraries on behalf of external requests.\nIn those cases we should instead use android_dlopen_ext to load them\nfrom the system namespace, i.e. the one that searches /system/lib(64).\n\nThe linker config has been using allow_all_shared_libs, so any loads\nfrom com_android_art fall back to the system namespace, and hence\ndlopen() usually works regardless which namespace it ought to use.\nHowever we want to drop allow_all_shared_libs, so we need to figure out\nwhich dlopen\u0027s should use which namespace:\n\n1. Several ART libraries are loaded on-demand, e.g. libart-compiler and\n   libart-disassembler. There are also those going through the runtime\n   plugin system, like libperfetto_hprofd and heapprofd_client_api. All\n   these are internal or at least statically known (so we can provide\n   links for them in the linker config), and should continue to use\n   dlopen from the ART namespace.\n\n2. libnativeloader loads the preloadable public libraries from\n   system/etc/public.libraries.txt, and should use the system namespace\n   for that.\n\n3. libnativebridge loads the native bridge implementation specified\n   through the command line (or ultimately the system property\n   ro.dalvik.vm.native.bridge). It\u0027s not part of the ART APEX and not\n   known statically, so the system namespace should be used.\n\n4. libnativeloader also loads JNI libraries from classloader\n   namespaces, but has a fallback if no such namespace can be found\n   based on caller location. Fall back to the system namespace to\n   handle libraries loaded during the preload phase in the zygote.\n\n5. JVMTI agents are loaded by dalvik.system.VMDebug.attachAgent().\n   Treat these too as external libraries - they are loaded in a way\n   similar to JNI libraries through OpenNativeLibrary in\n   libnativeloader, so are covered by #4.\n\n   They are normally loaded by apps with a classloader, but a special\n   case is adbconnection which loads libjdwp.so in the ART APEX without\n   one and hence falls back to the system namespace. We therefore need\n   to create a link for it (https://r.android.com/1690889,\n   https://r.android.com/1690795).\n\nAll cases #2-#5 are covered by libnativeloader and libnativebridge.\nIntroduce OpenSystemLibrary, and since libnativeloader depends on\nlibnativebridge, put it in the latter to be usable from both. It\u0027s only\nan internal dependency not exposed in the APEX stubs.\n\n(Another possibility could be to put it in the generic toolbox lib\nlibartbase, but it\u0027s split into -d and non-d variants, and we don\u0027t\nwant to split libnative{loader,bridge} that way.)\n\nSince libnativeloader_test no longer needs to mock dlopen we can\nsimplify it to a more regular test that loads the tested libs\ndynamically.\n\nThis relands https://r.android.com/1673312 without setting\nANDROID_ADDITIONAL_PUBLIC_LIBRARIES in run-test-jar, because that made\nlibnativeloader try to preload internal libraries from the system\nnamespace.\n\nTest: mmm art\nTest: atest art/libnativeloader\nTest: atest CtsJniTestCases\nTest: Cuttlefish app compat test that uses NDK translation\nTest: Manual tests with Android Studio TI agents\n  (http://g/art-module-team/7Jy3Tg7LCh0)\nTest: art/test/testrunner/testrunner.py --target --64 --optimizing\n  in chroot on cuttlefish\nBug: 130340935\nChange-Id: I7fb32faacc1c214402b58125d8190e97bbbcfad2\n"
    },
    {
      "commit": "053e1383c721b0a1c4f87b2d391ab392c64caf84",
      "tree": "d6698eaf3f64440b47c06e5d6f670be06cfcc80e",
      "parents": [
        "bcec38f7b7dc92d89ce9d49b8c1ba9afe87dab6b"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed May 05 16:07:27 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon May 10 08:12:24 2021 +0000"
      },
      "message": "Link libvixl statically.\n\nInstead of including shared library libvixl.so in the ART\nModule, link libvixl statically to all binaries that use it,\nnamely libart-compiler.so and libart-disassembler.so which\nshall increase in size with the additional libvixl code.\n\nThe ART Module size with default libvixl symbol visibility:\n  - before: 88460730B\n  - after: 86973943B (-1.42MiB)\nWith hidden libvixl symbol visibility:\n  - before: 88337851B\n  - after: 84962808B (-3.22MiB)\n(This is with master-art where we do not have a boot\nprofile and therefore compile more code in boot image.)\nThe change from default to hidden visibility is done in\n    https://android-review.googlesource.com/1697237 .\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nBug: 186902856\nChange-Id: I040b0115b94b8690ee7be53e3ded8610d9f13e99\n"
    },
    {
      "commit": "c256028e1fb92b47c741db67b6bc8ca6995e6c1b",
      "tree": "67017de04066739dc1695153a26feec8c64c93e4",
      "parents": [
        "91d2c5c1d1157f27e723d8ebee458913c6f0ed43"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Sat May 08 00:26:05 2021 +0000"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Sun May 09 18:29:34 2021 +0000"
      },
      "message": "Revert \"Add 2040-huge-native-alloc test\"\n\nThis reverts commit be0d891ac881f0dc4a2650014433b0354f9d7593.\n\nReason for revert: b/187531176 . This is likely to start failing as a result of backing out a prior change.\n\nChange-Id: I5195bbfb0e251e27a4be03cb2d0ebb185fccdc12\n"
    },
    {
      "commit": "be0d891ac881f0dc4a2650014433b0354f9d7593",
      "tree": "cfea57d31fa90bb7490f6185c7efb26ebff46791",
      "parents": [
        "ab0b19fb9f6ab58fcd3094d381af29c89c7a6753"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue May 04 16:05:37 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri May 07 18:54:37 2021 +0000"
      },
      "message": "Add 2040-huge-native-alloc test\n\nCheck that if we allocate more than a gigabyte of native memory and then\nrepeatedly notify the collector of native allocation, we temporarily\nblock the allocation for a reasonable amount of time to allow the GC to\ncatch up.\n\nWe previously had some coverage of this, but lost it when BigInteger\nmoved away from using native allocation.\n\nTest: Ran locally on host; TreeHugger.\nBug: 186592536\nChange-Id: Id7d120e00630e26bcdf396a80069c9cca7c00804\n"
    },
    {
      "commit": "39d4df62d4e2606073d05cc363370db825ad7b9f",
      "tree": "8e4cf0ac432406081d11e9102981446498b3265b",
      "parents": [
        "a28c827fdb58ec489931d6e70e27818619bc1b75"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri May 07 12:22:47 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri May 07 14:41:25 2021 +0000"
      },
      "message": "Revert \"Devirtualize to HInvokeStaticOrDirect.\"\n\nThis reverts commit 5024ddfd125b5c3b59d7f359ae33cf7f0255b048.\n\nBug: 187408838\n\nReason for revert: b/187408838\n\nChange-Id: If74f5ddbacc73296f66c55762e2a8d1ec2cd1f19\n"
    },
    {
      "commit": "7eedd447cb5a4904acf80123ef813a7b8dead9a2",
      "tree": "f122b251b6c711b187a8d8e3a7a011686d040707",
      "parents": [
        "6e1b7d85d9b86971885d13a464482e9f42870709"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu May 06 10:03:21 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri May 07 00:40:54 2021 +0000"
      },
      "message": "Fix some tests to work in prebuilt ART module mode.\n\ntest_for registers dependencies on the APEX modules, so don\u0027t use it\nwhen they are disabled.\n\nTest: m nothing SOONG_CONFIG_art_module_source_build\u003dfalse\nTest: mmm art\nTest: art/tools/buildbot-build.sh\nBug: 172480615\nChange-Id: I67e25e80926054390ebd8ad4cf54da44afc71315\n"
    },
    {
      "commit": "5024ddfd125b5c3b59d7f359ae33cf7f0255b048",
      "tree": "b625ed5aa1c4976e4cd2de5732543d5d1eb34a0f",
      "parents": [
        "5859b689d4fdd36711187715c04e2e095f7975c0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Apr 28 14:42:09 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu May 06 10:37:17 2021 +0000"
      },
      "message": "Devirtualize to HInvokeStaticOrDirect.\n\nWhen we statically know the target method, devirtualize an\nHInvokeInterface or an HInvokeVirtual to a HInvokeStaticOrDirect.\n\nTest: test.py\nBug: 182538502\nChange-Id: Ie3a58603cde300fca9ca4972d4dfbbd20918f5ba\n"
    },
    {
      "commit": "68dc4a524c00958cf4f11fc687eabf4c677cde69",
      "tree": "591097cdd7ed6f8b3c5968eea2410880220bbef2",
      "parents": [
        "06884debcd3d4b627cbd256fffd5d6c35919d31e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed May 05 10:42:19 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu May 06 08:00:04 2021 +0000"
      },
      "message": "Adjust code in compiledWithOptimizing\n\nForgot to upload my latest changes from:\nhttps://android-review.googlesource.com/c/platform/art/+/1695656\n\nTest: 449-checker-bce\nBug: 186500342\n\nChange-Id: Ifdb45858c2543ec2b8839167ac16c7e37a666478\n"
    },
    {
      "commit": "0d0f8df5070dc6c6e5a5809d8a57e0212a1a5164",
      "tree": "fe0fc4815a3af6dfd5cd3e17a672362647c78af0",
      "parents": [
        "2207b7e7db463dfa96d071654c49268e22e8745f"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Apr 28 16:47:01 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed May 05 12:07:48 2021 +0000"
      },
      "message": "In run tests, do not rely on loading native libs in the ART namespace\nwith an allow_all_shared_libs fallback to system.\n\nThe system and com_android_art namespaces need to be properly\nseparated, but run tests have relied on loading test libraries through\neither LD_LIBRARY_PATH or java.library.path without a clear separation.\nThat has worked through a combination of\nANDROID_ADDITIONAL_PUBLIC_LIBRARIES and fallback dlopen() calls that\nused the ART namespace.\n\nThis change introduces a new directory\n/data/nativetest(64)/com.android.art for test libraries that depend on\ninternal ART libraries. It\u0027s added with LD_LIBRARY_PATH to the default\nnamespace, which in the APEX linker config has full access to\ncom_android_art.\n\nNormal JNI libraries that don\u0027t depend on ART internals stay in\n/data/nativetest(64)/art/\u003carch\u003e. There should be no overlap between the\ntwo locations.\n\nA new environment variable NATIVELOADER_DEFAULT_NAMESPACE_LIBS is\nintroduced to list the libraries added through LD_LIBRARY_PATH, so\nlibnativeloader can link to them from classloader namespaces and in the\nfallback namespace when no classloader is specified.\n\nLike ANDROID_ADDITIONAL_PUBLIC_LIBRARIES,\nNATIVELOADER_DEFAULT_NAMESPACE_LIBS is only effective when\nro.debuggable is true.\n\nA new cc_defaults \"art_test_internal_library_defaults\" is added to\nAndroid.bp, to be used in libraries that should be installed in the new\ncom.android.art directory.\n\nSome run tests that are special and need more treatment are disabled\nfor now, to be addressed in b/186654484.\n\nTest: art/test/testrunner/testrunner.py --target --64 --optimizing\nTest: art/test/testrunner/testrunner.py --target --32 --jit\nTest: art/test/testrunner/testrunner.py --host --64 --optimizing\nBug: 130340935\nChange-Id: Iec640d5e22b46af2c1a4d375ce3f06c57b1d224e\n"
    },
    {
      "commit": "39198c0833e73f296a210e16bbf30ddae2e2ad01",
      "tree": "36d4a64c8b1b6b988723c0de0aa66bd4f1773543",
      "parents": [
        "d808f69a57bef8c2405da2fb07fc2f8dc9c09d10"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 04 14:19:20 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 04 14:19:20 2021 +0100"
      },
      "message": "Generalize Main.compiledWithOptimizing.\n\nReturn false for any compiler filter which does not do AOT compilation.\n\nTest: 449-checker-bce\nBug: 186500342\nChange-Id: I29ab70b98b5f699ebea94a8c2ff1820cf8ae7322\n"
    },
    {
      "commit": "d78f319c52888d1c45d17ce1521e4f78db2d7119",
      "tree": "2e27222fa79c5a8195995be099662c1d3518fdd8",
      "parents": [
        "d3c45c298b02163e402e1eec97e7ba21a2ba333e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Apr 29 14:41:38 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Apr 30 16:16:08 2021 +0000"
      },
      "message": "Put 75% of ART run-tests in `TEST_MAPPING` group `mainline-presubmit`.\n\nInclude more ART run-tests into the `mainline-presubmit` test\ngroup. This progressive rollout is to make sure introducing ART\nrun-tests to this test group won\u0027t disturb/break Android presubmits.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 623 ART run-tests out of 927 (67%).\n  Generated TEST_MAPPING entries for 376 ART run-tests out of 927 (40%):\n    282 tests (75%) in `mainline-presubmit` test group.\n    376 tests (100%) in `presubmit` test group.\n    0 tests (0%) in `postsubmit` test group.\n\nTest: Rely on TreeHugger presubmits\nBug: 178703264\nBug: 152374989\nChange-Id: I947fa6380e09f22dabe3e0b9713e32191cc52e21\n"
    },
    {
      "commit": "ba320165975387e780be2bd16fac4a522411b59c",
      "tree": "914a3c6b730e662131ad082ba3a9e1f51955efa8",
      "parents": [
        "7a76e234402df797c2cd97d0defbb507ed9a7329"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Apr 22 15:15:13 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 30 03:32:43 2021 +0000"
      },
      "message": "Improve simplifier slightly\n\nIt\u0027s possible thanks to the dead-code-elimination and other passes to\nend up with a PredicatedInstanceFieldGet that either has a null or a\n\u0027never-null\u0027 target value. We can simplify this down to either the\ndefault value or a normal ifield-get respectively.\n\nTest: ./test.py --host\nChange-Id: I92d9ff159a7b30294d29dbf4349d201dc654f0e1\n"
    },
    {
      "commit": "891ec2cb03c8d9ca4ec355b749e0eb69a1f5307d",
      "tree": "4f363ff0f6532bf3657281537ddd0c26c93e5c20",
      "parents": [
        "88e08c0568f2c09f562ee6e2d3eacabfcc67bf1d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Apr 29 12:28:11 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Apr 29 16:38:52 2021 +0000"
      },
      "message": "Regenerate ART test files.\n\nDisable new run-test `729-checker-polymorphic-intrinsic` as it is\ncurrently failing when run with the `ArtRunTest` TradeFed test runner.\n\nOutput of `art/test/utils/regen-test-files -m`:\n\n  $ art/test/utils/regen-test-files -m\n  Generated Blueprint files for 623 ART run-tests out of 927 (67%).\n  Generated TEST_MAPPING entries for 376 ART run-tests out of 927 (40%):\n    188 tests (50%) in `mainline-presubmit` test group.\n    376 tests (100%) in `presubmit` test group.\n    0 tests (0%) in `postsubmit` test group.\n  Generated ART MTS entries for 376 ART run-tests out of 927 (40%).\n\nTest: atest --test-mapping art:presubmit\nChange-Id: Id4d350dc4a48cff47ba9e680c0d68d91b1f0892f\n"
    },
    {
      "commit": "e1e0e0f187587dfb019a1689c005b31813b4cfe7",
      "tree": "bce0bf9489c6cd7e40d4f96fdbf8fd6af8e60f2f",
      "parents": [
        "98e9a1236f15d1f8579e2a2311aa4a24b5316732"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Apr 29 08:57:13 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Apr 29 14:48:11 2021 +0000"
      },
      "message": "Reland \"Refactor code in inliner.\"\n\nThis reverts commit aa1b711a40bfe92785f52bff9700dc516eba1d09.\n\nReason for revert: Fix wrong method being recorded as CHA dependency.\n\nChange-Id: Ic8ed84979b4cd67e49b96166792729b3b586cc25\n"
    },
    {
      "commit": "fd7044dd3a6b21e817b2d5859a1446213b69a9c4",
      "tree": "83e509e876c8c002badba2ca9524a53f860ab5c2",
      "parents": [
        "c3a152e7b93fc80b0871edaabaed5227559a52e7"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Apr 27 16:01:17 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Apr 28 19:59:45 2021 +0000"
      },
      "message": "Make it easier to interrupt testrunner.py with Ctrl-C.\n\nCtrl-C now kills the ongoing tests and cancels the remaining ones.\n\nTest: art/test/testrunner/testrunner.py --target --64 --optimizing -j4\nBug: 186530369\nChange-Id: I5dbd6932529a4902f4f03e5a36fe3aa8602ea4a6\n"
    },
    {
      "commit": "61c624239ced1203d1c77cbeb5a57f9ad2c5c73d",
      "tree": "63e392ba73e02ddb7fb8fc73ca87bf47d6452332",
      "parents": [
        "1dab575cd635706f03d510763cb4ea1b115a2cee"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 27 16:22:48 2021 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Apr 28 10:44:11 2021 +0000"
      },
      "message": "Remove RETURN_VOID_NO_BARRIER byte-code.\n\nUnused and obsolete quickened byte-code.\n\nBug: 170086509\nTest: test.py -b --host --64\nChange-Id: I1e917c189da7bf64418412522676dc6b081d5c0b\n"
    },
    {
      "commit": "bb550e415da77e7e21c8f800657984c145bb42e1",
      "tree": "0596ce5d5b1b2f58cef50f8ef133febdd053399c",
      "parents": [
        "adfa1ad73a3a557bdec67d59894139b2727aaa7d"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Apr 21 17:04:13 2021 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Apr 26 09:10:12 2021 -0700"
      },
      "message": "Fix issue with Partial LSE and casts/instanceof\n\nIf PartialLSE encounters an instanceof or check-cast before the\nescapes it could not correctly handle it. Due to how java language\ncode is typically developed and compiled this is generally not a\nproblem but could lead to incorrect codegen on release builds or\nDCHECK failures on debug builds. This fixes the issues by (1) causing\npartial LSE to consider check-cast and instance-ofs to be escaping.\nThis also updates the instruction simplifier to be much more\naggressive in removing instance-of and check-casts.\n\nTest: ./test.py --host\nBug: 186041085\nChange-Id: Ia513c4210a87a0dfa92f10adc530e17ee631d006\n"
    },
    {
      "commit": "e1d170683b7f61f0c86c45b110889a999725c7a4",
      "tree": "481ae21f3ea10acf5806a9d0873d0e8918173924",
      "parents": [
        "ab474e3eebfcf502b356b1fd18c1ca34c5e39688"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 20 16:41:29 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 20 17:52:13 2021 +0100"
      },
      "message": "Revert^2 \"Use only half of the cores in testrunner by default on target.\"\n\nThis is what we currently do on buildbots to avoid timeouts.\nSet the appropriate default here and let the buildbots use the default.\n\nThis will make it device independent so we don\u0027t have to hard-code the\nvalue on buildbot (in case device with different core count is used).\n\nIt will also make it easier to investigate the timeouts in the future,\nhopefully allowing us fully utilize the devices on the build bots.\n\nAllow the user to specify -j0 to explicitly use the default.\n\nBug: 142039427\nTest: test.py on target\nChange-Id: Ic595b411f6e5be51ca407fdb275d2481e44052b5\n"
    },
    {
      "commit": "ab474e3eebfcf502b356b1fd18c1ca34c5e39688",
      "tree": "5407220880e43122c9636fcc1cae42abfd1fceca",
      "parents": [
        "f663b341e1b16dcfa3839570e17a1b6725a93d1d"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 20 16:33:51 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 20 16:40:55 2021 +0000"
      },
      "message": "Revert \"Use only half of the cores in testrunner by default on target.\"\n\nThis reverts commit ea1a849fda20e5110ab1073355036c1ad56597af.\n\nReason for revert: Fails on buildbot\n\nChange-Id: Iff330c6482781ea1be11431186dbb6abe7496b2b\n"
    },
    {
      "commit": "f663b341e1b16dcfa3839570e17a1b6725a93d1d",
      "tree": "b8c39dd892ef1eea8e34b78594c2c4a5d8f73ce1",
      "parents": [
        "1c7d0ce3c63a14f569e64939c48bf6b7db2ac9a7"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Apr 15 23:19:06 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Apr 20 16:31:36 2021 +0000"
      },
      "message": "Put 50% of ART run-tests in `TEST_MAPPING` group `mainline-presubmit`.\n\nInclude more ART run-tests into the `mainline-presubmit` test\ngroup. This progressive rollout is to make sure introducing ART\nrun-tests to this test group won\u0027t disturb/break Android presubmits.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 622 ART run-tests out of 925 (67%).\n  Generated TEST_MAPPING entries for 376 ART run-tests out of 925 (40%):\n    188 tests (50%) in `mainline-presubmit` test group.\n    376 tests (100%) in `presubmit` test group.\n    0 tests (0%) in `postsubmit` test group.\n\nTest: Rely on TreeHugger presubmits\nBug: 178703264\nBug: 152374989\nChange-Id: Ifc2260f9cb6b0e3d067b0613dd5f19ae1a65aeed\n"
    },
    {
      "commit": "a9fed15c697d67bfbd2131d090a876145ad33910",
      "tree": "650501766f6cc2ad3819fae6c2ecfb9758470fce",
      "parents": [
        "e0bbed9177900c67dfba6ab286432f3c421c92d1"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Apr 16 15:00:47 2021 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 20 14:47:39 2021 +0000"
      },
      "message": "Add installclean step to buildbots\n\nThere can be leftover files from previous incremental build.\nThis is usually harmless, since we rebuild everything we use.\n\nHowever, in some cases, presence of stale files can be confusing.\nFor example, if test does not need dex2oat, but will use one if\npresent (which might be stale now), or if we there are libraries\nin the build which have been deleted in previous CLs.\n\nBug: 133142426\nTest: ./art/test/testrunner/run_build_test_target.py art-jit\nChange-Id: Iede85b568a7c56de4dc80f488fe09772ee767a37\n"
    },
    {
      "commit": "e0bbed9177900c67dfba6ab286432f3c421c92d1",
      "tree": "5c982c72bd50f63669ca6d8831da806e358038de",
      "parents": [
        "b8958028680cb2b49df9826222268e548431b921"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Apr 20 09:44:01 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Apr 20 13:41:37 2021 +0000"
      },
      "message": "Update run-test 701 for python3.\n\nTest: testrunner.py --host -t 701\nChange-Id: Ia2e769b9b5fea285b4aa473c03bda6041fc60f0a\n"
    },
    {
      "commit": "b8958028680cb2b49df9826222268e548431b921",
      "tree": "9f66e84a5e99f64154cbba6f321a5daebf8da800",
      "parents": [
        "8d32baf3b02a00921ef9ecc7cfd7775e69f9e4e7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Apr 15 15:12:31 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 20 12:23:09 2021 +0000"
      },
      "message": "Move intrinsic recognition logic in inliner.\n\nThe previous place `TryInlineAndReplace` did not cover all cases we try\ninlining. Because we always want to intrinsify, move the code to\n`TryBuildAndInline`, which is always called.\n\nTest: test.py\nTest: 638-checker-inline-cache-intrinsic\nChange-Id: Id74b664f6139c00224473af6c72cb6fd858aec4c\n"
    },
    {
      "commit": "3d76ebebfb50ce6e465f99b96078790a2576ca38",
      "tree": "2b4b41b6444f681d9d4200426afc4b9603bc091d",
      "parents": [
        "6e741a743cda2a85830b8cf85943e68feeebe3c7"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 19 15:07:50 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Apr 20 08:00:45 2021 +0000"
      },
      "message": "Change OatClassType to enum class.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 148412019\nChange-Id: I0709a467c92f38e6886d3936b20c2c7869429956\n"
    },
    {
      "commit": "ea1a849fda20e5110ab1073355036c1ad56597af",
      "tree": "17d5b12e6ecea27bbf168c83b49ad0f0f3bb4a99",
      "parents": [
        "ba0ef1a3e7ee1173b5928ce40b9c2a6b780fffb4"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Apr 16 10:30:33 2021 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Apr 19 21:11:15 2021 +0000"
      },
      "message": "Use only half of the cores in testrunner by default on target.\n\nThis is what we currently do on buildbots to avoid timeouts.\nSet the appropriate default here and let the buildbots use the default.\n\nThis will make it device independent so we don\u0027t have to hard-code the\nvalue on buildbot (in case device with different core count is used).\n\nIt will also make it easier to investigate the timeouts in the future,\nhopefully allowing us fully utilize the devices on the build bots.\n\nAllow the user to specify -j0 to explicitly use the default.\n\nBug: 142039427\nTest: test.py on target\nChange-Id: Ic7018c1a3239db25de148543bead62db16d02829\n"
    },
    {
      "commit": "ba0ef1a3e7ee1173b5928ce40b9c2a6b780fffb4",
      "tree": "23a76396e0aa22d0f2120d83de98b078c512395c",
      "parents": [
        "d64dc6d097a78a4dc2c4fc98c0c9ec8ef859bf1d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Apr 19 00:11:24 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Apr 19 16:30:48 2021 +0000"
      },
      "message": "Add `CtsLibcoreOjTestCases` to the generated ART MTS definition.\n\nIntroduce an additional shard (shard 02) for CTS Libcore OJ tests\n(`CtsLibcoreOjTestCases`).\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art-shard-02\nBug: 182575630\nBug: 167385698\nChange-Id: I3399476f04240d9e8c43af84996b1ece0c661927\n"
    },
    {
      "commit": "d64dc6d097a78a4dc2c4fc98c0c9ec8ef859bf1d",
      "tree": "edbc89c5c24c1bb7da1565bc85669b7a63b92094",
      "parents": [
        "511392f151143f7d8bf2f82d5201ffa6d5d051de"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Apr 19 15:05:14 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Apr 19 16:23:46 2021 +0000"
      },
      "message": "Fix typos in comments in ART test configurations.\n\nTest: n/a (comment-only change)\nChange-Id: Ic3babd5b6d4018f8d9dc88f84d061e69bc4e563d\n"
    }
  ],
  "next": "40e53f8c4ce22196b817dddb5aa795d8bc63288a"
}
