)]}'
{
  "log": [
    {
      "commit": "c76fbf024f6571d699738fb6b5b9953453d6cc13",
      "tree": "3ecbbe74eeb299315ffe1294a3d341246069b596",
      "parents": [
        "97af733e2744a3682792195052d9111ffd8ad23a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 06 08:59:17 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 06 16:21:53 2021 +0000"
      },
      "message": "Fix script when using --verify-soft-fail and --jit.\n\nWe were wrongly passing --assume-verified as compiler filter.\n\nAlso remove some obsolete code in the verifier exposed by\n636-wrong-static-access.\n\nTest: 636-wrong-static-access\nBug: 177799064\nChange-Id: I2ff15089b114bb7c482381c0f9364db869b1902d\n"
    },
    {
      "commit": "9879c34a485eaabee221689eab800ff57fb7b4f6",
      "tree": "e5bf02e2892a6805b9e7d0563e295ca4202928a3",
      "parents": [
        "8b07c653a7e45886ee92d8a12aa439e98e84befa"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 06 09:07:24 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 06 09:19:08 2021 +0100"
      },
      "message": "Disable test 692-vdex-secondary-loader on CMS.\n\nCMS does not work with the low-ram flag.\n\nTest: 692-vdex-secondary-loader\nBug: 184358215\nChange-Id: Ie4f3b089cdaa33ad8c641848473c68a282378da1\n"
    },
    {
      "commit": "50419f2d4ce9bef92115342692a405f30600e114",
      "tree": "fbec0bb12b706801cf8a5e0941c2923a3071dd82",
      "parents": [
        "f9bf4efcab3d05b6d547e492075de377400d2d88"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Apr 01 18:10:21 2021 +0100"
      },
      "committer": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Thu Apr 01 22:18:59 2021 +0000"
      },
      "message": "Fix crash with secondary dex files on low RAM devices.\n\nBefore a secondary dex files gets dexopted, we create a vdex-only file.\nVdex-only files don\u0027t have dexlayout sections.\n\nTest: 692-vdex-secondary-loader\nBug: 184262593\nChange-Id: I020f82943bb64060bce280771e40dcd01a6d4d40\n"
    },
    {
      "commit": "f442a84ca02002cd52aebdc724d84de9e8f2dd36",
      "tree": "14d8e9b4b1f11fed23459b0dc520da431ebab4d6",
      "parents": [
        "5557553ae9568dcd8923173e7f32fac3900909c4"
      ],
      "author": {
        "name": "Nikita Ioffe",
        "email": "ioffe@google.com",
        "time": "Thu Apr 01 10:58:24 2021 +0000"
      },
      "committer": {
        "name": "Nikita Ioffe",
        "email": "ioffe@google.com",
        "time": "Thu Apr 01 14:22:52 2021 +0000"
      },
      "message": "Revert \"Merge libdexfile_external into libdexfile.\"\n\nRevert \"libdexfile_external is replaced by libdexfile.\"\n\nRevert \"Rename libdexfile_external_static to libdexfile_static.\"\n\nRevert \"Rename libdexfile_external_static to libdexfile_static.\"\n\nRevert \"Allow dependencies from platform variants to APEX modules.\"\n\nRevert submission 1658000\n\nReason for revert: Breaks full-eng build: b/184239856\nReverted Changes:\nI4f8ead785:Avoid internal APEX stubs for libsigchain and clea...\nI68affdf69:Allow dependencies from platform variants to APEX ...\nI54b33784e:Rename libdexfile_external_static to libdexfile_st...\nId68ae9438:libdexfile_external is being replaced by libdexfil...\nI12ac84eb4:libdexfile_external is replaced by libdexfile.\nIf05dbffc8:Rename libdexfile_external_static to libdexfile_st...\nIa011fa3a8:Merge libdexfile_external into libdexfile.\n\nChange-Id: I9064dd8debe2f385782c8cc6c1830e4cc5cb7221\n"
    },
    {
      "commit": "af61f50d54574070b9a5b6647822c608cc92a9b3",
      "tree": "70f0cfa7092bbef6e68ed82fde19529894db5b96",
      "parents": [
        "efe9a3d20b49654cc70e7c15d9aec24d11e14c28"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 31 16:03:50 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Apr 01 08:33:53 2021 +0000"
      },
      "message": "Reland \"Change JNI behavior related to hiddenapi.\"\n\nThis reverts commit dbcf4a2a597309f33914fb60dc09e1056032794a.\n\nBug: 178680596\nBug: 122551864\nBug: 184067905\n\nReason for revert: Limit the lookup of an accessible interface to an\ninterface part of the SDK.\n\nChange-Id: If08269908044bc0f2abe1967b6d952b1e828179b\n"
    },
    {
      "commit": "848fc80db9bbe04eeb1e1c9732d137711a9903d3",
      "tree": "49beb193d63a7d1a342a855157af430fd7b8a723",
      "parents": [
        "8e0f6aaef615bbfb0f43a28d7976ac46c74ed754"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Mar 16 00:44:25 2021 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Apr 01 06:53:10 2021 +0000"
      },
      "message": "Merge libdexfile_external into libdexfile.\n\nTo reduce the number of DSO\u0027s. libdexfile_external only adds a few\nsmall functions on top of libdexfile, and it\u0027s still only those\nfunctions that are available in the APEX stubs.\n\nAlso rename libdexfile_external_static to libdexfile_static, for\nconsistency.\n\nSince libdexfile now has stubs, we need to add test_for properties to\navoid linking against the stubs in tests.\n\nTest: Flash and boot with userdebug and eng to try both release and\n  debug modules.\nTest: art/build/apex/runtests.sh\nBug: 143978909\nChange-Id: Ia011fa3a86509839ea0d80ad5fcad67ee5ce68d9\n"
    },
    {
      "commit": "8e0f6aaef615bbfb0f43a28d7976ac46c74ed754",
      "tree": "976c92bbd8a5d2572c39139f5dcc29f844cff90d",
      "parents": [
        "cff30a0bfa3c4212f304caef24236884e144375d"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Mar 30 21:22:18 2021 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Mar 31 21:41:45 2021 +0000"
      },
      "message": "Disable test that depends on ART sources when prebuilts are used.\n\nodsign_e2e_tests depends on test_com.android.art, which isn\u0027t available\nwhen prebuilts are preferred.\n\nTest: m droid SOONG_CONFIG_art_module_source_build\u003dfalse\n  with fresh ART prebuilts\nBug: 172480615\nBug: 184143265\nChange-Id: Ibb53b1159d009eb834d671f3a8442e04f162484a\n"
    },
    {
      "commit": "cff30a0bfa3c4212f304caef24236884e144375d",
      "tree": "6a431222409f3a1a96c775d14cf455b82d466301",
      "parents": [
        "34aebb676cd442475e9384d72193b3693846247f"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Mar 25 17:33:32 2021 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Mar 31 21:33:24 2021 +0000"
      },
      "message": "Better support ICs on virtual calls\n\nDue to the way we implement profiles InlineCaches are only valid on\nmethods with implementations. Unfortunately due to the rather slow way\nwe update boot profile definitions code refactorings can lead to\ninline-caches being lost. This change makes profman more resilient to\nthis error by searching up the superclass resolutions to try to find a\nmethod the inline-caches can be attached to. This should ensure that\nboot-profile definitions fall out of date more slowly.\n\nTest: ./test.py --host\nBug: 168941430\n\nChange-Id: I5f6096500fa6f17e285b5a7bab21ad8216221966\n"
    },
    {
      "commit": "9bc364bdda8955f35e8cc4c42312ec411403a995",
      "tree": "8f0dd9a6874e883292571ff5a37e0be089190ca3",
      "parents": [
        "dbcf4a2a597309f33914fb60dc09e1056032794a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 29 10:41:39 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 31 12:50:36 2021 +0000"
      },
      "message": "Support background verification of secondary dex files.\n\nRe-use the infrastructure for background verification of in-memory dex\nfiles to also trigger for secondary dex files.\n\nTest: 692-vdex-secondary-loader\nBug: 160294863\nChange-Id: I754d519b6a903c51e439ccab100d2d8f22f45df3\n"
    },
    {
      "commit": "dbcf4a2a597309f33914fb60dc09e1056032794a",
      "tree": "b01cf79b4fdf1df81193a255fd4a3ec98a952713",
      "parents": [
        "26095cda197448071fbbc6af126363de1b4e8b4c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 31 09:13:32 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 31 12:49:05 2021 +0000"
      },
      "message": "Revert \"Change JNI behavior related to hiddenapi.\"\n\nThis reverts commit 579db19af4f718c1aac5ca95c180a70c5114c6bd.\n\nBug: 178680596\nBug: 122551864\nBug: 184067905\n\nReason for revert: b/184067905\n\nChange-Id: I1c989b6d937b818e4779d7dd9f35abd30be2aa58\n"
    },
    {
      "commit": "1a660c0bd57313bae9cd5632ab4252f417590a96",
      "tree": "4402d755bc2bfb7fe05fa3411e5eb4627c94d031",
      "parents": [
        "0685b981042acb57355e6742cf0ab18fbcfc4e25"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Mon Mar 29 09:40:08 2021 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Mar 30 15:49:35 2021 +0000"
      },
      "message": "Reduce 129-ThreadGetId iteration count\n\nThe test has been timing out on rare occasion with gcstress.\n\nFix a constant naming issue to get this past lint.\n\nTest: TreeHugger\nBug: 148981623\nChange-Id: I9a4a91b7b316a6305d6b96e5194547dbdafbd84a\n"
    },
    {
      "commit": "0685b981042acb57355e6742cf0ab18fbcfc4e25",
      "tree": "b9af226c72e2f173943c96c95a04349fe63134bb",
      "parents": [
        "579db19af4f718c1aac5ca95c180a70c5114c6bd"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 25 11:59:22 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 30 14:39:19 2021 +0000"
      },
      "message": "Abort transaction when Class.forName() fails.\n\nAnd update VmClassLoader.findLoadedClass implementation in\nUnstartedRuntime which has erroneously diverged since\n    https://android-review.googlesource.com/145075 .\nAlso prevent transactional interpreter from transfering\ncontrol to a catch handler for aborted transactions.\n\nAlso clean up Transaction::kAbortExceptionDescriptor naming\nand some unused parameters.\n\nTest: TransactionTest.CatchClassForNameAbortClass\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: Ibfc544283f5434efbaab238d11a6152ed2578050\n"
    },
    {
      "commit": "579db19af4f718c1aac5ca95c180a70c5114c6bd",
      "tree": "6f01108583a4e8edf00b094d8f30d6348516d570",
      "parents": [
        "26a759688bdd376db7ed429ae07e136ff21f2411"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 29 16:50:37 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Mar 30 13:16:32 2021 +0000"
      },
      "message": "Change JNI behavior related to hiddenapi.\n\nWhen resolving a method, if the found method is not accessible, check if\nthere are methods defined in interfaces which are.\n\nBug: 178680596\nBug: 122551864\nTest: 817-hiddenapi\nChange-Id: Ibca0960e93ee399718716395ff9ed1f1c4e246b2\n"
    },
    {
      "commit": "26a759688bdd376db7ed429ae07e136ff21f2411",
      "tree": "2cb77794adfe463823608cc0f1795aff113279b6",
      "parents": [
        "ab8bba9245771655a73767e5b8f5cda402b508e3"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Mon Mar 29 09:30:48 2021 +0200"
      },
      "committer": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Tue Mar 30 10:51:09 2021 +0000"
      },
      "message": "Add on-device signing end-to-end test.\n\nThis adds a host-driven test that verifies that installing an ART apex\nwith a newer version generates artifacts and ensures they are signed\nwith fs-verity. To that end, add a new ART test APEX which is identical\nto the regular ART APEX, except it carries a different version number.\n\nBug: 165630556\nBug: 167516462\nTest: atest odsign_e2e_tests\nChange-Id: If12f3922bbaafd875cb3120d01540e0b73d012be\n"
    },
    {
      "commit": "982ecedecd2326f9b28ee60a3feb56b299e1c2bc",
      "tree": "d319249a25c0f13bab0bb45efd8cf70a4a238985",
      "parents": [
        "09108b274c15b55d8577ae3590005e990694c5b7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 29 08:49:38 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 29 12:46:54 2021 +0000"
      },
      "message": "Remove \u0027\u0026\u0027 class loader context.\n\nThis is now an unsupported context.\n\nTest: class_loader_context\nBug: 132357300\nChange-Id: I21bc6e3529944a57379845e90c7f49759db30d40\n"
    },
    {
      "commit": "b3f5c5008770d22a24db6a66bf97bd5a9d32b4ff",
      "tree": "a66c3b38a1bf721a3f0f8285976086b4af57c56d",
      "parents": [
        "753f47a759f6fd186e507c3156b5a94177040fa5"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Mar 13 14:24:01 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Mar 26 15:17:16 2021 +0000"
      },
      "message": "Improve the CFI test to catch missing frames.\n\nCheck that we can unwind all the way to main,\nand that all frames have some name.\n\nBug: 163783132\nTest: test.py -r -b --host -t 137-cfi\nChange-Id: Ic2a6935bf456bba9c38c4f12e0c4704c11954be2\n"
    },
    {
      "commit": "a129d8aef0dfe39edf39b5537852bc2c60496bfa",
      "tree": "b5eded46436a3ff1b371a6a706cb7cf8a7e0878b",
      "parents": [
        "ec7b19485ba4af8b0fd0804389c470b556322d13"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 18 22:23:04 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 25 18:08:51 2021 +0000"
      },
      "message": "Revamp vdex format for better extensibility.\n\n- Remove class loader context and boot classpath checksum sections.\n  Those are not needed now that VerifierDeps don\u0027t depend on them.\n- Remove remaining quickening encoding.\n- Introduce sections in a vdex file, which can be extended without\n  requiring a version change.\n\nTest: test.py\nBug: 160294863\n\nChange-Id: I4e3e25f34d242dc4de37f30ba9d78bcffbc1436d\n"
    },
    {
      "commit": "43c9cd7938a53265ea9899a604b409ce070cc2c5",
      "tree": "db084fcc115d6a68de25662bf1a5fae030bcf152",
      "parents": [
        "443fc8962db219177c34cd047d2071b5ee775468"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 10 15:09:19 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 24 16:47:38 2021 +0000"
      },
      "message": "Improve nterp -\u003e compiled code transitions.\n\nUse an unused bit in the access flags of an ArtMethod (0x00200000) to store\nthe information a method only takes ints or references and returns an\nint, a reference, or a long. This avoids the need to fetch the shorty in nterp\nwhen doing a call.\n\nTest: test.py\nTest: 821-many-args\nBug: 112676029\n\nChange-Id: Ie657ccf69c17c1097dc2a97f18e3093ef3be391b\n"
    },
    {
      "commit": "9441f9224af6215ca43999d3d5c8c3741cae987d",
      "tree": "39836054ffd608173a99a9497577df36eb7cdf64",
      "parents": [
        "8129ba3c95878db996f1578057c1e013daa6768a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 23 18:13:28 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Mar 24 14:40:51 2021 +0000"
      },
      "message": "Put 25% 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 621 ART run-tests out of 920 (67%).\n  Generated TEST_MAPPING entries for 377 ART run-tests out of 920 (40%):\n    94 tests (25%) in `mainline-presubmit` test group.\n    377 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: Idf96255ff0d591ec2d2aab63c5c6521ce26577f7\n"
    },
    {
      "commit": "8129ba3c95878db996f1578057c1e013daa6768a",
      "tree": "c50167bcec4c10c1cab99992005f1f6fb229f213",
      "parents": [
        "779761281e44bd209d57b8fc861f8aef88d57a73"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 23 14:57:03 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 24 09:17:10 2021 +0000"
      },
      "message": "Add a test for wrong constructor resolution.\n\nThe constructor resolution in ART currently allows calling\nthe superclass contructor directly. This is against the JLS\nbut we do not try to fix it in this CL, just add a test that\nexposes the behavior.\n\nTest: New test in 162-method-resolution\nTest: testrunner.py --host -t 162-method-resolution\nTest: testrunner.py --jvm -t 162-method-resolution\nBug: 183485797\nChange-Id: I199584a09645b252e63ade903c0c43fef3e91819\n"
    },
    {
      "commit": "779761281e44bd209d57b8fc861f8aef88d57a73",
      "tree": "04ba8d87fb9d7c3ee97bc2e8fe62be8e4ba56ac3",
      "parents": [
        "22a6162374589eb1c56572db131849b739b50dd0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 23 15:40:19 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 24 09:04:44 2021 +0000"
      },
      "message": "Update test 162-method-resolution to pass on RI.\n\nUpdate the test7 for newer versions of JLS and RI.\nAdd a workaround for divergence in test10.\n\nTest: testrunner.py --host -t 162-method-resolution\nTest: testrunner.py --jvm -t 162-method-resolution\nBug: 63624936\nBug: 64274113\nChange-Id: I848745c64fcc22c49c2dd7ebbdaaf50922d8486b\n"
    },
    {
      "commit": "c43665925767a00db0405faa884a2117b9e99887",
      "tree": "b257b93ceff886b13ed63c10567d0aefc928ef63",
      "parents": [
        "cb332bcb9aefaaf4e3139fb779d5a8c5471b6806"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Mar 18 18:21:29 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 22 18:11:08 2021 +0000"
      },
      "message": "Disable tests failing on Cuttlefish x86 and regenerate ART test files.\n\nThe following tests have been failing on build target\ncf_x86_phone-userdebug_coverage:\n- `art-run-test-530-checker-lse2`\n- `art-run-test-583-checker-zero`\n\nDisable them while we investigate.\n\nOutput of `art/test/utils/regen-test-files -m`:\n\n  $ art/test/utils/regen-test-files -m\n  Generated Blueprint files for 621 ART run-tests out of 920 (67%).\n  Generated TEST_MAPPING entries for 377 ART run-tests out of 920 (40%):\n    37 tests (10%) in `mainline-presubmit` test group.\n    377 tests (100%) in `presubmit` test group.\n    0 tests (0%) in `postsubmit` test group.\n  Generated ART MTS entries for 377 ART run-tests out of 920 (40%).\n\nTest: atest --test-mapping art:all\nBug: 167385698\nBug: 152374989\nChange-Id: Iac8219a88228fb2d8bd97e53da3acb458cf2b6b2\n"
    },
    {
      "commit": "f0407cf39600b2e87ee6c18f066df2987bd4ba29",
      "tree": "c99b7a7cc8b20ea69de1f3384f3c7706f3e3c53e",
      "parents": [
        "d03189939228a568971fba7cb0c7e58eb8e8326f"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Mar 19 18:52:34 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 22 13:07:16 2021 +0000"
      },
      "message": "Document Atest support for wildcards in ART run-tests invocations.\n\nMention that Atest supports wildcards in test names and how this can\nbe used to run ART run-tests in `art/test/README.atest.md`.\n\nTest: Render `README.atest.md` as HTML and check the output manually\nBug: 147818031\nChange-Id: I0b9771a4b9685b2cb27cd95a0feeba1d22ff430b\n"
    },
    {
      "commit": "98aa748731f0954b1e660c52b2f77fec1367a62b",
      "tree": "49d9085d18e687c5f9c4cfba9ff46601e5a5dcf2",
      "parents": [
        "f3d10346eff32ccdea224be5b2f3df40af98f24e"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Mar 12 12:47:50 2021 -0800"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Mar 20 02:22:19 2021 +0000"
      },
      "message": "Increase 053-wait delay tolerance\n\nAllow longer unexpected delays. Add a limit on the total unrequested\ndelay over all different wait times.\n\nTest: art/test/run-test --host 053-wait-some\nBug: 175435088\nChange-Id: I7e751b676aab65b6944436a46e93c9d205ed6548\n"
    },
    {
      "commit": "e017bb072ac577eee5413bd7e5e136f4eaf75908",
      "tree": "feabb3d266a72c7d03e6b7328b7252aa547cac97",
      "parents": [
        "d3d1a1a11626bd5198edb9242831c7b120652fbb"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Mar 17 10:55:25 2021 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Mar 18 21:42:21 2021 +0000"
      },
      "message": "Drop whole_static_libs for libasync_safe and clean up static linking of\nlibsigchain.\n\nwhole_static_libs is no longer necessary when libsigchain is a DSO, and\nthis avoids reexporting all the Bionic headers in the ART SDK.\n\nTest: build/soong/scripts/build-aml-prebuilts.sh art-module-sdk\n      unzip -v out/aml/soong/mainline-sdks/art-module-sdk-current.zip\n  Check that no Bionic headers are left.\nTest: m droid continuous_instrumentation_tests \\\n       continuous_instrumentation_tests_api_coverage \\\n       continuous_native_tests device-tests platform_tests\nBug: 142944043\nChange-Id: If0982e8bd72f74ed12c270361579e81101de3612\n"
    },
    {
      "commit": "27dc87782f68bebae95c4ab87fe21bb638008a96",
      "tree": "d8e7e5920ad38afb01b6c2bd81be6e632683f895",
      "parents": [
        "41b1892c043a301f86ca1c6b887c796fbc098669"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Fri Mar 12 21:23:42 2021 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 15 20:44:56 2021 +0000"
      },
      "message": "Revert^2 \"[metrics] Always enable background thread\"\n\nHaving the thread enabled in some cases and not in others was causing\nissues this tests. To avoid needing to handle multiple configurations,\nthis CL enables the background reporting thread always. In general,\nmetrics reporting will be enabled, so this better reflects the default\nstate of things.\n\nThis reverts commit 3f64940d7c6ce4d3f06ea5dbe195c244ca7a8fbc.\nReason for revert: Deflaking tests\n\nThe issue was that sometimes the metrics background thread would start\nlate and get captured by the thread life cycle callbacks instead of\nthe correct thread. The fix is to request a synchronous metrics report\nbefore starting the test, which forces us to wait until the metrics\nthread is up and running.\n\nTest: ./test.py --run-test --host\nTest: art_runtime_tests \\\n    --gtest_filter\u003d\"ThreadLifecycleCallbackRuntimeCallbacksTest.*\"\nBug: 170149255\nChange-Id: I007437abd1a3404960f79cf1596c95b8da917286\n"
    },
    {
      "commit": "41b1892c043a301f86ca1c6b887c796fbc098669",
      "tree": "6b35829f78b058350df3914999f573422d078ddf",
      "parents": [
        "14a814bd94b7502dc2699a99cea0b7c07f184743"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Mar 12 17:09:43 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 15 20:03:14 2021 +0000"
      },
      "message": "Add support for sharding the ART MTS definition to `regen-test-files`.\n\nIntroduce the notion of \"MTS test shard\" in script\n`test/utils/regen-test-files`, by introducing a new `MtsTestShard`\nclass. This enables sharding of ART Mainline Module code coverage runs\nat the test-plan level (\"meta-sharding\"), as sharding at the test-run\nlevel (provided by TradeFed) has reached its limits in ATP.\n\nAdd an indirection level in the generated file\n`test/mts/tools/mts-tradefed/res/config/mts-art-tests-list-user.xml`,\nwhich is now including \"ART test list shards\" (files\n`test/mts/tools/mts-tradefed/res/config/mts-art-tests-list-user-shard-\u003cN\u003e.xml`),\ninstead of listing tests directly. Also generate \"ART test plan\nshards\"\n(files `test/mts/tools/mts-tradefed/res/config/mts-art-shard-N.xml`),\nso that each shard can be run independently, e.g. using\n`mts-tradefed`.\n\nFor now, only generate two shards, for tests that do not need device\nroot access:\n- shard 00, containing all (supported) ART run-tests, and\n- shard 01, containing Libcore CTS tests (`CtsLibcoreTestCases`).\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\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art-shard-01\nBug: 182575630\nChange-Id: Icc1662403ccc074d6eaf70af8098f8e182ca0878\n"
    },
    {
      "commit": "b7bc2e403265465768353abbbdbe82bd7f9a45bc",
      "tree": "8d4c628d9e65e0567d495298e269f666f351b53b",
      "parents": [
        "0654153bc5ca22466697681bb6dc4bc8b379975e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 09 19:10:56 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Sat Mar 13 12:31:16 2021 +0000"
      },
      "message": "Support verbose logging in script `regen-test-files`.\n\nAdd support for option `-v`, `--verbose` to script\n`test/utils/regen-test-files`. When enabled, set logging level to\n`DEBUG` to log more information.\n\nAlso add some DEBUG-level logging statements for I/O operations\nperformed by the script.\n\nTest: Run `test/utils/regen-test-files -m -v` and check that there are\n      no changes among the generated files\nBug: 147814778\nBug: 152374989\nBug: 167385698\nBug: 182575630\nChange-Id: Idac129aecc56b82ab96a3a22d6d7b9ade1870dfe\n"
    },
    {
      "commit": "0654153bc5ca22466697681bb6dc4bc8b379975e",
      "tree": "5e21e5c9d4a1257a170d528e69163f974837f03e",
      "parents": [
        "947a8504f0ccce5e8adff2a2c96c33b0aa93c8fc"
      ],
      "author": {
        "name": "Jagadeesh Pakaravoor",
        "email": "jpakaravoor@google.com",
        "time": "Mon Feb 22 21:19:09 2021 -0800"
      },
      "committer": {
        "name": "Jagadeesh Pakaravoor",
        "email": "jpakaravoor@google.com",
        "time": "Fri Mar 12 19:29:57 2021 +0000"
      },
      "message": "Add madvising of .odex, .vdex and .art files\n\n1. When mmaping {.art, .odex, .vdex} files madvise them to MADV_WILLNEED\n2. Add system properties to limit the madvise size/range\n\nTest: presubmit\nBug: 178853586\nChange-Id: I14afc7cc038ebbf6bba5a393ef222050284dd86d\n"
    },
    {
      "commit": "3f64940d7c6ce4d3f06ea5dbe195c244ca7a8fbc",
      "tree": "f1327c304c823a17a52cc5e645e7ad7d28714511",
      "parents": [
        "f622d89e27fb0ad0bbf8de2ea1f9cd3ba5f36e24"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 12 16:40:34 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 12 16:41:05 2021 +0000"
      },
      "message": "Revert \"[metrics] Always enable background thread\"\n\nThis reverts commit 6660e3bd463535ea6aefebc3288ac3f17fbd99fd.\n\nBug: 170149255\n\nReason for revert: Test ThreadLifecycleCallbackJava flakey.\n\nChange-Id: Ib118654c414c27bd71d7ad3e19e1fab2d06347c7\n"
    },
    {
      "commit": "a1507a495ebb9566771fe4d6b53d2906148ab92c",
      "tree": "2a76155c22487481281548185137afd4a120608c",
      "parents": [
        "ad6c22fa4c11f9c1f9f241d02fcca5e25caef40d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Mar 12 10:45:41 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Mar 12 14:17:01 2021 +0000"
      },
      "message": "Disable ART run-test `053-wait-some` on gcstress configurations.\n\nDisable this test on gcstress configurations, as it is time-sensitive\nand this mode is known to slow down the execution of programs in\ngeneral and break some of the test\u0027s assertions w.r.t. execution\ntimes.\n\nBug: 175435088\nTest: art/test/testrunner/testrunner.py -t 053-wait-some\nChange-Id: I397d948394b0803d77277acb2a72514393ccc529\n"
    },
    {
      "commit": "b6c0e7302c5ce9773aad134d685488f736dc5183",
      "tree": "42aa3be53c5f91c16af4a0fcc2d6a6b0e0108507",
      "parents": [
        "5591b714e8e0001c1707aa86d23f1fd81a79abfd"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 13 15:08:22 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 12 12:05:43 2021 +0000"
      },
      "message": "Remove some methods from DdmVmInternal.\n\nTest: m\nChange-Id: I4fa9c6f9db951333697201fa819bbaec145f03ab\n"
    },
    {
      "commit": "6660e3bd463535ea6aefebc3288ac3f17fbd99fd",
      "tree": "91b4a6ee0c1c611163a2d77b905daac51da8d94f",
      "parents": [
        "34ce1b8a86f1be2142f019ab291b7445db5c4305"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Tue Mar 09 13:51:58 2021 -0800"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 11 18:55:15 2021 +0000"
      },
      "message": "[metrics] Always enable background thread\n\nHaving the thread enabled in some cases and not in others was causing\nissues this tests. To avoid needing to handle multiple configurations,\nthis CL enables the background reporting thread always. In general,\nmetrics reporting will be enabled, so this better reflects the default\nstate of things.\n\nTest: ./test.py --run-test --host\nBug: 170149255\nChange-Id: I5100e0da1a7d264ebdd1bfe60f08171ffa5b73b1\n"
    },
    {
      "commit": "157fc969066aa41842c029350e5af780c517fcf6",
      "tree": "af86595945aa5b3be3a560c956ac78f72c0c7fd1",
      "parents": [
        "2291439187b06d995bb298683246416c75d92740"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Mar 04 16:02:35 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 09 09:43:36 2021 +0000"
      },
      "message": "Move 100% of ART run-tests to test group `presubmit` in `TEST_MAPPING`.\n\nMove remaining ART run-tests from the `postsubmit` test group to the\n`presubmit` test group. This progressive rollout is to make sure\nintroducing ART run-tests to this test group won\u0027t disturb/break\nAndroid presubmits.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 621 ART run-tests out of 920 (67%).\n  Generated TEST_MAPPING entries for 379 ART run-tests out of 920 (41%):\n    37 tests (10%) in `mainline-presubmit` test group.\n    379 tests (100%) in `presubmit` test group.\n    0 tests (0%) in `postsubmit` test group.\n\nTest: atest --test-mapping art:presubmit\nBug: 152374989\nBug: 169310621\nChange-Id: I309d3aa3ff7e36522ef445694a83c5bd95e0ef79\n"
    },
    {
      "commit": "eb7882bd913fe3224bb144b943816376753f491b",
      "tree": "19ebde489a46729b88bf6559e3c031878806e984",
      "parents": [
        "87531a628e3a4d63fe6995350e6d94773c76c805"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Mar 04 15:56:40 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Mar 05 15:11:56 2021 +0000"
      },
      "message": "Do not produce an entry for a Test Mapping test group if it is empty.\n\nTest: Set `presubmit_tests_percentage` in\n      `art/test/utils/regen-test-files` and check the generated\n      `TEST_MAPPING` output\nBug: 152374989\nChange-Id: I62431dbbfd65d02067d8fd24f137a5cd0a5ca0ce\n"
    },
    {
      "commit": "87531a628e3a4d63fe6995350e6d94773c76c805",
      "tree": "072cc0c18fb6abbcbe92940c6c795f031b927320",
      "parents": [
        "e8657bfb9946306d48e850d308cfb9ab2b79dbd6"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Mar 04 15:36:55 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Mar 05 15:11:56 2021 +0000"
      },
      "message": "Aesthetic changes in generated ART run-test Blueprint files.\n\nTest: Run `art/test/utils/regen-test-files` and check Blueprint files\nBug: 147814778\nChange-Id: I51dc20a7c7f26df163ab2de4fb33675740728a2f\n"
    },
    {
      "commit": "e8657bfb9946306d48e850d308cfb9ab2b79dbd6",
      "tree": "0e7c24f155e181438377a95306f0b8f218d7302e",
      "parents": [
        "59c21036b2e36f2ec0ac35aebe0c6e97539efef8"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Mar 04 15:26:21 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Mar 05 15:11:56 2021 +0000"
      },
      "message": "Adjust `regen-test-files` to match current ART run-test Blueprint files.\n\nLicense information was recently added to Blueprint files by\nlarge-scale change (LSC)\nhttps://android-review.googlesource.com/c/platform/art/+/1609793. Adjust\nscript `test/utils/regen-test-files` to generate a `TEST_MAPPING`\noutput identical to the current file.\n\nTest: Run `art/test/utils/regen-test-files` and check Blueprint files\nBug: 147814778\nChange-Id: I91d93bf4bf149d257a1348e65d82e9a7929776e5\n"
    },
    {
      "commit": "c714f40caec532522ecc5e611b15e857b3b65484",
      "tree": "598daf5db137ae9bceab4e676c72c724d180d251",
      "parents": [
        "17b4d2b14fd26088bca195b5d7c48f26b8b545d8"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 04 14:24:38 2021 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 05 12:07:49 2021 +0000"
      },
      "message": "Fix crash on error paths from GenericJNI trampoline.\n\nTest: Added a regression test to 178-app-image-native-method\nTest: testrunner.py --host --optimizing -t 178-app-image-native-method\nBug: 181736463\nChange-Id: Ib98d6d58ce1fb8287c32f88fda0f83b7e21ef42d\n"
    },
    {
      "commit": "90b26617d4229b645303f911ba00c228852c6a5d",
      "tree": "55585c8125242ec2e2d22917089509a76de54cab",
      "parents": [
        "93fc098b11a7cb5526049fb170bd833bf3fabcfd"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Mar 03 09:49:27 2021 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Mar 03 16:30:55 2021 +0000"
      },
      "message": "Generalize the defaults module for module source builds.\n\nIt is useful in other places, as a Soong counterpart to\nmy_art_module_source_build in Android.common_path.mk.\n\nTest: m nothing\nBug: 172480615\nChange-Id: I9c02006148c3958b2c3af0ce0e0ea172a8c1e4cd\n"
    },
    {
      "commit": "21dafaf33ed6d7d6df1ee00371a3503802a060f5",
      "tree": "3cfab4cf7bc4fe93a446d056fad05f169cd120be",
      "parents": [
        "eb73b51e4350c41b92711a585c5a616cb1c5ef0d"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Feb 17 20:39:45 2021 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 02 09:20:29 2021 +0000"
      },
      "message": "Skip make targets that have missing dependencies when using ART\nprebuilts.\n\nThis is necessary because ART sources can still be in the tree when\nprebuilts are used, and e.g. for host we don\u0027t have a boot image in\nthem.\n\nTest: m checkbuild\n  with and without SOONG_CONFIG_art_module_source_build\u003dfalse, check\n  that it passes the \"Test for dangling rules\" stage\nBug: 172480615\nChange-Id: I4f24a430d1b11202eb4dceeedc96a0906679830e\n"
    },
    {
      "commit": "9150de6901996679c0ea6b34e74c8ddcc718d309",
      "tree": "496386b00b2a1b0b3bfbc36b09cf8083e3922f9b",
      "parents": [
        "8da26145fba859a5aba047f6280568565ffb8bfc"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Fri Feb 26 03:22:24 2021 -0800"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 02 07:18:14 2021 +0000"
      },
      "message": "[LSC] Add LOCAL_LICENSE_KINDS to art\n\nAdded SPDX-license-identifier-Apache-2.0 to:\n  adbconnection/Android.bp\n  benchmark/Android.bp\n  build/Android.bp\n  build/Android.cpplint.mk\n  build/Android.gtest.mk\n  build/apex/Android.bp\n  build/boot/Android.bp\n  build/sdk/Android.bp\n  cmdline/Android.bp\n  compiler/Android.bp\n  dalvikvm/Android.bp\n  dex2oat/Android.bp\n  dexdump/Android.bp\n  dexlayout/Android.bp\n  dexlist/Android.bp\n  dexoptanalyzer/Android.bp\n  disassembler/Android.bp\n  dt_fd_forward/export/Android.bp\n  imgdiag/Android.bp\n  libartbase/Android.bp\n  libartpalette/Android.bp\n  libartservice/Android.bp\n  libartservice/tests/Android.bp\n  libarttools/Android.bp\n  libdexfile/Android.bp\n  libelffile/Android.bp\n  libnativebridge/Android.bp\n  libnativebridge/tests/Android.bp\n  libnativeloader/Android.bp\n  libnativeloader/test/Android.bp\n  libnativeloader/test/Android.mk\n  libprofile/Android.bp\n  oatdump/Android.bp\n  odrefresh/Android.bp\n  perfetto_hprof/Android.bp\n  profman/Android.bp\n  runtime/Android.bp\n  simulator/Android.bp\n  test/001-HelloWorld/Android.bp\n  test/001-Main/Android.bp\n  test/002-sleep/Android.bp\n  test/004-InterfaceTest/Android.bp\n  test/004-SignalTest/Android.bp\n  test/004-UnsafeTest/Android.bp\n  test/004-checker-UnsafeTest18/Android.bp\n  test/006-args/Android.bp\n  test/007-count10/Android.bp\n  test/009-instanceof/Android.bp\n  test/010-instance/Android.bp\n  test/011-array-copy/Android.bp\n  test/012-math/Android.bp\n  test/013-math2/Android.bp\n  test/014-math3/Android.bp\n  test/015-switch/Android.bp\n  test/016-intern/Android.bp\n  test/017-float/Android.bp\n  test/018-stack-overflow/Android.bp\n  test/019-wrong-array-type/Android.bp\n  test/020-string/Android.bp\n  test/021-string2/Android.bp\n  test/022-interface/Android.bp\n  test/025-access-controller/Android.bp\n  test/026-access/Android.bp\n  test/027-arithmetic/Android.bp\n  test/028-array-write/Android.bp\n  test/029-assert/Android.bp\n  test/030-bad-finalizer/Android.bp\n  test/033-class-init-deadlock/Android.bp\n  test/034-call-null/Android.bp\n  test/035-enum/Android.bp\n  test/036-finalizer/Android.bp\n  test/037-inherit/Android.bp\n  test/038-inner-null/Android.bp\n  test/039-join-main/Android.bp\n  test/040-miranda/Android.bp\n  test/041-narrowing/Android.bp\n  test/043-privates/Android.bp\n  test/044-proxy/Android.bp\n  test/045-reflect-array/Android.bp\n  test/046-reflect/Android.bp\n  test/047-returns/Android.bp\n  test/048-reflect-v8/Android.bp\n  test/049-show-object/Android.bp\n  test/050-sync-test/Android.bp\n  test/051-thread/Android.bp\n  test/052-verifier-fun/Android.bp\n  test/053-wait-some/Android.bp\n  test/054-uncaught/Android.bp\n  test/055-enum-performance/Android.bp\n  test/058-enum-order/Android.bp\n  test/059-finalizer-throw/Android.bp\n  test/061-out-of-memory/Android.bp\n  test/062-character-encodings/Android.bp\n  test/063-process-manager/Android.bp\n  test/067-preemptive-unpark/Android.bp\n  test/070-nio-buffer/Android.bp\n  test/072-precise-gc/Android.bp\n  test/072-reachability-fence/Android.bp\n  test/074-gc-thrash/Android.bp\n  test/076-boolean-put/Android.bp\n  test/078-polymorphic-virtual/Android.bp\n  test/079-phantom/Android.bp\n  test/080-oom-fragmentation/Android.bp\n  test/080-oom-throw-with-finalizer/Android.bp\n  test/080-oom-throw/Android.bp\n  test/081-hot-exceptions/Android.bp\n  test/082-inline-execute/Android.bp\n  test/083-compiler-regressions/Android.bp\n  test/084-class-init/Android.bp\n  test/086-null-super/Android.bp\n  test/087-gc-after-link/Android.bp\n  test/090-loop-formation/Android.bp\n  test/092-locale/Android.bp\n  test/093-serialization/Android.bp\n  test/094-pattern/Android.bp\n  test/095-switch-MAX_INT/Android.bp\n  test/096-array-copy-concurrent-gc/Android.bp\n  test/098-ddmc/Android.bp\n  test/099-vmdebug/Android.bp\n  test/100-reflect2/Android.bp\n  test/1004-checker-volatile-ref-load/Android.bp\n  test/101-fibonacci/Android.bp\n  test/102-concurrent-gc/Android.bp\n  test/103-string-append/Android.bp\n  test/104-growth-limit/Android.bp\n  test/105-invoke/Android.bp\n  test/106-exceptions2/Android.bp\n  test/107-int-math2/Android.bp\n  test/108-check-cast/Android.bp\n  test/109-suspend-check/Android.bp\n  test/110-field-access/Android.bp\n  test/112-double-math/Android.bp\n  test/114-ParallelGC/Android.bp\n  test/115-native-bridge/Android.bp\n  test/116-nodex2oat/Android.bp\n  test/120-hashcode/Android.bp\n  test/121-simple-suspend-check/Android.bp\n  test/122-npe/Android.bp\n  test/123-compiler-regressions-mt/Android.bp\n  test/123-inline-execute2/Android.bp\n  test/125-gc-and-classloading/Android.bp\n  test/128-reg-spill-on-implicit-nullcheck/Android.bp\n  test/129-ThreadGetId/Android.bp\n  test/132-daemon-locks-shutdown/Android.bp\n  test/133-static-invoke-super/Android.bp\n  test/1336-short-finalizer-timeout/Android.bp\n  test/1337-gc-coverage/Android.bp\n  test/1339-dead-reference-safe/Android.bp\n  test/136-daemon-jni-shutdown/Android.bp\n  test/139-register-natives/Android.bp\n  test/140-dce-regression/Android.bp\n  test/140-field-packing/Android.bp\n  test/143-string-value/Android.bp\n  test/144-static-field-sigquit/Android.bp\n  test/148-multithread-gc-annotations/Android.bp\n  test/149-suspend-all-stress/Android.bp\n  test/150-loadlibrary/Android.bp\n  test/151-OpenFileLimit/Android.bp\n  test/152-dead-large-object/Android.bp\n  test/153-reference-stress/Android.bp\n  test/154-gc-loop/Android.bp\n  test/156-register-dex-file-multi-loader/Android.bp\n  test/158-app-image-class-table/Android.bp\n  test/159-app-image-fields/Android.bp\n  test/163-app-image-methods/Android.bp\n  test/165-lock-owner-proxy/Android.bp\n  test/168-vmstack-annotated/Android.bp\n  test/169-threadgroup-jni/Android.bp\n  test/170-interface-init/Android.bp\n  test/172-app-image-twice/Android.bp\n  test/174-escaping-instance-of-bad-class/Android.bp\n  test/175-alloc-big-bignums/Android.bp\n  test/176-app-image-string/Android.bp\n  test/177-visibly-initialized-deadlock/Android.bp\n  test/178-app-image-native-method/Android.bp\n  test/179-nonvirtual-jni/Android.bp\n  test/1900-track-alloc/Android.bp\n  test/1901-get-bytecodes/Android.bp\n  test/1902-suspend/Android.bp\n  test/1903-suspend-self/Android.bp\n  test/1904-double-suspend/Android.bp\n  test/1905-suspend-native/Android.bp\n  test/1906-suspend-list-me-first/Android.bp\n  test/1907-suspend-list-self-twice/Android.bp\n  test/1908-suspend-native-resume-self/Android.bp\n  test/1909-per-agent-tls/Android.bp\n  test/1910-transform-with-default/Android.bp\n  test/1911-get-local-var-table/Android.bp\n  test/1912-get-set-local-primitive/Android.bp\n  test/1913-get-set-local-objects/Android.bp\n  test/1914-get-local-instance/Android.bp\n  test/1915-get-set-local-current-thread/Android.bp\n  test/1916-get-set-current-frame/Android.bp\n  test/1917-get-stack-frame/Android.bp\n  test/1919-vminit-thread-start-timing/Android.bp\n  test/1920-suspend-native-monitor/Android.bp\n  test/1921-suspend-native-recursive-monitor/Android.bp\n  test/1922-owned-monitors-info/Android.bp\n  test/1923-frame-pop/Android.bp\n  test/1924-frame-pop-toggle/Android.bp\n  test/1925-self-frame-pop/Android.bp\n  test/1926-missed-frame-pop/Android.bp\n  test/1927-exception-event/Android.bp\n  test/1928-exception-event-exception/Android.bp\n  test/1930-monitor-info/Android.bp\n  test/1931-monitor-events/Android.bp\n  test/1932-monitor-events-misc/Android.bp\n  test/1933-monitor-current-contended/Android.bp\n  test/1934-jvmti-signal-thread/Android.bp\n  test/1935-get-set-current-frame-jit/Android.bp\n  test/1936-thread-end-events/Android.bp\n  test/1937-transform-soft-fail/Android.bp\n  test/1938-transform-abstract-single-impl/Android.bp\n  test/1939-proxy-frames/Android.bp\n  test/1941-dispose-stress/Android.bp\n  test/1942-suspend-raw-monitor-exit/Android.bp\n  test/1943-suspend-raw-monitor-wait/Android.bp\n  test/1945-proxy-method-arguments/Android.bp\n  test/1947-breakpoint-redefine-deopt/Android.bp\n  test/1949-short-dex-file/Android.bp\n  test/1951-monitor-enter-no-suspend/Android.bp\n  test/1953-pop-frame/Android.bp\n  test/1954-pop-frame-jit/Android.bp\n  test/1955-pop-frame-jit-called/Android.bp\n  test/1956-pop-frame-jit-calling/Android.bp\n  test/1957-error-ext/Android.bp\n  test/1958-transform-try-jit/Android.bp\n  test/1959-redefine-object-instrument/Android.bp\n  test/1960-checker-bounds-codegen/Android.bp\n  test/1960-obsolete-jit-multithread-native/Android.bp\n  test/1961-checker-loop-vectorizer/Android.bp\n  test/1961-obsolete-jit-multithread/Android.bp\n  test/1962-multi-thread-events/Android.bp\n  test/1963-add-to-dex-classloader-in-memory/Android.bp\n  test/1967-get-set-local-bad-slot/Android.bp\n  test/1968-force-early-return/Android.bp\n  test/1969-force-early-return-void/Android.bp\n  test/1970-force-early-return-long/Android.bp\n  test/1971-multi-force-early-return/Android.bp\n  test/1972-jni-id-swap-indices/Android.bp\n  test/1973-jni-id-swap-pointer/Android.bp\n  test/1974-resize-array/Android.bp\n  test/1975-hello-structural-transformation/Android.bp\n  test/1976-hello-structural-static-methods/Android.bp\n  test/1977-hello-structural-obsolescence/Android.bp\n  test/1978-regular-obsolete-then-structural-obsolescence/Android.bp\n  test/1979-threaded-structural-transformation/Android.bp\n  test/1980-obsolete-object-cleared/Android.bp\n  test/1982-no-virtuals-structural-redefinition/Android.bp\n  test/1984-structural-redefine-field-trace/Android.bp\n  test/1985-structural-redefine-stack-scope/Android.bp\n  test/1986-structural-redefine-multi-thread-stack-scope/Android.bp\n  test/1987-structural-redefine-recursive-stack-scope/Android.bp\n  test/1988-multi-structural-redefine/Android.bp\n  test/1989-transform-bad-monitor/Android.bp\n  test/1990-structural-bad-verify/Android.bp\n  test/1991-hello-structural-retransform/Android.bp\n  test/1992-retransform-no-such-field/Android.bp\n  test/1993-fallback-non-structural/Android.bp\n  test/1994-final-virtual-structural/Android.bp\n  test/1995-final-virtual-structural-multithread/Android.bp\n  test/1996-final-override-virtual-structural/Android.bp\n  test/1997-structural-shadow-method/Android.bp\n  test/1998-structural-shadow-field/Android.bp\n  test/1999-virtual-structural/Android.bp\n  test/2003-double-virtual-structural/Android.bp\n  test/2004-double-virtual-structural-abstract/Android.bp\n  test/2005-pause-all-redefine-multithreaded/Android.bp\n  test/2008-redefine-then-old-reflect-field/Android.bp\n  test/201-built-in-except-detail-messages/Android.bp\n  test/2011-stack-walk-concurrent-instrument/Android.bp\n  test/2019-constantcalculationsinking/Android.bp\n  test/202-thread-oome/Android.bp\n  test/2020-InvokeVirtual-Inlining/Android.bp\n  test/2021-InvokeStatic-Inlining/Android.bp\n  test/2022-Invariantloops/Android.bp\n  test/2023-InvariantLoops_typecast/Android.bp\n  test/2024-InvariantNegativeLoop/Android.bp\n  test/2025-ChangedArrayValue/Android.bp\n  test/2026-DifferentMemoryLSCouples/Android.bp\n  test/2027-TwiceTheSameMemoryCouple/Android.bp\n  test/2028-MultiBackward/Android.bp\n  test/2029-contended-monitors/Android.bp\n  test/203-multi-checkpoint/Android.bp\n  test/2030-long-running-child/Android.bp\n  test/2031-zygote-compiled-frame-deopt/Android.bp\n  test/2033-shutdown-mechanics/Android.bp\n  test/2036-jni-filechannel/Android.bp\n  test/2037-thread-name-inherit/Android.bp\n  test/2231-checker-heap-poisoning/Android.bp\n  test/2232-write-metrics-to-log/Android.bp\n  test/300-package-override/Android.bp\n  test/301-abstract-protected/Android.bp\n  test/302-float-conversion/Android.bp\n  test/304-method-tracing/Android.bp\n  test/305-other-fault-handler/Android.bp\n  test/401-optimizing-compiler/Android.bp\n  test/402-optimizing-control-flow/Android.bp\n  test/403-optimizing-long/Android.bp\n  test/404-optimizing-allocator/Android.bp\n  test/405-optimizing-long-allocator/Android.bp\n  test/406-fields/Android.bp\n  test/407-arrays/Android.bp\n  test/408-move-bug/Android.bp\n  test/409-materialized-condition/Android.bp\n  test/410-floats/Android.bp\n  test/411-checker-hdiv-hrem-const/Android.bp\n  test/411-checker-hdiv-hrem-pow2/Android.bp\n  test/411-checker-instruct-simplifier-hrem/Android.bp\n  test/411-optimizing-arith/Android.bp\n  test/413-regalloc-regression/Android.bp\n  test/414-static-fields/Android.bp\n  test/418-const-string/Android.bp\n  test/419-long-parameter/Android.bp\n  test/420-const-class/Android.bp\n  test/421-exceptions/Android.bp\n  test/421-large-frame/Android.bp\n  test/422-instanceof/Android.bp\n  test/422-type-conversion/Android.bp\n  test/423-invoke-interface/Android.bp\n  test/424-checkcast/Android.bp\n  test/426-monitor/Android.bp\n  test/427-bitwise/Android.bp\n  test/427-bounds/Android.bp\n  test/429-ssa-builder/Android.bp\n  test/430-live-register-slow-path/Android.bp\n  test/433-gvn/Android.bp\n  test/434-shifter-operand/Android.bp\n  test/435-try-finally-without-catch/Android.bp\n  test/436-rem-float/Android.bp\n  test/436-shift-constant/Android.bp\n  test/437-inline/Android.bp\n  test/438-volatile/Android.bp\n  test/439-npe/Android.bp\n  test/439-swap-double/Android.bp\n  test/440-stmp/Android.bp\n  test/441-checker-inliner/Android.bp\n  test/443-not-bool-inline/Android.bp\n  test/444-checker-nce/Android.bp\n  test/445-checker-licm/Android.bp\n  test/446-checker-inliner2/Android.bp\n  test/447-checker-inliner3/Android.bp\n  test/449-checker-bce-rem/Android.bp\n  test/449-checker-bce/Android.bp\n  test/450-checker-types/Android.bp\n  test/451-regression-add-float/Android.bp\n  test/451-spill-splot/Android.bp\n  test/454-get-vreg/Android.bp\n  test/455-checker-gvn/Android.bp\n  test/456-baseline-array-set/Android.bp\n  test/458-long-to-fpu/Android.bp\n  test/461-get-reference-vreg/Android.bp\n  test/464-checker-inline-sharpen-calls/Android.bp\n  test/465-checker-clinit-gvn/Android.bp\n  test/466-get-live-vreg/Android.bp\n  test/469-condition-materialization/Android.bp\n  test/470-huge-method/Android.bp\n  test/471-deopt-environment/Android.bp\n  test/472-type-propagation/Android.bp\n  test/473-checker-inliner-constants/Android.bp\n  test/473-remove-dead-block/Android.bp\n  test/474-checker-boolean-input/Android.bp\n  test/474-fp-sub-neg/Android.bp\n  test/475-simplify-mul-zero/Android.bp\n  test/476-checker-ctor-fence-redun-elim/Android.bp\n  test/476-checker-ctor-memory-barrier/Android.bp\n  test/476-clinit-inline-static-invoke/Android.bp\n  test/477-checker-bound-type/Android.bp\n  test/477-long-2-float-convers-precision/Android.bp\n  test/478-checker-clinit-check-pruning/Android.bp\n  test/478-checker-inline-noreturn/Android.bp\n  test/478-checker-inliner-nested-loop/Android.bp\n  test/479-regression-implicit-null-check/Android.bp\n  test/480-checker-dead-blocks/Android.bp\n  test/481-regression-phi-cond/Android.bp\n  test/482-checker-loop-back-edge-use/Android.bp\n  test/483-dce-block/Android.bp\n  test/485-checker-dce-switch/Android.bp\n  test/486-checker-must-do-null-check/Android.bp\n  test/487-checker-inline-calls/Android.bp\n  test/488-checker-inline-recursive-calls/Android.bp\n  test/489-current-method-regression/Android.bp\n  test/490-checker-inline/Android.bp\n  test/491-current-method/Android.bp\n  test/492-checker-inline-invoke-interface/Android.bp\n  test/493-checker-inline-invoke-interface/Android.bp\n  test/494-checker-instanceof-tests/Android.bp\n  test/495-checker-checkcast-tests/Android.bp\n  test/496-checker-inlining-class-loader/Android.bp\n  test/497-inlining-and-class-loader/Android.bp\n  test/499-bce-phi-array-length/Android.bp\n  test/500-instanceof/Android.bp\n  test/505-simplifier-type-propagation/Android.bp\n  test/507-boolean-test/Android.bp\n  test/507-referrer/Android.bp\n  test/508-checker-disassembly/Android.bp\n  test/508-referrer-method/Android.bp\n  test/513-array-deopt/Android.bp\n  test/514-shifts/Android.bp\n  test/519-bound-load-class/Android.bp\n  test/521-checker-array-set-null/Android.bp\n  test/521-regression-integer-field-set/Android.bp\n  test/524-boolean-simplifier-regression/Android.bp\n  test/525-checker-arrays-fields1/Android.bp\n  test/525-checker-arrays-fields2/Android.bp\n  test/526-checker-caller-callee-regs/Android.bp\n  test/526-long-regalloc/Android.bp\n  test/527-checker-array-access-simd/Android.bp\n  test/527-checker-array-access-split/Android.bp\n  test/528-long-hint/Android.bp\n  test/529-long-split/Android.bp\n  test/530-checker-loops1/Android.bp\n  test/530-checker-loops2/Android.bp\n  test/530-checker-loops3/Android.bp\n  test/530-checker-loops4/Android.bp\n  test/530-checker-loops5/Android.bp\n  test/530-checker-lse-ctor-fences/Android.bp\n  test/530-checker-lse-simd/Android.bp\n  test/530-checker-lse/Android.bp\n  test/530-checker-lse2/Android.bp\n  test/530-instanceof-checkcast/Android.bp\n  test/530-regression-lse/Android.bp\n  test/532-checker-nonnull-arrayset/Android.bp\n  test/534-checker-bce-deoptimization/Android.bp\n  test/535-deopt-and-inlining/Android.bp\n  test/536-checker-intrinsic-optimization/Android.bp\n  test/537-checker-arraycopy/Android.bp\n  test/537-checker-jump-over-jump/Android.bp\n  test/538-checker-embed-constants/Android.bp\n  test/540-checker-rtp-bug/Android.bp\n  test/542-bitfield-rotates/Android.bp\n  test/542-inline-trycatch/Android.bp\n  test/542-unresolved-access-check/Android.bp\n  test/545-tracing-and-jit/Android.bp\n  test/548-checker-inlining-and-dce/Android.bp\n  test/549-checker-types-merge/Android.bp\n  test/550-checker-multiply-accumulate/Android.bp\n  test/550-new-instance-clinit/Android.bp\n  test/551-checker-clinit/Android.bp\n  test/551-checker-shifter-operand/Android.bp\n  test/551-implicit-null-checks/Android.bp\n  test/552-checker-sharpening/Android.bp\n  test/552-checker-x86-avx2-bit-manipulation/Android.bp\n  test/554-checker-rtp-checkcast/Android.bp\n  test/555-UnsafeGetLong-regression/Android.bp\n  test/557-checker-instruct-simplifier-ror/Android.bp\n  test/558-switch/Android.bp\n  test/559-bce-ssa/Android.bp\n  test/559-checker-rtp-ifnotnull/Android.bp\n  test/560-packed-switch/Android.bp\n  test/561-divrem/Android.bp\n  test/561-shared-slowpaths/Android.bp\n  test/562-bce-preheader/Android.bp\n  test/562-checker-no-intermediate/Android.bp\n  test/563-checker-invoke-super/Android.bp\n  test/564-checker-bitcount/Android.bp\n  test/564-checker-inline-loop/Android.bp\n  test/564-checker-negbitwise/Android.bp\n  test/565-checker-condition-liveness/Android.bp\n  test/566-checker-codegen-select/Android.bp\n  test/566-polymorphic-inlining/Android.bp\n  test/567-checker-builder-intrinsics/Android.bp\n  test/568-checker-onebit/Android.bp\n  test/570-checker-select/Android.bp\n  test/572-checker-array-get-regression/Android.bp\n  test/573-checker-checkcast-regression/Android.bp\n  test/576-polymorphic-inlining/Android.bp\n  test/577-checker-fp2int/Android.bp\n  test/578-bce-visit/Android.bp\n  test/578-polymorphic-inlining/Android.bp\n  test/579-inline-infinite/Android.bp\n  test/580-checker-round/Android.bp\n  test/580-crc32/Android.bp\n  test/581-rtp/Android.bp\n  test/582-checker-bce-length/Android.bp\n  test/583-checker-zero/Android.bp\n  test/584-checker-div-bool/Android.bp\n  test/589-super-imt/Android.bp\n  test/590-checker-arr-set-null-regression/Android.bp\n  test/591-checker-regression-dead-loop/Android.bp\n  test/593-checker-long-2-float-regression/Android.bp\n  test/594-checker-array-alias/Android.bp\n  test/594-load-string-regression/Android.bp\n  test/595-profile-saving/Android.bp\n  test/597-deopt-busy-loop/Android.bp\n  test/597-deopt-invoke-stub/Android.bp\n  test/597-deopt-new-string/Android.bp\n  test/602-deoptimizeable/Android.bp\n  test/603-checker-instanceof/Android.bp\n  test/604-hot-static-interface/Android.bp\n  test/605-new-string-from-bytes/Android.bp\n  test/607-daemon-stress/Android.bp\n  test/609-checker-inline-interface/Android.bp\n  test/609-checker-x86-bounds-check/Android.bp\n  test/610-arraycopy/Android.bp\n  test/611-checker-simplify-if/Android.bp\n  test/614-checker-dump-constant-location/Android.bp\n  test/615-checker-arm64-store-zero/Android.bp\n  test/616-cha-abstract/Android.bp\n  test/616-cha-interface/Android.bp\n  test/616-cha-miranda/Android.bp\n  test/616-cha-native/Android.bp\n  test/616-cha-regression-proxy-method/Android.bp\n  test/616-cha/Android.bp\n  test/617-clinit-oome/Android.bp\n  test/618-checker-induction/Android.bp\n  test/619-checker-current-method/Android.bp\n  test/620-checker-bce-intrinsics/Android.bp\n  test/622-checker-bce-regressions/Android.bp\n  test/623-checker-loop-regressions/Android.bp\n  test/625-checker-licm-regressions/Android.bp\n  test/626-set-resolved-string/Android.bp\n  test/627-checker-unroll/Android.bp\n  test/628-vdex/Android.bp\n  test/629-vdex-speed/Android.bp\n  test/631-checker-get-class/Android.bp\n  test/632-checker-char-at-bounds/Android.bp\n  test/635-checker-arm64-volatile-load-cc/Android.bp\n  test/636-arm64-veneer-pool/Android.bp\n  test/637-checker-throw-inline/Android.bp\n  test/638-checker-inline-cache-intrinsic/Android.bp\n  test/639-checker-code-sinking/Android.bp\n  test/640-checker-boolean-simd/Android.bp\n  test/640-checker-integer-valueof/Android.bp\n  test/640-checker-simd/Android.bp\n  test/641-checker-arraycopy/Android.bp\n  test/641-iterations/Android.bp\n  test/642-fp-callees/Android.bp\n  test/643-checker-bogus-ic/Android.bp\n  test/645-checker-abs-simd/Android.bp\n  test/646-checker-arraycopy-large-cst-pos/Android.bp\n  test/646-checker-long-const-to-int/Android.bp\n  test/646-checker-simd-hadd/Android.bp\n  test/647-jni-get-field-id/Android.bp\n  test/650-checker-inline-access-thunks/Android.bp\n  test/652-deopt-intrinsic/Android.bp\n  test/654-checker-periodic/Android.bp\n  test/655-checker-simd-arm-opt/Android.bp\n  test/655-jit-clinit/Android.bp\n  test/656-checker-simd-opt/Android.bp\n  test/656-loop-deopt/Android.bp\n  test/657-branches/Android.bp\n  test/658-fp-read-barrier/Android.bp\n  test/660-checker-sad/Android.bp\n  test/660-checker-simd-sad/Android.bp\n  test/660-clinit/Android.bp\n  test/661-checker-simd-reduc/Android.bp\n  test/661-oat-writer-layout/Android.bp\n  test/662-regression-alias/Android.bp\n  test/664-aget-verifier/Android.bp\n  test/665-checker-simd-zero/Android.bp\n  test/666-dex-cache-itf/Android.bp\n  test/667-checker-simd-alignment/Android.bp\n  test/667-jit-jni-stub/Android.bp\n  test/667-out-of-bounds/Android.bp\n  test/669-checker-break/Android.bp\n  test/671-npe-field-opts/Android.bp\n  test/672-checker-throw-method/Android.bp\n  test/673-checker-throw-vmethod/Android.bp\n  test/674-HelloWorld-Dm/Android.bp\n  test/674-hotness-compiled/Android.bp\n  test/676-proxy-jit-at-first-use/Android.bp\n  test/677-fsi2/Android.bp\n  test/679-locks/Android.bp\n  test/680-checker-deopt-dex-pc-0/Android.bp\n  test/680-sink-regression/Android.bp\n  test/684-checker-simd-dotprod/Android.bp\n  test/684-select-condition/Android.bp\n  test/685-deoptimizeable/Android.bp\n  test/687-deopt/Android.bp\n  test/689-multi-catch/Android.bp\n  test/689-zygote-jit-deopt/Android.bp\n  test/693-vdex-inmem-loader-evict/Android.bp\n  test/694-clinit-jit/Android.bp\n  test/695-simplify-throws/Android.bp\n  test/696-loop/Android.bp\n  test/697-checker-string-append/Android.bp\n  test/698-selects/Android.bp\n  test/700-LoadArgRegs/Android.bp\n  test/703-floating-point-div/Android.bp\n  test/704-multiply-accumulate/Android.bp\n  test/705-register-conflict/Android.bp\n  test/707-checker-invalid-profile/Android.bp\n  test/708-jit-cache-churn/Android.bp\n  test/711-checker-type-conversion/Android.bp\n  test/717-integer-value-of/Android.bp\n  test/718-zipfile-finalizer/Android.bp\n  test/720-thread-priority/Android.bp\n  test/721-osr/Android.bp\n  test/726-array-store/Android.bp\n  test/728-imt-conflict-zygote/Android.bp\n  test/805-TooDeepClassInstanceOf/Android.bp\n  test/806-TooWideClassInstanceOf/Android.bp\n  test/812-recursive-default/Android.bp\n  test/813-fp-args/Android.bp\n  test/814-large-field-offsets/Android.bp\n  test/815-invokeinterface-default/Android.bp\n  test/818-clinit-nterp/Android.bp\n  test/900-hello-plugin/Android.bp\n  test/901-hello-ti-agent/Android.bp\n  test/902-hello-transformation/Android.bp\n  test/903-hello-tagging/Android.bp\n  test/904-object-allocation/Android.bp\n  test/905-object-free/Android.bp\n  test/906-iterate-heap/Android.bp\n  test/907-get-loaded-classes/Android.bp\n  test/908-gc-start-finish/Android.bp\n  test/910-methods/Android.bp\n  test/911-get-stack-trace/Android.bp\n  test/913-heaps/Android.bp\n  test/914-hello-obsolescence/Android.bp\n  test/915-obsolete-2/Android.bp\n  test/916-obsolete-jit/Android.bp\n  test/917-fields-transformation/Android.bp\n  test/918-fields/Android.bp\n  test/919-obsolete-fields/Android.bp\n  test/920-objects/Android.bp\n  test/921-hello-failure/Android.bp\n  test/922-properties/Android.bp\n  test/923-monitors/Android.bp\n  test/924-threads/Android.bp\n  test/925-threadgroups/Android.bp\n  test/926-multi-obsolescence/Android.bp\n  test/927-timers/Android.bp\n  test/928-jni-table/Android.bp\n  test/930-hello-retransform/Android.bp\n  test/931-agent-thread/Android.bp\n  test/932-transform-saves/Android.bp\n  test/933-misc-events/Android.bp\n  test/937-hello-retransform-package/Android.bp\n  test/939-hello-transformation-bcp/Android.bp\n  test/940-recursive-obsolete/Android.bp\n  test/941-recursive-obsolete-jit/Android.bp\n  test/942-private-recursive/Android.bp\n  test/943-private-recursive-jit/Android.bp\n  test/944-transform-classloaders/Android.bp\n  test/945-obsolete-native/Android.bp\n  test/946-obsolete-throw/Android.bp\n  test/947-reflect-method/Android.bp\n  test/949-in-memory-transform/Android.bp\n  test/950-redefine-intrinsic/Android.bp\n  test/951-threaded-obsolete/Android.bp\n  test/963-default-range-smali/Android.bp\n  test/982-ok-no-retransform/Android.bp\n  test/983-source-transform-verify/Android.bp\n  test/984-obsolete-invoke/Android.bp\n  test/985-re-obsolete/Android.bp\n  test/986-native-method-bind/Android.bp\n  test/987-agent-bind/Android.bp\n  test/988-method-trace/Android.bp\n  test/989-method-trace-throw/Android.bp\n  test/990-field-trace/Android.bp\n  test/991-field-trace-2/Android.bp\n  test/992-source-data/Android.bp\n  test/993-breakpoints/Android.bp\n  test/994-breakpoint-line/Android.bp\n  test/995-breakpoints-throw/Android.bp\n  test/996-breakpoint-obsolete/Android.bp\n  test/997-single-step/Android.bp\n  test/Android.bp\n  tools/Android.bp\n  tools/ahat/Android.bp\n  tools/ahat/Android.mk\n  tools/art_verifier/Android.bp\n  tools/cpp-define-generator/Android.bp\n  tools/dexanalyze/Android.bp\n  tools/dexfuzz/Android.bp\n  tools/dmtracedump/Android.bp\n  tools/hiddenapi/Android.bp\n  tools/jfuzz/Android.bp\n  tools/jvmti-agents/breakpoint-logger/Android.bp\n  tools/jvmti-agents/chain-agents/Android.bp\n  tools/jvmti-agents/dump-jvmti-state/Android.bp\n  tools/jvmti-agents/enable-vlog/Android.bp\n  tools/jvmti-agents/field-counts/Android.bp\n  tools/jvmti-agents/field-null-percent/Android.bp\n  tools/jvmti-agents/jit-load/Android.bp\n  tools/jvmti-agents/list-extensions/Android.bp\n  tools/jvmti-agents/simple-force-redefine/Android.bp\n  tools/jvmti-agents/simple-profile/Android.bp\n  tools/jvmti-agents/ti-alloc-sample/Android.bp\n  tools/jvmti-agents/ti-fast/Android.bp\n  tools/jvmti-agents/titrace/Android.bp\n  tools/jvmti-agents/wrapagentproperties/Android.bp\n  tools/signal_dumper/Android.bp\n  tools/tracefast-plugin/Android.bp\n  tools/veridex/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD to:\n  sigchainlib/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD\n    SPDX-license-identifier-GPL-2.0\nto:\n  Android.bp\n  Android.mk\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-GPL-2.0\n    SPDX-license-identifier-GPL-with-classpath-exception\nto:\n  dt_fd_forward/Android.bp\n  openjdkjvmti/Android.bp\n\nAdded SPDX-license-identifier-GPL-2.0\n    SPDX-license-identifier-GPL-with-classpath-exception\nto:\n  openjdkjvm/Android.bp\n\nBug: 68860345\nBug: 151177513\nBug: 151953481\n\nTest: m all\n\nExempt-From-Owner-Approval: janitorial work\nChange-Id: If775045c12955fa6d72d40ccf2a09beef93d1699\nMerged-in: If775045c12955fa6d72d40ccf2a09beef93d1699\n"
    },
    {
      "commit": "ab2fde326679cfc3794830c88c343d1f5d34ce75",
      "tree": "7058930722bf5f8ee6fdb8fce0f0298bc1777c17",
      "parents": [
        "c6c6a1511d58ee84c196b8c011a90ef93d65a48f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 01 11:43:45 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 01 17:11:50 2021 +0000"
      },
      "message": "Don\u0027t abort if the oat file doesn\u0027t have dex2oat command line key.\n\nWhen running with vdex only, it\u0027s expected to not have one.\n\nTest: test.py --no-image\nBug: 176960283\nChange-Id: I37756b0df80c028760afee61da6290ab183316d0\n"
    },
    {
      "commit": "c6c6a1511d58ee84c196b8c011a90ef93d65a48f",
      "tree": "4c1dfb9bc6fa1f73b1c36a96ae78cb6b8e120886",
      "parents": [
        "41af856c120f71bd6a2594c6b2ac59affcc7b7ae"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 01 13:51:22 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 01 17:11:40 2021 +0000"
      },
      "message": "Adjust test runner for vdex.\n\nWhen arguments are being explicity passed for vdex testing, invoke\ndex2oat. Otherwise just remove the oat file.\n\nTest: 629-vdex-speed\nBug: 176960283\nChange-Id: If522883bd453982afb33c57a209c8ce953b91519\n"
    },
    {
      "commit": "41af856c120f71bd6a2594c6b2ac59affcc7b7ae",
      "tree": "e6e158dd73e61ff1a2b4e8edc1446fe2e2bf8b4b",
      "parents": [
        "1dc36562625ef63900c5ec50593fe65cba923bce"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Feb 24 18:50:04 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 01 16:23:42 2021 +0000"
      },
      "message": "Add `CtsLibcoreTestCases` to the generated ART MTS definition.\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nBug: 167385698\nChange-Id: I80b75effead5e692f270f672e2912db30cf5c8c5\n"
    },
    {
      "commit": "1dc36562625ef63900c5ec50593fe65cba923bce",
      "tree": "39337b811ab52fc0205ea1b92abc1fc8b463ed67",
      "parents": [
        "12060303e3d820428c7b34008bcd5a3606f435aa"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 26 16:29:44 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 01 12:24:12 2021 +0000"
      },
      "message": "Move 75% of ART run-tests to test group `presubmit` in `TEST_MAPPING`.\n\nMove some more ART run-tests from the `postsubmit` test group to the\n`presubmit` test group. This progressive rollout is to make sure\nintroducing ART run-tests to this test group won\u0027t disturb/break\nAndroid presubmits.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 621 ART run-tests out of 919 (67%).\n  Generated TEST_MAPPING entries for 379 ART run-tests out of 919 (41%):\n    18 tests (5%) in `mainline-presubmit` test group.\n    284 tests (75%) in `presubmit` test group.\n    95 tests (25%) in `postsubmit` test group.\n\nTest: atest --test-mapping art:presubmit\nTest: atest --test-mapping art:postsubmit\nBug: 152374989\nBug: 169310621\nChange-Id: I72874fe39c52c1c0945b4cc2c48820fc432e4054\n"
    },
    {
      "commit": "12060303e3d820428c7b34008bcd5a3606f435aa",
      "tree": "c8e1d69f6bbba6a4ea9331bed04857d2e71c8ad9",
      "parents": [
        "bcd4bc90530994abb38af57c304f989ac8aaf80e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 26 16:08:20 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 01 11:30:24 2021 +0000"
      },
      "message": "Put 10% 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\npresubmits.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 621 ART run-tests out of 919 (67%).\n  Generated TEST_MAPPING entries for 379 ART run-tests out of 919 (41%):\n    37 tests (10%) in `mainline-presubmit` test group.\n    189 tests (50%) in `presubmit` test group.\n    190 tests (50%) in `postsubmit` test group.\n\nTest: atest --test-mapping art:mainline-presubmit\nBug: 178703264\nBug: 152374989\nChange-Id: I9dff31c5044583856d1586a437fdf35dd437a8df\n"
    },
    {
      "commit": "bcd4bc90530994abb38af57c304f989ac8aaf80e",
      "tree": "74a1c1fa09178db1b409a34573f0499d786a334b",
      "parents": [
        "55a45f3edfe4b17424de3c6c29c55fff1a2c10fc"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 26 14:39:48 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 01 09:59:25 2021 +0000"
      },
      "message": "Add rpl@google.com and dsrbecky@google.com as owners of ART tests.\n\nThis is in order to allow David and I (Roland) to receive OWNERS-based\nnotifications (e.g. flake tests reports).\n\nImplicitly inherit owners from the parent directory, but also\nexplicitly give everybody owners\u0027 capabilities (as in the parent\u0027s\nOWNERS) for flexibility.\n\nTest: build/make/tools/checkowners.py -c art/test/OWNERS\nChange-Id: I4bce50ac5e6db28270cdbd2bc03a295d60445ad9\n"
    },
    {
      "commit": "de1449e2ed9003897c743145261240c8e38f04d2",
      "tree": "8349ae2ac22f487a115dbc308acfeb70471643a6",
      "parents": [
        "e4b7d434912fabd85703f0a55dc49767cb0dbe9f"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Feb 24 10:35:44 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Sat Feb 27 09:36:41 2021 +0000"
      },
      "message": "Add `MainlineTestModuleController` support for AOSP to ART tests.\n\nSince the introduction of `MainlineTestModuleController` support in\nART run-tests and gtests, when these tests were run in a Mainline\ncontext (e.g. with `mts-tradefed`), they were only enabled when the\ninternal version of the ART Mainline Module (`com.google.android.art`)\nwas present on the device used for testing. However, AOSP platform and\nmodule builds contain the external version of the ART Mainline\nModule (`com.android.art`). Allow ART tests to run in Mainline testing\nwhen either of these modules is installed.\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art (with AOSP build)\nBug: 167385698\nChange-Id: I543aa6b51c4812bbaba3352c9c241e5ee898b783\n"
    },
    {
      "commit": "16f60dc094fe283d1fcfd062b3144452e005c133",
      "tree": "7623386d460cd3c9a125aaaf60b1e81196ab48f1",
      "parents": [
        "9a1a5a9ae8611c0eb7dd5bfaffc8682eea3ee7c7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Feb 16 15:35:16 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Feb 26 13:18:41 2021 +0000"
      },
      "message": "Support loading vdex files without odex.\n\nGetDexoptNeeded with \u0027verify\u0027 as filter will return false when a vdex is\navailable.\n\nTest: 628-vdex, 820-vdex-multidex, test.py\nBug: 176960283\nChange-Id: I3ac2f747d1e7f5331a49a22c94983959e3b60122\n"
    },
    {
      "commit": "9a1a5a9ae8611c0eb7dd5bfaffc8682eea3ee7c7",
      "tree": "99cf9c688d3631db55a00b1fcf6eaf0cdc40c946",
      "parents": [
        "001bb57849d1cd31612fb8958d85a2342c31b534"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Nov 16 12:11:37 2020 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 26 12:59:43 2021 +0000"
      },
      "message": "Regenerate ART test files to reinclude ART Checker tests.\n\nThis partly reverts commit 463255b4f1fcc8c34856a6b0780cf5ef238941c2.\n\nReason for revert: Checker support in test suites is complete.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 621 ART run-tests out of 919 (67%).\n  Generated TEST_MAPPING entries for 379 ART run-tests out of 919 (41%):\n    18 tests (5%) in `mainline-presubmit` test group.\n    189 tests (50%) in `presubmit` test group.\n    190 tests (50%) in `postsubmit` test group.\n\nTest: atest --test-mapping art:all\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nBug: 169852871\nBug: 162408889\nChange-Id: Ic081869d6629776c0d70e8ceb3c2e9f0d3bf0caa\n"
    },
    {
      "commit": "135e948025ac2fbc262ad6da34052a8b981c9aee",
      "tree": "8936a6661e22acda2f9ed1ed442fc0097c1e84e6",
      "parents": [
        "df69bd7575cf2537f5563141fd7cb945712686ca"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Feb 23 19:27:37 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Feb 24 14:11:49 2021 +0000"
      },
      "message": "Partially generate the ART MTS definition in script `regen-test-files`.\n\nAdd support for option `-m`, `--regen-art-mts` to script\n`test/utils/regen-test-files`. When enabled, regenerate file\n`tools/mts-tradefed/res/config/mts-art-tests-list-user.xml` under the\nAndroid project `test/mts`.\n\nTest: Run `test/utils/regen-test-files -m` and check the resulting\n      `test/mts/tools/mts-tradefed/res/config/mts-art-tests-list-user.xml`\n      file is unchanged, apart from some whitespace changes.\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nBug: 167385698\nChange-Id: I3ba428eff5954e72967c08b29561227681072261\n"
    },
    {
      "commit": "df69bd7575cf2537f5563141fd7cb945712686ca",
      "tree": "6584dbdb18a508890f769a9a77f8d328cade66c6",
      "parents": [
        "aa704f17d0d0a026b496853811fefda5d0783028"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Tue Feb 23 11:36:21 2021 -0800"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 24 00:40:14 2021 +0000"
      },
      "message": "Remove Flags\n\nThese were reading system properties which caused security warnings in\nsome cases. Removing to allow us to do a more comprehensive design.\n\nThis reverts commit 0a6e9e56f7f3ac7750b38eaba83639ad47a2692f.\nThis reverts commit 3dba023d4fb47882fa215715c196cfa3be30c098.\n\nTest: test.py --host\nChange-Id: I04e8b7a934540b250e6fc56f5aa6ce7f18131d4d\n"
    },
    {
      "commit": "0d768f126f6d9bae75614ea1d62776d166403cee",
      "tree": "dc0a79dab2c05d6ff429f7fa1de0beb163f02ad0",
      "parents": [
        "1214319d27e7fb4c4ff00b39799df6f15288098a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Feb 18 18:53:46 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Feb 23 16:28:39 2021 +0000"
      },
      "message": "Put 5% 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\npresubmits.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 621 ART run-tests out of 918 (67%).\n  Generated TEST_MAPPING entries for 256 ART run-tests out of 918 (27%):\n    12 tests (5%) in `mainline-presubmit` test group.\n    128 tests (50%) in `presubmit` test group.\n    128 tests (50%) in `postsubmit` test group.\n\nAlso make some stylistic changes (e.g. use list comprehensions instead\nof `map()` and `lambda`; use parentheses for implied line continuation\ninstead of escaping line breaks with backslashes).\n\nTest: atest --test-mapping art:mainline-presubmit\nBug: 178703264\nBug: 152374989\nChange-Id: I25950b02fbd3a1cbd4193a5f7b87f8b3867bd16b\n"
    },
    {
      "commit": "cedec9db0a9accfdcf5eb695879e0b2caf2c34cb",
      "tree": "99fd71a3ef398a471507ed815c4a175805ad51f3",
      "parents": [
        "0ccc970b3c00b172e3cff8e10da13dd6323ccd52"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Feb 08 16:16:13 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Feb 23 14:34:43 2021 +0000"
      },
      "message": "Do not create HandleScope for JNI transitions.\n\nWe previously crated a HandleScope in the JNI transition\nframe to hold references passed as jobject (jclass, etc.)\nto the native function and these references were actually\nspilled twice during the transition.\n\nWe now construct the jobject as a pointer to the reference\nspilled in the reserved out vreg area in the caller\u0027s frame.\nAnd the jclass for static methods is just a pointer to the\nmethod\u0027s declaring class. This reduces the amount of work\nrequired in the JNI transition, both on entry (in compiled\nstubs) and exit (in JniMethodEnd*).\n\nSome additional work is required when GC visits references\nof a native method as we need to walk over the method\u0027s\nshorty which was unnecessary for a HandleScope.\n\nAlso fix Thread::InitStackHwm() to calculate correct stack\nsize needed by the new Thread::IsJniTransitionReference().\n\nThe results for StringToBytesBenchmark on blueline little\ncores running at fixed frequency 1420800 are approximately\narm64 (medians from 3 runs) before after\ntimeGetBytesAscii EMPTY     447.33 436.86\ntimeGetBytesIso88591 EMPTY  440.52 431.13\ntimeGetBytesUtf8 EMPTY      432.31 409.82\narm (medians from 3 runs)   before after\ntimeGetBytesAscii EMPTY     500.53 490.87\ntimeGetBytesIso88591 EMPTY  496.45 495.30\ntimeGetBytesUtf8 EMPTY      488.84 472.68\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nTest: testrunner.py --host --gcstress\nTest: testrunner.py --host --jit-on-first-use\nTest: testrunner.py --host --jit-on-first-use --gcstress\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nTest: boots.\nBug: 172332525\nChange-Id: I658f9d87071587b3e89f31c65feca976a11e9cc2\n"
    },
    {
      "commit": "fedff519e0bab2702cbf1ea271cbcb89eeeb52a3",
      "tree": "1219011411161f4f97b935e505f6e166df888d6c",
      "parents": [
        "48516425230845987f5fe3d17e5d0acfc6f82131"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Feb 07 21:36:33 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Feb 22 15:29:12 2021 +0000"
      },
      "message": "Change runtime behavior related to hiddenapi.\n\nWhen resolving a method, if the found method is not accessible, check if\nthere are methods defined in interfaces which are.\n\nBug: 178680596\nBug: 122551864\nTest: 817-hiddenapi\nChange-Id: If7631b30b2eb8eb70d3d0fa1522744fbbd1f66a1\n"
    },
    {
      "commit": "a2f1319a8941ae52c98594824b919c08eeb0ecd1",
      "tree": "df07248cd6701bf764c01ed1322b355c16e159bf",
      "parents": [
        "642c0f0e79ce35f11e0af5625618cb126ad40ffa"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Feb 03 18:19:03 2021 -0800"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 19 20:32:08 2021 +0000"
      },
      "message": "Add text-profile support for multiple ICs\n\nText profile inline-cache support was limited to methods with only a\nsingle invoke. This extends support so it is instead based on the\nreceiver type and supports an arbitrary number of invokes. It does\nassume that all invokes of the same receivers should have the same\nICs. This enables us to create text profiles that can survive most\ncommon edits to the underlying java language files.\n\nIC lines are of the following format\n\n\u003c\u003cCLASS_GROUP\u003e\u003e :\u003d {CLASS}(,{CLASS})*\n\u003c\u003cIC_GROUP\u003e\u003e :\u003d \\[{CLASS}{CLASS_GROUP}\n\u003c\u003cIC_LINE\u003e\u003e :\u003d {PROFILE_FLAGS}{CLASS}-\u003e{METHOD}\\+{IC_GROUP}*\n\nThis means a typical line might look like:\n\n```\nHLTestInline;-\u003einlineTriplePolymorphic(LSuper;LSecret;LSecret;)I+[LSuper;LSubA;,LSubB;,LSubC;[LSecret;LSubB;,LSubC;\n```\n\nNote that old style single-invoke IC lines are still supported as\nwell and their format has not changed.\n\nUpdated --dump-classes-and-methods to dump ICs using this format. Note\nthat it will combine ICs for different pcs with the same target so it\nis possible to construct a profile where the \u0027profile -\u003e dump -\u003e\nprofile\u0027 operation is not idempotent. Any profile coming from a\ntext-dump will be idempotent under this transform.\n\nTest: ./test.py --host\nBug: 168941430\nChange-Id: I69ba3b312caa7ca454487aaeb49862e393de3a4a\n"
    },
    {
      "commit": "5de5efef38f52f248d1e1c88fdcf3d211aabe712",
      "tree": "fb991b4dbee4d9afecad141bc75dab14893633a1",
      "parents": [
        "18af6447e5963265f6e7e61d6630064f66891f94"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Feb 15 21:23:00 2021 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Feb 18 16:51:21 2021 +0000"
      },
      "message": "Remove pointer-size arguments from DexCache.\n\nThe DexCache is always allocated at runtime now and thus\nit always has runtime pointer-size. Remove the dead code.\n\nTest: m test-art-host-gtest\nChange-Id: Ic21dc20649e1fd70f8981602d75b5690065aec20\n"
    },
    {
      "commit": "18af6447e5963265f6e7e61d6630064f66891f94",
      "tree": "7ddd4b9fac275a9a2c6d29caa737cc22718dcb93",
      "parents": [
        "9f9c0072e25656b0dde1662a8681aca8a93ffc29"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Feb 17 14:49:07 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Feb 18 12:35:36 2021 +0000"
      },
      "message": "Move 50% of ART run-tests to test group `presubmit` in `TEST_MAPPING`.\n\nMove some more ART run-tests from the `postsubmit` test group to the\n`presubmit` test group. This progressive rollout is to make sure\nintroducing ART run-tests to this test group won\u0027t disturb/break\nAndroid presubmits.\n\nOutput of `art/test/utils/regen-test-files`:\n\n  $ art/test/utils/regen-test-files\n  Generated Blueprint files for 621 ART run-tests ouf of 918 (67%).\n  Generated TEST_MAPPING entries for 256 ART run-tests ouf of 918 (27%):\n    128 tests (50%) in `presubmit` test group;\n    128 tests (50%) in `postsubmit` test group.\n\nTest: atest --test-mapping art:presubmit\nTest: atest --test-mapping art:postsubmit\nBug: 152374989\nBug: 169310621\nChange-Id: I3660f22987373b16e9306967876fe2ed229cdaab\n"
    },
    {
      "commit": "9f9c0072e25656b0dde1662a8681aca8a93ffc29",
      "tree": "3c1d51f76c05914960e352cc763737c74b96f205",
      "parents": [
        "eb348cdca67f777185b91ba60d7ae6ecbbc51464"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Feb 17 12:26:21 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Feb 18 12:15:12 2021 +0000"
      },
      "message": "Use Python\u0027s `json` to generate `TEST_MAPPING` in `regen-test-files`.\n\nThis greatly simplifies the implementation of\n`Generator.regen_test_mapping_file`, but removes the ability to insert\ncomments in the middle of the JSON output.\n\nTest: Run `test/utils/regen-test-files` and check the resulting\n      `TEST_MAPPING` and `Android.bp` files are the same, except\n      for comments in the middle of `TEST_MAPPING`.\nBug: 152374989\nChange-Id: Ifd5e60134ed8ddf00b305f819f6954d5570273cb\n"
    },
    {
      "commit": "eb348cdca67f777185b91ba60d7ae6ecbbc51464",
      "tree": "4a5d5cf4b94e73502df1a0792ed5f2580a07a357",
      "parents": [
        "f92065dee0fa55d4f114f361dbc9d4c5cc4cc1a2"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 12 19:27:19 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Feb 18 12:15:12 2021 +0000"
      },
      "message": "Revamp script `test/utils/regen-test-files`.\n\nIntroduce reusable elements and use more Python idioms.\n\nTest: Run `test/utils/regen-test-files` and check the resulting\n      `TEST_MAPPING` and `Android.bp` files are unchanged.\nBug: 147814778\nBug: 152374989\nChange-Id: I6bb0016c8eef3c042ca4538b5281d9e1f52e5a3f\n"
    },
    {
      "commit": "88566950be6d9d7d72645ba0c90c71bd7d7d7c5c",
      "tree": "9eb687ba6e3aa23623b5a0467d006e046ceab2d5",
      "parents": [
        "dbad1ef673140c66cdbcbbf40424674ae8e2b4c8"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Feb 16 15:51:18 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Feb 18 09:55:47 2021 +0000"
      },
      "message": "Use the checksum in the dex header for anynomous vdex files.\n\nWe were breaking (non-fatal) assumptions that location\nchecksums are unique per dex file.\n\nTest: test.py\nTest: 692-vdex-inmem-loader\nChange-Id: I3c2cf186bb244a7e89b9dd0ec9e68cadc4696d6e\n"
    },
    {
      "commit": "3dba023d4fb47882fa215715c196cfa3be30c098",
      "tree": "da22f82b7cde87f37100f715a0e05f332b377f73",
      "parents": [
        "381d35c1b01401e193544f679bfaf4f5c197f7cd"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Sat Jan 30 02:03:29 2021 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 17 15:05:02 2021 +0000"
      },
      "message": "Add a server-configurable flags API\n\nAdds a new set of flags that can be set by the command line, server\nconfiguration, or system properties. These flags can be used to enable\nor disable certain features or otherwise change their behavior. The\nflexible configuration options facilitate both development and also\nexperimentation.\n\nAs an example of their use, this CL also moves the\n-Xwrite-metrics-to-log command line option to the flags system\ninstead. Future work will migrate the rest of the metrics settings.\n\nTest: ./test/run-test --host --jit 2232-write-metrics-to-log\nBug: 175050458\nChange-Id: I1ef37e7d355204a3172b7aa5c0baa4cbd8c7076b\n"
    },
    {
      "commit": "381d35c1b01401e193544f679bfaf4f5c197f7cd",
      "tree": "5673582c62d2fbf4390f06cb151c5ee8d62704b3",
      "parents": [
        "f5f7e12172194ec2c6a7f70eeea936c5edf7c355"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Wed Feb 10 21:27:00 2021 +0000"
      },
      "committer": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Wed Feb 17 14:18:04 2021 +0000"
      },
      "message": "ARM: Adjust timeout for ARM FVP runs.\n\nIncreases timeouts for ARM FVP runs as on FVP it\nmay take significally longer to finish the test (due\nto emulation). Also rename the environment variable.\n\nTest: art tests on FVP (steps in test/README.arm_fvp.md)\nChange-Id: I0890dd85697bf901538694d28db3ffdd1bd4e0c4\n"
    },
    {
      "commit": "6df4511a2cf9ffae0294c1e5136c27ff84cfd1cb",
      "tree": "a29efde60f8ffb947679113d524ae9f6169e0338",
      "parents": [
        "354fbd7e8d38d7888c6c2610cc14cfa55f468fbb"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Feb 07 21:51:58 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Feb 16 09:27:59 2021 +0000"
      },
      "message": "Use vdex assignability types at runtime.\n\nWhen the oat file mentions the class needs to be verified at runtime,\ncheck whether the vdex has assignability types. If it has, and the\nchecks are successful, then the class is verified. Otherwise do a full\nverification to report the actual verification error.\n\nTest: test.py\nBug: 176960283\nChange-Id: I2ba14b72c1d8be3d33f7a699721496a8c15c39f2\n"
    },
    {
      "commit": "354fbd7e8d38d7888c6c2610cc14cfa55f468fbb",
      "tree": "6dae26b594b429d20c41cada51a8e67c6ab162ed",
      "parents": [
        "243895cffb4bc31bcec3c39bcfdd9bc041896a19"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Feb 15 16:47:54 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Feb 15 19:26:41 2021 +0000"
      },
      "message": "Disable ART run-test `053-wait-some` with debug-gc and interp-ac.\n\nDisable this test on debug-gc and interpreter-access-checks\nconfigurations, as it is time-sensitive and these modes are known to\nslow down the execution of programs in general and break some of the\ntest\u0027s assertions w.r.t. execution times.\n\nBug: 175435088\nTest: art/test/testrunner/testrunner.py -t 053-wait-some\nChange-Id: I730fe1d484a7abc41306dd75a68f9473029a3110\n"
    },
    {
      "commit": "f94fb41f298ebb2d9b3726be0b8feb8ce4d5faa4",
      "tree": "4793000ea956858b1ee433a89ac2ab580ba38e35",
      "parents": [
        "284e8b053d71c6ce66d6cd09b59f88dff5bd15ed"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Fri Feb 05 13:21:41 2021 +0000"
      },
      "committer": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Thu Feb 11 18:34:00 2021 +0000"
      },
      "message": "Arm FVP README: Adjust info on FVP build.\n\nApplying fvpbase patch to increase the data\npartition size is no longer needed.\n\nTest: N/A.\nChange-Id: Ie162ae9782b47f60f9ad207845f20d6d36092239\n"
    },
    {
      "commit": "284e8b053d71c6ce66d6cd09b59f88dff5bd15ed",
      "tree": "6ea11da0c3bbd86ffa4d72fe1750b6e26d8cc93f",
      "parents": [
        "2558abeb7acd49b7de357ca43b0c34354c20a3a0"
      ],
      "author": {
        "name": "Kimberly Kreider",
        "email": "kkreider@google.com",
        "time": "Tue Dec 15 09:40:30 2020 -0800"
      },
      "committer": {
        "name": "Kimberly Kreider",
        "email": "kkreider@google.com",
        "time": "Thu Feb 11 18:13:45 2021 +0000"
      },
      "message": "Enable art MTS tests to generate android-mts-art as well as be included in android-mts.\n\nTest: build locally and verified contents.\nChange-Id: Iaffaa77fab13974242d576bb8133dcc4fb3f9454\nMerged-In: Iaffaa77fab13974242d576bb8133dcc4fb3f9454\nExempt-From-Owner-Approval: approved in internal branch.\n"
    },
    {
      "commit": "2558abeb7acd49b7de357ca43b0c34354c20a3a0",
      "tree": "dad63d4e0153765d2edd155ac2c78473a40b4a77",
      "parents": [
        "60e29745625405654fb968ba2572ebddd8a0211d"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Wed Oct 14 18:01:37 2020 +0100"
      },
      "committer": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Thu Feb 11 15:44:16 2021 +0000"
      },
      "message": "ARM64: Adjust SIMD checker tests for SVE.\n\nAdds SVE-specific checker line for SIMD tests\nusing isaHasFeature() function.\n\nTest: test-art-target with Neon.\nTest: art tests on FVP (steps in test/README.arm_fvp.md)\n      with FVP arg:\n      -C SVE.ScalableVectorExtension.veclen\u003d[2,4]\n      (SVE vector [128,256] bits wide)\n\nChange-Id: I8f2134861b47437823797da48a3ffb680bafc544\n"
    },
    {
      "commit": "61c48728da03ee8fa5e11728d484d615ff2a34f6",
      "tree": "3fd38ee9c62ebd59161b7cf14f6ba8b934d7ae02",
      "parents": [
        "2807839d996167f35e4000ff2f80952dd62c5e8b"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Feb 10 11:09:25 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Feb 10 15:11:28 2021 +0000"
      },
      "message": "Re-enable ART run-test `053-wait-some` in `testrunner.py` invocations.\n\nThe test\u0027s flakiness has been addressed (and it is already\nenabled in TradeFed invocations).\n\nTest: art/test/testrunner/testrunner.py -t 053-wait-some\nBug: 175435088\nChange-Id: I866ba2cb3fea8e0927092070c4bc3a09e0aa5eac\n"
    },
    {
      "commit": "745da80dbf169d83e2acb847b0c9c07985d51bdf",
      "tree": "a01990e419ee49fe255a6df108027a89b568975a",
      "parents": [
        "16f7f8e384f0ae13c53525ff12affbc00605b0ec"
      ],
      "author": {
        "name": "Nikita Iashchenko",
        "email": "nikitai@google.com",
        "time": "Wed Jan 20 21:52:54 2021 +0000"
      },
      "committer": {
        "name": "Nikita Iashchenko",
        "email": "nikitai@google.com",
        "time": "Wed Feb 10 12:33:48 2021 +0000"
      },
      "message": "Add Math.multiplyHigh intrinsic\n\nTest: ./art/test/testrunner/testrunner.py --target  --optimizing --64 -t 082-inline-execute\nTest: ./art/test/testrunner/testrunner.py --host --optimizing --64 -t 082-inline-execute\nChange-Id: I4b6cafa8b9e513eca7c5c139440024d87a7ef758\n"
    },
    {
      "commit": "5c48df9895530fb26666c6d79d155ef3886d7a83",
      "tree": "8d9ca6d6eb89d7ec38642a42636fd8bda91522fa",
      "parents": [
        "9ebc0660f4c736b01994d34d3ad2a1171f41f048"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Feb 09 11:47:10 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Feb 09 16:18:38 2021 +0000"
      },
      "message": "[verifier]: flag instruction that will throw at runtime\n\nWe\u0027ve accidentally changed the verifier behavior in:\nhttps://android-review.googlesource.com/c/platform/art/+/1561956\n\nWe need to preserve the behavior of marking an instruction that will\nthrow at runtime, so that the code following it is not looked at. This\nmeans that if there are verification failures in that \"dead code\", they\nwon\u0027t make the class not verified.\n\nTest: 819-verification-runtime\nBug: 179227478\nBug: 179245053\nChange-Id: I4526a98b9479f47102fb00bd65bb943fe6aa9c8e\n"
    },
    {
      "commit": "1b3fb625b682bf2ee22563cb42e37411b64b050d",
      "tree": "d5d88a9420c1e9160e7d7bf2cdce8b0bc9a18d5c",
      "parents": [
        "5bcecf0a13c97d578321d1c7e067e28ad5e1322e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Feb 08 10:54:38 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Feb 09 14:16:36 2021 +0000"
      },
      "message": "Do not dump details of OOME for thread peer.\n\nTest: testrunner.py --target --optimizing -t 004-ThreadStress\nBug: 154100060\nChange-Id: I69582d7d1e4f5ced71ac32210ad7a0e4402da510\n"
    },
    {
      "commit": "5bcecf0a13c97d578321d1c7e067e28ad5e1322e",
      "tree": "7b46afaaa21afa354f05762c55a33caf680230ce",
      "parents": [
        "6dc86d14129b19c41cb7a2e90d96be3a4abc65a1"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 05 11:37:34 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Feb 09 10:14:21 2021 +0000"
      },
      "message": "Convert `test/utils/regen-test-files` from Bash to Python.\n\nThis conversion is pretty much a literal one on purpose, to help spot\ndifferences between the old and the new implementations. Improvements\n(especially better use of Python idioms) will be made in subsequent\ncommits.\n\nThe new Python implementation is 25 times faster than the old Bash\nimplementation (execution time went down from 5 seconds to 0.2\nseconds).\n\nTest: Run `test/utils/regen-test-files` and check the resulting\n      `TEST_MAPPING` and `Android.bp` files are unchanged.\nBug: 147814778\n\nChange-Id: Ic3e8138e83b281f2cc4c688a2c8a237d1a155a08\n"
    },
    {
      "commit": "f80445b3d2e9948003c883c92c218ff37e202445",
      "tree": "7aa901902b7355817cc56b2f580929908920297e",
      "parents": [
        "a554752707d275dcce6c53ad9c1666e8c22b6158"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 05 11:33:11 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 05 12:08:33 2021 +0000"
      },
      "message": "Sort tests in `test/utils/regen-test-files` in a deterministic order.\n\nTest: Run `test/utils/regen-test-files` and check the resulting\n      `TEST_MAPPING` file.\nBug: 147814778\nChange-Id: I492ee56c70a72273862ce1cd9a8cf9fec1fee7bd\n"
    },
    {
      "commit": "a554752707d275dcce6c53ad9c1666e8c22b6158",
      "tree": "fbc9d97464e8081b7e952ff6ad9e4b79d2268896",
      "parents": [
        "55ab7e84c4682c492b6fa18375b87ffc5d0b23bb"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Feb 04 19:43:02 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 05 12:08:33 2021 +0000"
      },
      "message": "Regenerate ART test files.\n\nTest: atest art-run-test-818-clinit-nterp\nBug: 147814778\nChange-Id: Ib9199f75723776f8ef0d54e2843e29eeec637592\n"
    },
    {
      "commit": "ac27ac01490f53f9e2413dc9b66fbb2880904c96",
      "tree": "271018e1ef33667bee8d57c40ffa3f4d9f8cf930",
      "parents": [
        "26bf47a60064fcc42e1b5e7b4b41deb8312d7330"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Feb 01 09:31:02 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Feb 05 10:48:17 2021 +0000"
      },
      "message": "Implement Reference.refersTo() intrinsic.\n\nTest: Added tests to 122-npe and 160-read-barrier-stress\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nBug: 172573708\nChange-Id: I8342510565289058df218d3249ffac1eb993ca4f\n"
    },
    {
      "commit": "bfd622abc23c77ffc8799f376df7241f15d6550a",
      "tree": "f783c1bc6a577df480929c84476711a3bc41ff9f",
      "parents": [
        "befdad488b42600826b4a3bd7c92f19a0104d7fa"
      ],
      "author": {
        "name": "Chris Wailes",
        "email": "chriswailes@google.com",
        "time": "Wed Jan 13 16:13:41 2021 -0800"
      },
      "committer": {
        "name": "Christian Wailes",
        "email": "chriswailes@google.com",
        "time": "Thu Feb 04 17:03:10 2021 +0000"
      },
      "message": "Initial commit of the test code for ART Service\n\nThis CL adds the scaffolding for testing the ART Tools and ART Service\nlibraries.\n\nThe command `atest ArtServiceTest` will fail with Tradefed errors, but\nthese same errors are generated by existing tests such as `atest\nandroid-icu4j-tests`.\n\nTest: m test-art-host-gtest \u0026\u0026 atest ArtServiceTest\nBug: 177273468\nMerged-In: I053f2446144a1fc020b040b952a370ab7779dd47\nChange-Id: I053f2446144a1fc020b040b952a370ab7779dd47\n"
    },
    {
      "commit": "649beaaead32f7dc98def517414cc50050a09f35",
      "tree": "383b9901c7bef73c4bd3e6d9b71285cf79ab1a4e",
      "parents": [
        "f51d182c3d797bd14bcc66a3c0bf1fc6f9adf8ee"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Feb 03 12:34:17 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Feb 03 20:43:04 2021 +0000"
      },
      "message": "Fix ThreadStress check script to filter stderr.\n\nTest: testrunner.py --host --optimizing -t 004-ThreadStress\nTest: testrunner.py --target --optimizing -t 004-ThreadStress\nBug: 154100060\nBug: 171865375\nChange-Id: If32cda4ee11696b3422112e842f84c938cb5664a\n"
    },
    {
      "commit": "b1cf83748ce8165fe7e41ce6a57eb5529946a971",
      "tree": "56fe4acb1a5310cf015467a79427f4de67a53b68",
      "parents": [
        "0f0caf869a9026e723caf79d8f50d8da25bc4185"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Feb 02 13:32:20 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Feb 02 18:08:12 2021 +0000"
      },
      "message": "Fix image bug around clinit and nterp.\n\nnterp trampoline doesn\u0027t do clinit checks, so we should install the\nresolution stub if a method needs a clinit check before being entered.\n\nTest: 818-clinit-nterp\nBug: 178992601\nChange-Id: I9d6b023a6c6620adfcd2a6ed5cd1e042a7cb449b\n"
    },
    {
      "commit": "32a630e1ae8b934a20ad01b64a81b39577d6ca92",
      "tree": "efd69d46dee451ff12403efdcf2e2f0a7191dc22",
      "parents": [
        "9ce38b510e9e2e00d9a908c3c44dfe0762627cf7"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Mon Jan 25 13:10:09 2021 +0000"
      },
      "committer": {
        "name": "Ulyana Trafimovich",
        "email": "skvadrik@google.com",
        "time": "Tue Feb 02 12:55:52 2021 +0000"
      },
      "message": "ARM64: Add a README on how to run tests via FVP.\n\nAdds a README file, which describes the steps to build\nand run an Android system image targeting the ARM Fixed\nVirtual Platform and to use it as a target platform for\nrunning ART tests via ADB.\n\nTest: N/A.\nChange-Id: Iaee2ceb6e01ed9d35fbb13755729fc09c99cf21a\n"
    },
    {
      "commit": "9ce38b510e9e2e00d9a908c3c44dfe0762627cf7",
      "tree": "a5ffaa2e0326dd574b655e320c9bb56dd01c5ebd",
      "parents": [
        "de275aaeb7bf32eeed7a091c70015517ead6e514"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jan 28 15:22:23 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Feb 02 11:49:45 2021 +0000"
      },
      "message": "Experiment with ART Mainline Module Testing in Test Mapping.\n\nRegister ART run-test `001-HelloWorld ` as a Mainline presubmit test\nin Test Mapping.\n\nTest: Rely on TreeHugger\nBug: 178703264\nChange-Id: I04a103cf1c442f87f2ecfb0c8a1223b66cfa0f7e\n"
    },
    {
      "commit": "d1728bfca62a0757000ef3aa0388b5e51269a2a2",
      "tree": "04d75ba364e3ce0c39735a38083383408f9f7cf4",
      "parents": [
        "36e4d1d398a1526c6bc5eba12b32279dc07749d8"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jan 12 14:02:29 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Feb 01 14:48:53 2021 +0000"
      },
      "message": "Add a kTypeChecksFailure.\n\nThis is to distinguish between a soft failure due to type checks, or a\nsoft failure due to other reasons.\n\nA follow-up CL will start using that information and use the type checks\nin the vdex file to perform fast verification at runtime.\n\nTest: test.py\nBug: 176960283\n\nChange-Id: I04bff9ff26033f41e9439d366667a9aec1f339a0\n"
    },
    {
      "commit": "35a37200c6819015a5a66ec0bfdfb9d6ab3f2e0e",
      "tree": "0c0a2eb79b258bc9d024ab6d682320f9ee6d1d77",
      "parents": [
        "3a1ca400758302f44a95ae8255ca7c012d651d73"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 29 17:53:32 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Feb 01 09:57:26 2021 +0000"
      },
      "message": "Reland \"Remove obsolete code in the verifier.\"\n\nThis reverts commit 7572e76a368e56da139648a5f2e0a92b25a581e2.\n\nBug: 176960283\nBug: 178731135\n\nReason for revert: Fixed access checks of mterp on array allocations\n\nChange-Id: I5c2e321e392714bb6921f3b02e32a79ebfd4e22a\n"
    },
    {
      "commit": "60e0081a6b7ee2e6daafb0f82d3154ad86bcde71",
      "tree": "4dbd46337edc0771e82a2d01ee2e444420123765",
      "parents": [
        "e22c7a81706009335d12f5f6b5fef57ba200b06c"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jan 28 15:18:52 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jan 29 17:32:43 2021 +0000"
      },
      "message": "Regenerate ART test files.\n\nTest: atest art-run-test-815-invokeinterface-default\nBug: 147814778\nChange-Id: I5e1096622c5340c8730d4c6a09273cdb0b7a2818\n"
    },
    {
      "commit": "3a73ffb70151dbc99fa41f300a237f8c29783e0e",
      "tree": "8debef1b372e5bea27d5265a9019446229955e3d",
      "parents": [
        "e585964df42e9fd2fab6f209810cb03e1b261ab1"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jan 25 14:11:05 2021 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jan 25 07:01:32 2021 -0800"
      },
      "message": "Revert^4 \"Partial Load Store Elimination\"\n\nThis reverts commit 791df7a161ecfa28eb69862a4bc285282463b960.\nThis unreverts commit fc1ce4e8be0d977e3d41699f5ec746d68f63c024.\nThis unreverts commit b8686ce4c93eba7192ed7ef89e7ffd9f3aa6cd07.\n\nWe incorrectly failed to include PredicatedInstanceFieldGet in a few\nconditions, including a DCHECK. This caused tests to fail under the\nread-barrier-table-lookup configuration.\n\nReason for revert: Fixed 2 incorrect checks\n\nBug: 67037140\nTest: ./art/test/testrunner/run_build_test_target.py -j70 art-gtest-read-barrier-table-lookup\n\nChange-Id: I32b01b29fb32077fb5074e7c77a0226bd1fcaab4\n"
    },
    {
      "commit": "791df7a161ecfa28eb69862a4bc285282463b960",
      "tree": "a43b022307ea2df82a360164bdf2627cd07eb5b1",
      "parents": [
        "805769bb3800c1e47b0a76ce2c5ebb270a4ac69d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Jan 23 13:28:56 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Jan 24 17:18:55 2021 +0000"
      },
      "message": "Revert \"Revert^2 \"Partial Load Store Elimination\"\"\n\nThis reverts commit fc1ce4e8be0d977e3d41699f5ec746d68f63c024.\n\nBug: 67037140\n\nReason for revert: Fails read-barrier-table-lookup tests.\n\nChange-Id: I373867c728789bc14a4370b93a045481167d5f76\n"
    },
    {
      "commit": "fc1ce4e8be0d977e3d41699f5ec746d68f63c024",
      "tree": "b656aa7c9e62aa181dfbf7fd4f2a0d32b8bf0704",
      "parents": [
        "c6da1be58086e873c9695f8c4c1a3a8ca718696e"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Jan 22 14:05:13 2021 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Jan 22 07:15:51 2021 -0800"
      },
      "message": "Revert^2 \"Partial Load Store Elimination\"\n\nThis reverts commit 47ac53100303e7e864b7f6d65f17b23088ccf1d6.\n\nThere was a bug in LSE where we would incorrectly record the\nshadow$_monitor_ field as not having a default initial value. This\ncaused partial LSE to be unable to compile the Object.identityHashCode\nfunction, causing crashes. This issue was fixed in a parent CL. Also\nupdated all Offsets in LSE_test to be outside of the object header\nregardless of configuration.\n\nTest: ./test.py --host\nBug: 67037140\n\nReason for revert: Fixed issue with shadow$_monitor_ field and offsets\n\nChange-Id: I4fb2afff4d410da818db38ed833927dfc0f6be33\n"
    },
    {
      "commit": "47ac53100303e7e864b7f6d65f17b23088ccf1d6",
      "tree": "95730c6ba84ef0eebca6236428c8ba51c5eaf280",
      "parents": [
        "51d771db35cc0647bc1fd2a32ed6348d181a7a41"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 22 08:41:08 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 22 08:41:39 2021 +0000"
      },
      "message": "Revert \"Partial Load Store Elimination\"\n\nThis reverts commit b8686ce4c93eba7192ed7ef89e7ffd9f3aa6cd07.\n\nBug: 67037140\n\nReason for revert: Fails a few tests.\n\nChange-Id: Icf0635bffbfbba93bf0a5b854a9582c418198136\n"
    },
    {
      "commit": "51d771db35cc0647bc1fd2a32ed6348d181a7a41",
      "tree": "416ec79e04429659505ce8955c12a65cc6460683",
      "parents": [
        "0b986f73e018fe55af1d71d2f8deaa61bd6840a2"
      ],
      "author": {
        "name": "Nikita Iashchenko",
        "email": "nikitai@google.com",
        "time": "Thu Jan 14 16:45:49 2021 +0000"
      },
      "committer": {
        "name": "Nikita Iashchenko",
        "email": "nikitai@google.com",
        "time": "Thu Jan 21 21:24:56 2021 +0000"
      },
      "message": "Update test expectations for new core-oj API\n\ntoSeconds() methods was renamed to toBigDecimalSeconds(). This CL\nupdates test expectations for 993-breakpoints.\n\nBug: 160356973\nTest: art/test.py -b --host -r -t 993-breakpoints\nChange-Id: Id411ceef3a052b3d9cbc5734085bf9e105e31518\n"
    },
    {
      "commit": "b8686ce4c93eba7192ed7ef89e7ffd9f3aa6cd07",
      "tree": "1721ee940f978736a2212d693271ee698897cb0b",
      "parents": [
        "625048049558d394d50b6e98885b8c210e481bf1"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Nov 02 08:48:33 2020 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jan 21 17:58:10 2021 +0000"
      },
      "message": "Partial Load Store Elimination\n\nAdd partial load-store elimination to the LSE pass. Partial LSE will\nmove object allocations which only escape along certain execution\npaths closer to the escape point and allow more values to be\neliminated. It does this by creating new predicated load and store\ninstructions that are used when an object has only escaped some of the\ntime. In cases where the object has not escaped a default value will\nbe used.\n\nTest: ./test.py --host\nTest: ./test.py --target\nBug: 67037140\n\nChange-Id: Idde67eb59ec90de79747cde17b552eec05b58497\n"
    },
    {
      "commit": "d5a8695394f8f6e8f9a66752441623dc31b97660",
      "tree": "591ac4892304365282a57262c91e1945ac94c6a9",
      "parents": [
        "2fb37411e42455a00fdad90f0e612c3214e5bd1a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jan 19 10:35:54 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 21 14:07:57 2021 +0000"
      },
      "message": "Reland \"Improve invokeinterface for nterp.\"\n\nThis reverts commit f1d06474baa2f7c00761db39099b89ddab71bbe4.\n\nBug: 177554973\nBug: 112676029\n\nTest: test.py\nTest: 815-invokeinterface-default\nTest: enable text-to-speech on device, no crash\n\nReason for revert: Fixed issue with recursive default methods\n\nChange-Id: I2fb9336adb6c4fc920f39aa19bfe7f0a92ce059a\n"
    },
    {
      "commit": "c6e4578e546bc23272cb165baff395cdac7521fc",
      "tree": "7c0cc51740c475b81bb8f4191e4c92987dd723f9",
      "parents": [
        "04c73cc180b8b0e9222ead36595c7af64b18a96e"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Jan 14 13:17:20 2021 -0800"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Tue Jan 19 20:31:24 2021 +0000"
      },
      "message": "Fix 053-wait-some time bounds\n\nRequire that we wait at least as long as specified, except allow\n1 millisecond slop to accomodate some old kernels that seem to\nwake up slightly early. But allow for additional scheduling\ndelays by increasing the upper time bound.\n\nTest: Treehugger\nBug: 175435088\nChange-Id: Ib374fbf9e03c6862273c6cd0b0883c73d052ae9d\n"
    },
    {
      "commit": "04c73cc180b8b0e9222ead36595c7af64b18a96e",
      "tree": "8036c58eaf9697e25b4ea668b39b972dea942d58",
      "parents": [
        "a0729bae01052961e52bd770b621e8ac3e235ced"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jan 19 16:46:37 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jan 19 19:51:14 2021 +0000"
      },
      "message": "Regenerate ART test files.\n\nTest: atest art-run-test-814-large-field-offsets\nTest: atest art-run-test-2232-write-metrics-to-log\nBug: 147814778\nChange-Id: Idc477d283d3a5ed05e4a3f523e04be39be596b74\n"
    },
    {
      "commit": "808c556b1f4b936b8e9010ed1a6d8313dd862983",
      "tree": "022e9123c589d79233116bae1ad59f4a4319ad14",
      "parents": [
        "caac87ab74fbf5463e58f1addf3f8f5080080b6e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jan 18 14:19:21 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jan 19 09:45:45 2021 +0000"
      },
      "message": "Reland \"Refactor code in mterp and nterp to handle all cases of missing class.\"\"\n\nThis reverts commit 748e9564c5334834aee0050533e6f1d24557f8c9.\n\nBug: 177627911\nBug: 79751666\nBug: 112676029\nBug: 176960283\n\nReason for revert: fixed mterp braino\n\nTest: 173, 814\n\nChange-Id: Ic853eb344562be0207ce6e9bfd41d74e795561d7\n"
    },
    {
      "commit": "748e9564c5334834aee0050533e6f1d24557f8c9",
      "tree": "5c481f0c872a81024a24cdca5daf831a40dcab8a",
      "parents": [
        "09e2337f8a971c318c560444912d50b06d723e35"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jan 14 22:43:34 2021 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Jan 15 21:15:19 2021 +0000"
      },
      "message": "Revert \"Refactor code in mterp and nterp to handle all cases of missing class.\"\n\nThis reverts commit 3f2980f1b0fc22f3566e6759141994a8269912ba.\n\nBug: 177627911\nReason for revert: Fixes b/177627911 crash in photos\n\nChange-Id: I614df98b15168d8fe94e09e5db1ab81001018dd2\n"
    },
    {
      "commit": "1060838894e34785139b5e3583fbc9edad7fa7f9",
      "tree": "267cc17ce650219d520e847fa011ebada320b8b8",
      "parents": [
        "f1d06474baa2f7c00761db39099b89ddab71bbe4"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 15 09:20:23 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 15 09:20:58 2021 +0000"
      },
      "message": "Revert \"Revert^2 \"[metrics] Add background reporting thread\"\"\n\nThis reverts commit 4c176b9de6c430422395017910633bcb001b2e84.\n\nReason for revert: Test fails on target.\n\nChange-Id: Idfef53679cf602c7c10a9cc0ffb16fda583ed78f\n"
    },
    {
      "commit": "4c176b9de6c430422395017910633bcb001b2e84",
      "tree": "7e2977cbda130db7f4f83e8eba9449f49e0e4397",
      "parents": [
        "5bb354fa440ae7c9ebe6994ceb45e6795c5d3363"
      ],
      "author": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Tue Dec 15 18:23:28 2020 +0000"
      },
      "committer": {
        "name": "Eric Holk",
        "email": "eholk@google.com",
        "time": "Thu Jan 14 21:40:56 2021 +0000"
      },
      "message": "Revert^2 \"[metrics] Add background reporting thread\"\n\nThis adds a background thread that reports metrics every N seconds,\nwhere N is specified by the -Xmetrics-reporting-period command line\noption. Periodic reporting is disabled by default.\n\nThis reverts commit 73366109eec37b75f77f24e6e52832047508b34f.\n\nThe reason this was previously reverted was due to failures where\nJVMTI reported an unexpected thread at startup. This change fixes the\nissue by adding the metrics background reporting thread to the list of\nallowed threads in ti_thread.cc.\n\nTest: test/run-test --host 2233-metrics-background-thread\nTest: adb shell stop \u0026\u0026 \\\n      adb shell setprop dalvik.vm.extra-opts \\\n          -Xmetrics-reporting-period\u003d30\\\\\\ -Xwrite-metrics-to-log \u0026\u0026 \\\n      adb shell start \u0026\u0026 \\\n      adb logcat  # observe metrics in log\nChange-Id: I5eea4a4551de9cf4672a461c09521ef871063a91\n"
    },
    {
      "commit": "3f2980f1b0fc22f3566e6759141994a8269912ba",
      "tree": "85d72d4efa66f81f725daf324ad7fd54d5f37135",
      "parents": [
        "c26c640db1911d2fcab7c2b4830993bc254011aa"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jan 12 10:45:06 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 14 08:50:59 2021 +0000"
      },
      "message": "Refactor code in mterp and nterp to handle all cases of missing class.\n\nThis is to handle the case the type of a field is missing, and where we\nonly throw an exception when we assign a non-null value.\n\nBug: 79751666\nBug: 112676029\nBug: 176960283\nTest: test.py\nChange-Id: I9c233f271eea7ae4a8028fb727d5c49c7c45feac\n"
    },
    {
      "commit": "1a0e292b9bb60be76a666ca86046db1492a345d4",
      "tree": "5ba5d147ecb1733073e12ca040366aaa893d9d2f",
      "parents": [
        "f8567b535dcc4618f0ee76e5b8716d296681197b"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jan 12 13:57:42 2021 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 13 14:05:16 2021 +0000"
      },
      "message": "Revert^2 \"Add disable/get/set_hidden_api_enforcement_policy extensions\"\n\nThis reverts commit 46d6fc0e16d65468aa259fadf27ddfeef72987b7.\n\nThe test, 2038, is incompatible with redefine stress due to class\nredefinition disabling most hidden-api checks. This adds the\nappropriate skips to knownfailures.json.\n\nReason for revert: Add 2038 to redefine-stress knownfailures.json\nTest: ./test.py --host --redefine-host\nBug: 175329755\n\nChange-Id: I6c8f0f6fc468db85368ecc9fbb2372677b529383\n"
    },
    {
      "commit": "f8567b535dcc4618f0ee76e5b8716d296681197b",
      "tree": "59581c9c3d168f3a1b8e0dd7f4a2e384a8434999",
      "parents": [
        "0ddba9a4239477a2319fbf4317ca8782308c2c35"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 13 09:50:24 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 13 09:51:02 2021 +0000"
      },
      "message": "Revert \"Revert^2 \"[metrics] Add file output support\"\"\n\nThis reverts commit 8ef84f233a55972eb3a3d84c11c1617531af8e92.\n\nBug: 175025360\nBug: 170149255\n\nReason for revert: test failing on target\n\nChange-Id: I8d82462f6fb853ece4a4b295de17ab13b1f1b6f1\n"
    }
  ],
  "next": "8ef84f233a55972eb3a3d84c11c1617531af8e92"
}
