)]}'
{
  "log": [
    {
      "commit": "87d555ad5660b9cf2a0717d59f9e5e602edebb52",
      "tree": "11274d54bb817dc51491135187cefc5500b8eb30",
      "parents": [
        "8ed68290ed679c3da2d1989d44edb9c51475866b",
        "a0da1f8a5e6cd20df544acdbc091a6f5c90d6314"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue Jul 27 17:31:02 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Jul 27 17:31:02 2021 +0000"
      },
      "message": "Reland: Support pass BCP art/vdex/oat files by FD am: ce9b902a16 am: a0da1f8a5e\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1776825\n\nChange-Id: I513be67c3cb1b017cea28546c91e041649b7ffe2\n"
    },
    {
      "commit": "ce9b902a161b86eb2d5ef9fe4442305e25828d0a",
      "tree": "3108d6315b779816b076b220870748631235e2ea",
      "parents": [
        "a8f858e4eddeede8c465cc5b9fb40733e4649aed"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Wed Jul 21 10:44:06 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 27 16:56:08 2021 +0000"
      },
      "message": "Reland: Support pass BCP art/vdex/oat files by FD\n\nThe original implementation in odrefresh generated inconsistent number\nof files between jars and other files. The code is reworked.\n\nOriginal description:\n\nThis is currently used by odrefresh.\n\nMain runtime changes are:\n\n1. When reading the image header, also tries to read from the FD if\n   provided.\n\n2. Initialize the art/vdex/odex FDs in the boot image chunk if provided.\n   This allows them to be opened (in case if the file is not accessible\n   by path) in LoadComponents.\n\n3. OpenBootDexFiles: accept BCP JARs passed as FD, in case if the file\n   is not accessible by path.\n\n4. The new FDs are passed from new runtime args,\n   -Xbootclasspath{art,vdex,oat}fds.\n\nIt is used in odrefresh to pass the previous output of BCP extensions to\nbe used in the next phase, system server compilation.\n\nBug: 193720426\nTest: odrefresh --use-compilation-os\u003d10 --force-compile # exit 80\n      odrefresh --verify # exit 0 (was 79 previosly)\nTest: Verify the checksum of output files are the same, with\n      --use-compilation-os or not, i.e. regardless where the compilation\n      happens\nTest: mma in art/\nTest: odsign_e2e_tests\nChange-Id: Ie3ae48c7d70a2779cfbd80b307199a0f327c895c\n"
    },
    {
      "commit": "32098cf4a8096fafff3044fb004a654344bd36ea",
      "tree": "2c60d56944f276524c42e1c3a324482d53e7d3b4",
      "parents": [
        "2b1aee25b273739890d155aef704b167f92b3598",
        "db2b75001db7e9d6d7038dc77c873ebca7d98763"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jul 23 15:03:57 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Jul 23 15:03:57 2021 +0000"
      },
      "message": "Revert \"Support pass BCP art/vdex/oat files by FD\" am: d7a4da1f35 am: db2b75001d\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1776227\n\nChange-Id: I53f45064b6bc31e52045b8cc1df647b6d01a784b\n"
    },
    {
      "commit": "d7a4da1f357e089c5d150559d8d2f2ddb7c4958a",
      "tree": "bde88500eac9eda86031cfe8536241dfc79e12d2",
      "parents": [
        "2cb2527d4136f681b8e79352c546e65431ceb10c"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jul 23 15:05:49 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jul 23 14:16:27 2021 +0000"
      },
      "message": "Revert \"Support pass BCP art/vdex/oat files by FD\"\n\nThis reverts commit b1adfc2a0570f52d74b8a4acdd578efc1790995b.\n\nReason: reports from Realtime Stability Insights (RTSI) infra.\n\nBug: 193720426\nFix: 194481664\nFix: 194475273\nFix: 194478073\nTest: TH\nChange-Id: I421d0b4a613de5ac8fb2830fa27206edb5428374\n"
    },
    {
      "commit": "2b1aee25b273739890d155aef704b167f92b3598",
      "tree": "59a53ea74f7be05c62a6ed4c3e40469927a1ee62",
      "parents": [
        "556cbed18e71ea1db2769bde41588b576ae48a51",
        "c403996b1102a925dd16961d74b8d72d14f132f1"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jul 23 14:07:10 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Jul 23 14:07:10 2021 +0000"
      },
      "message": "verifier: Remove support for precise constants and RegisterTrackingMode. am: 2cb2527d41 am: c403996b11\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1761446\n\nChange-Id: I61cc928682514b8d22e0a2f8cb766d5aa382ab70\n"
    },
    {
      "commit": "2cb2527d4136f681b8e79352c546e65431ceb10c",
      "tree": "2e6429eff103ac8006f564238e381f4ec6e0a841",
      "parents": [
        "f7e4c3d58d3ce7f38e4591acb9928513928c39c4"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jul 15 14:24:29 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jul 23 13:32:32 2021 +0000"
      },
      "message": "verifier: Remove support for precise constants and RegisterTrackingMode.\n\nThese features were used when we were creating GC maps and\ndeoptimization information with the quick compiler. Quick compiler has\nbeen removed, so we can remove these features.\n\nTest: test.py\nChange-Id: I633a7ada761b280b90e2d7c53cd5fbf2ae1d701d\n"
    },
    {
      "commit": "2a7ae937ce7649972c153006f03e0305acadd72f",
      "tree": "6efb71f6443e1672b7b10580f5f20298c5ced3a6",
      "parents": [
        "8746548e0fc6efd1fae56a86be1f2bb0ea771e07",
        "78ab7b0d0a08a2a7df5db593aefbafae9d3411c6"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri Jul 23 02:19:55 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Jul 23 02:19:55 2021 +0000"
      },
      "message": "Support pass BCP art/vdex/oat files by FD am: b1adfc2a05 am: 78ab7b0d0a\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1773152\n\nChange-Id: I655acf69e810a35d9907bd1cbda2603bcf4b24d5\n"
    },
    {
      "commit": "b1adfc2a0570f52d74b8a4acdd578efc1790995b",
      "tree": "c5058390901f2abbb0e281d8403be2b8db02c337",
      "parents": [
        "71f763399e95676d665e071623bccb714acf88b4"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Wed Jul 21 10:44:06 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 23 01:47:27 2021 +0000"
      },
      "message": "Support pass BCP art/vdex/oat files by FD\n\nThis is currently used by odrefresh.\n\nMain runtime changes are:\n\n1. When reading the image header, also tries to read from the FD if\n   provided.\n\n2. Initialize the art/vdex/odex FDs in the boot image chunk if provided.\n   This allows them to be opened (in case if the file is not accessible\n   by path) in LoadComponents.\n\n3. OpenBootDexFiles: accept BCP JARs passed as FD, in case if the file\n   is not accessible by path.\n\n4. The new FDs are passed from new runtime args,\n   -Xbootclasspath{art,vdex,oat}fds.\n\nIt is used in odrefresh to pass the previous output of BCP extensions to\nbe used in the next phase, system server compilation.\n\nBug: 193720426\nTest: odrefresh --use-compilation-os\u003d10 --force-compile # exit 80\n      odrefresh --verify # exit 0 (was 79 previosly)\nTest: Verify the checksum of output files are the same, with\n      --use-compilation-os or not, i.e. regardless where the compilation\n      happens\nTest: mma in art/\nChange-Id: I209085f047c42823ff20415804f65a9b32378b40\n"
    },
    {
      "commit": "88a1d495a0bdcb000d20c5a65b2b119186bf11cb",
      "tree": "5bbc67eaf3a7712c91f721c9b43cc398b2a5b81f",
      "parents": [
        "1b4cf1d2accef932a58817999790953cdfae0453",
        "3d3d335155308c1139c37d3eb929b7069f887892"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jul 15 14:41:30 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Jul 15 14:41:30 2021 +0000"
      },
      "message": "Clean up ClassLinker::VerifyClass. am: 66934efcab am: 3d3d335155\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1757395\n\nChange-Id: Ic5678d9fe3f177a33550787ff0c730ff9bf043fd\n"
    },
    {
      "commit": "66934efcabd2b75fd84b3cc0a8665f4ecc136727",
      "tree": "b55d836b7df49dcc73126cbcded7a0e64451ba39",
      "parents": [
        "cf74ae7eae39affc8886b4bce5294aceebb908c3"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 07 14:56:23 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jul 15 14:26:13 2021 +0000"
      },
      "message": "Clean up ClassLinker::VerifyClass.\n\nAnd drop kAccWasVerificationAttempted. It\u0027s not needed and duplicates\nlogic already present in the compiler and the class status.\n\nThis CL also enables nterp running methods with soft failures.\n\nTest: test.py\nBug: 28313047\nChange-Id: I853a6f00b9e0c38091d86fcd77167c92ff5b383c\n"
    },
    {
      "commit": "374eae5fc606c2591db8f17bdd3cc935ebefcda2",
      "tree": "be59ca3a7b7ac3650727b75e56de39295f625b8d",
      "parents": [
        "19bb15c6b2bd97b1a84fa6ad260a19c71d7758fc",
        "0daecd8702b28167bd8d729d78a886df03e0be89"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 14 17:49:57 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jul 14 17:49:57 2021 +0000"
      },
      "message": "Remove the need of VerifiedMethod in the compiler. am: 9e050ab1a0 am: 0daecd8702\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1759931\n\nChange-Id: Ia26a492057716ead1889e6835a73e12c66beeb50\n"
    },
    {
      "commit": "9e050ab1a061d9660eb0c1daa01a823ad75b0f05",
      "tree": "714f2ba3b11406310416e85357f45450634846b2",
      "parents": [
        "4f990714b13e0b4446305a5411648a1a9ae42a7a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 14 14:59:25 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 14 17:13:08 2021 +0000"
      },
      "message": "Remove the need of VerifiedMethod in the compiler.\n\nThe compiler only needs to know if a method is compilable or not. So\njust record a set of uncompilable methods (in some cases, we cannot have\nan ArtMethod, but the method can still be compiled).\n\nTest: test.py\nBug: 28313047\nChange-Id: Ic4235bc8160ec91daa5ebf6504741089b43e99cb\n"
    },
    {
      "commit": "77bec565c3ea5082844534c443284d8aa8bc6cdd",
      "tree": "207d177f7447365905641dd6177f0c0712853bb2",
      "parents": [
        "97b1dfbb28d96a1bc79a9ab4cb8d3169273265b0",
        "f5f127e98a8e16af9700063a50de29652cb67563"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jul 14 15:44:48 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jul 14 15:44:48 2021 +0000"
      },
      "message": "Modernize typedefs with `using`. am: 4f990714b1 am: f5f127e98a\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1765891\n\nChange-Id: Idc1180d28f7ef5eec5c48ca7b1af19b7b69ac658\n"
    },
    {
      "commit": "4f990714b13e0b4446305a5411648a1a9ae42a7a",
      "tree": "4568386e3e6f3c98c819851f6573e2c7cbc184fb",
      "parents": [
        "7744b69abf073101b09b9043f0f0eb109768fcfe"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jul 14 12:45:13 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jul 14 15:18:36 2021 +0000"
      },
      "message": "Modernize typedefs with `using`.\n\nReplace many occurences of `typedef` with `using`. For now,\ndo not update typedefs for function types and aligned types\nand do not touch some parts such as jvmti or dmtracedump.\n\nTest: m\nChange-Id: Ie97ecbc5abf7e7109ef4b01f208752e2dc26c36d\n"
    },
    {
      "commit": "639f1ef3a51172387f4d4e2cb5d50ac4afab3626",
      "tree": "ff0c6abdca38d2cb84a08b8c35f2a5305270c6b8",
      "parents": [
        "1b7197c45d578f1d5221bf026aadbf13bc23279e",
        "6896634d0b340229b70bfbad7a8b6394670a3f2d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 14 13:44:17 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jul 14 13:44:17 2021 +0000"
      },
      "message": "Remove dual verification in RedefineClasses. am: 7744b69abf am: 6896634d0b\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1757389\n\nChange-Id: Ic2eddc6d545222253466a671e06dfc9823f94b9b\n"
    },
    {
      "commit": "7744b69abf073101b09b9043f0f0eb109768fcfe",
      "tree": "6598234dc0a9b2327729705cf61f836e3e777d58",
      "parents": [
        "eacf044aae6d7d515ac988dceedaadbf53916b60"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jul 06 16:19:32 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 14 13:17:09 2021 +0000"
      },
      "message": "Remove dual verification in RedefineClasses.\n\nAlso clean up the ClassVerifier interface with now just one method and\nthe removal of VerifierCallbacks.\n\nTest: test.py\nBug: 28313047\nChange-Id: I1a87dd1757cfdeec0d482f82dacd7cac43545964\n"
    },
    {
      "commit": "46518211bd348f381a292c8785951a2c728f5b91",
      "tree": "666625a3a0a14f3679b22e29c56c12cd1bf42025",
      "parents": [
        "ab0f97f0ce3bed175923bfea7be2dbc32cdc4dde",
        "c8cdc711301d72e68b040ae2f99818add62dd2aa"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jul 09 12:29:49 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Jul 09 12:29:49 2021 +0000"
      },
      "message": "Clean up verifier interface. am: 2ec38232c6 am: c8cdc71130\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1754274\n\nChange-Id: Ibd7a2f807a5da4303b6122bd34c3f81eef4e5919\n"
    },
    {
      "commit": "2ec38232c632a2c7f3069f02d5c4d7036f14575b",
      "tree": "2500a6189a53a6bccb1b475d7e8a45ce4acd01ec",
      "parents": [
        "81909865f1d82314b72d09d1ad1f4545efd809e7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jul 02 16:36:29 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jul 09 11:55:11 2021 +0000"
      },
      "message": "Clean up verifier interface.\n\nRemove verifier_callbacks and ArtMethod as argument. The verifier can\noperate without them.\n\nThis allows removing the bogus DexCache::SetResolvedType in ti_redefine.\n\nAlso turn runtime throw failures into VerifyError, for cleaner interface\nwith users of the verifier.\n\nTest: test.py\nBug: 28313047\nChange-Id: I9ba1300f198aaf482ed43061465daea789ea732b\n"
    },
    {
      "commit": "1292aa7427a201a6e101646568c1c6c1ae4edbf1",
      "tree": "86578c7c6144ec052a949392d6248fc185e81dd9",
      "parents": [
        "a274bfabc8361c6f2835b2107849ff6f632f0527",
        "c82efe3e6bf24f1b2b9d5fa3a6244092391881a7"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jul 08 17:24:53 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Jul 08 17:24:53 2021 +0000"
      },
      "message": "Add support for standalone ART gtests to MTS. am: 6a2e689329 am: c82efe3e6b\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1753224\n\nChange-Id: I823433b28b8f709bad750cf130373e656bd9faf7\n"
    },
    {
      "commit": "6a2e6893290eac83f59dac4ec5bc10abf985ae10",
      "tree": "ee7f59774da19363bb867df9c0e9dc4f35f01fa2",
      "parents": [
        "592bceac0c030794175ae41d9c7e2ca092739d2e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Sun Jul 04 14:21:07 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jul 08 16:56:35 2021 +0000"
      },
      "message": "Add support for standalone ART gtests to MTS.\n\nThis change:\n- adds standalone ART gtests to test suite `mts-art`;\n- adds `MainlineTestModuleController` support to standalone ART\n  gtests. This in order to have these tests run in a Mainline context\n  only when the ART Module (either `com.google.android.art` or\n  `com.android.art`) is installed on the test device.\n\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art\nTest: m mts \u0026\u0026 mts-tradefed run commandAndExit mts-art-shard-00\nBug: 167385698\nChange-Id: I97d9c00b7c10debff8c63e4ae75f90da02be271c\n"
    },
    {
      "commit": "7df33c7bf1c4bc46180c6c28307e45dde4b1db56",
      "tree": "7fb8d17427885eee2b01fb737b25e8adfbe611b4",
      "parents": [
        "15afb622fc5c8f3d66be301d632a974bb40806a6",
        "7b9c2143e753c985e0660bae25c47729bbd2d3ff"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jul 07 15:59:31 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jul 07 15:59:31 2021 +0000"
      },
      "message": "Support field VarHandle objects in boot image. am: 7209da0a46 am: 7b9c2143e7\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1757394\n\nChange-Id: Ifa6d11c0f901e19daa80f53dd52a69b39e6cf3c3\n"
    },
    {
      "commit": "7209da0a46dd96ae5b9d73124ef09b4b0fe9ac25",
      "tree": "7a3227751b4eb8b8eef10eecf58c63d046bbbe62",
      "parents": [
        "6f244fa1658e216512cf6ef15a6301defaf0f5b0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 28 17:50:38 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jul 07 15:31:36 2021 +0000"
      },
      "message": "Support field VarHandle objects in boot image.\n\nTest: Build with WIP changes to implement AtomicInteger with\n      VarHandle. Build succeeds.\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 191765508\nChange-Id: I084ab7b3cd082570a090f3470fdfb792b80f4505\n"
    },
    {
      "commit": "f50da4c9dc19e1d2ed8be2423ebb28415ff97daf",
      "tree": "a3046b20db3214ac488227b733189b309c01def8",
      "parents": [
        "588af50062557c5926ba4adcf002e16a5449d8a9",
        "1dfc1b6f33d8dffeddfe89db5ab83edab4060145"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 07 07:50:23 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jul 07 07:50:23 2021 +0000"
      },
      "message": "Don\u0027t wrap VerifyError into NoClassDefFoundError. am: 4dc6589f39 am: 1dfc1b6f33\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1756609\n\nChange-Id: Ifc780685a9e43c828515be288f6f8524dec6bf01\n"
    },
    {
      "commit": "4dc6589f392d46800a3b64625245bdfe4bbbfc2f",
      "tree": "b159262fd300a650ab89277667641ebe7e13d357",
      "parents": [
        "e0386f10d4591afa9823658099e4f2ac7a693255"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jul 05 17:43:35 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jul 07 07:13:01 2021 +0000"
      },
      "message": "Don\u0027t wrap VerifyError into NoClassDefFoundError.\n\nFollow RI behavior by returning the VerifyError. NoClassDefFoundError\nonly wraps initializer errors.\n\nAlso rename the field in ClassExt from verifyError to\nerroneousStateError for better clarity.\n\nAnd remove now unused feature of storing a class in the verifyError\nfield.\n\nTest: test.py\nTest: 824-verification-rethrow\nBug: 28313047\nChange-Id: I19383f7b74f22a62ab1e0b8a13bea75a14c7b33f\n"
    },
    {
      "commit": "a897d87f0655bed22cdce82d7046245575e9cdae",
      "tree": "71e6d43afc008ad06c09e1f4be78a2f08fa64b8f",
      "parents": [
        "06f847e0bb391a6dc36705a70bf2beab840a2bf2",
        "942c09c77c5b0d202b537d5619f7db6faa7ca5d3"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 06 12:03:51 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Jul 06 12:03:51 2021 +0000"
      },
      "message": "Uncouple ART gtests from the ART APEX. am: f040914a12 am: 942c09c77c\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1749282\n\nChange-Id: I5e814d7d6019704c0a78c7dca0494042c6d2cecc\n"
    },
    {
      "commit": "f040914a122be86e280efe5e31af1168f2b7c72e",
      "tree": "8ea3fa76be8f215d36977477015ed7f9f3a2f65c",
      "parents": [
        "b4bd92f27fb143135870d07b459ea52637afcfa5"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Mar 22 15:45:03 2021 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Jul 06 10:52:35 2021 +0000"
      },
      "message": "Uncouple ART gtests from the ART APEX.\n\nIntroduce standalone versions of ART gtests on target, not bundled\nwith the ART APEX.\n\nSo far ART gtests have always been built as debug artifacts (and\nlinked against ART debug libraries). Make some adjustments in some of\nthese tests so that they can also work as non-debug artifacts and be\nused with the Release ART APEX (which contains only non-debug\nartifacts).\n\nNewly added tests:\n* `art_standalone_cmdline_tests`\n* `art_standalone_compiler_tests`\n* `art_standalone_dex2oat_tests`\n* `art_standalone_dexdump_tests`\n* `art_standalone_dexlist_tests`\n* `art_standalone_dexoptanalyzer_tests`\n  * Note: Requires root access to the device.\n* `art_standalone_libartbase_tests`\n* `art_standalone_libartpalette_tests`\n* `art_standalone_libartservice_tests`\n* `art_standalone_libarttools_tests`\n* `art_standalone_libdexfile_support_tests`\n* `art_standalone_libdexfile_tests`\n* `art_standalone_libprofile_tests`\n* `art_standalone_oatdump_tests`\n* `art_standalone_odrefresh_tests`\n* `art_standalone_profman_tests`\n  * Note: Requires root access to the device.\n  * Note: Some tests (2 out of 37) are failing in multi-ABI\n    contexts and have been temporarily disabled.\n* `art_standalone_runtime_compiler_tests`\n* `art_standalone_runtime_tests`\n  * Note: Some tests (16 out of 686) are failing and have been\n    temporarily disabled.\n  * Note: Some tests (4 out of 686) are failing in multi-ABI\n    contexts and have been temporarily disabled.\n* `art_standalone_sigchain_tests`\n\nTests not added:\n* `art_standalone_dexanalyze_tests`\n  * Reason: ART binary `dexanalyze` is not part of the Release ART APEX.\n* `art_standalone_dexdiag_tests`\n  * Reason: ART binary `dexdiag` is not part of the Release ART APEX.\n* `art_standalone_dexlayout_tests`\n  * Reason: ART binary `dexlayout` is not part of the Release ART APEX.\n* `art_standalone_imgdiag_tests`\n  * Reason: ART binary `imgdiag` is not part of the Release ART APEX.\n\nTest: atest -a art_standalone_cmdline_tests\nTest: atest -a art_standalone_compiler_tests\nTest: atest -a art_standalone_dex2oat_tests\nTest: atest -a art_standalone_dexdump_tests\nTest: atest -a art_standalone_dexlist_tests\nTest: atest -a art_standalone_dexoptanalyzer_tests\nTest: atest -a art_standalone_libartbase_tests\nTest: atest -a art_standalone_libartpalette_tests\nTest: atest -a art_standalone_libartservice_tests\nTest: atest -a art_standalone_libarttools_tests\nTest: atest -a art_standalone_libdexfile_support_tests\nTest: atest -a art_standalone_libdexfile_tests\nTest: atest -a art_standalone_libprofile_tests\nTest: atest -a art_standalone_oatdump_tests\nTest: atest -a art_standalone_odrefresh_tests\nTest: atest -a art_standalone_profman_tests\nTest: atest -a art_standalone_runtime_compiler_tests\nTest: atest -a art_standalone_runtime_tests\nTest: atest -a art_standalone_sigchain_tests\nTest: atest -a art_standalone_\\*_tests\nTest: m art_chroot \u0026\u0026 atest ArtGtestsTargetChroot\nBug: 162834439\nBug: 162734417\nChange-Id: I8beda9159d48c4ca495698357dc3bd95e3ff84d5\n"
    },
    {
      "commit": "712d5c599b006a601657b3058380ab1e903267f1",
      "tree": "4f1a36d6c1e52cfdf74a86100d830e4a600d423a",
      "parents": [
        "7e074c34adab53811b08d2ecbb6969f61ee8a45c",
        "2419fe4538611aabbc8e752e5f0297215d7abf6e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jul 05 07:59:59 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jul 05 07:59:59 2021 +0000"
      },
      "message": "dex2oat: Faster retrieval of profile data. am: ea936c0270 am: 2419fe4538\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1754189\n\nChange-Id: I3820969a3fcf51b944eba2bb6f43f01a14a65736\n"
    },
    {
      "commit": "ea936c02701dc7ac773f5c2272dafde5e1967ea0",
      "tree": "2327327eff2fa2844fb71af8d9ee8a0f48dc7a74",
      "parents": [
        "8d5d58554519ffc673760ba932a77e113f68c5fe"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Jun 25 17:10:49 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jul 05 07:33:20 2021 +0000"
      },
      "message": "dex2oat: Faster retrieval of profile data.\n\nAvoid the slow `ProfileCompilationInfo::GetMethodHotness()`.\nCache profile index to avoid repeating the `DexFileData`\nsearch and use new specialized functions that retrieve only\nthe required information instead of full `MethodHotness`.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 181943478\nChange-Id: Iaf8486a5e5b12f114c8abb9cfdedf6fc4ed62e20\n"
    },
    {
      "commit": "c94ab92f6e61b9ea9d90bdb3d72c4d4e2aab9db5",
      "tree": "b3159ecd96135c7a58999ae1bbcf4c625ee774fb",
      "parents": [
        "bf097b7f6354e7e1e8c0a7b97fb728744136e271"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jul 01 18:50:43 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Sun Jul 04 17:30:34 2021 +0000"
      },
      "message": "Add `liblog` as a dependency of `dex2oat` Soong modules.\n\nThis is in order to reduce differences in ART between AOSP and the\ninternal tree.\n\n(partly cherry picked from commit bdd9d71101edf4fd8220c18e28a7dccf8a72afda)\n\nTest: mmma art\nChange-Id: Ie00f630d1bbc6c196616b1f781b1eda4ae64b39f\nMerged-In: Ifeacba4cccf048e437b1906cf1592b8c2608cce4\n"
    },
    {
      "commit": "d35ad79d352c85622c17171b74982d281083a676",
      "tree": "82a0059ef56e442c8a59c5f7db5930cd0b14fe95",
      "parents": [
        "2a7ebe6093d9f23e7ef81fe9cd66070623d71a99",
        "3359147e0b65a78145edbab4995831086a0006b1"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jul 02 10:44:29 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Jul 02 10:44:29 2021 +0000"
      },
      "message": "runtime: add -Xdeny-art-apex-data-files am: 971068dcaf am: 3359147e0b\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1754081\n\nChange-Id: Ic9a7e810d78a3ceef24a4d62009da4e1444efa79\n"
    },
    {
      "commit": "971068dcaf5955634679dbfaf7b562ed52aff772",
      "tree": "3e76f60e7136f53ca0d19a23914721515e8b2725",
      "parents": [
        "3d12876bd9782831ad5c907f1f9dc94d10867f3d"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jun 30 21:17:53 2021 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jul 02 10:19:42 2021 +0000"
      },
      "message": "runtime: add -Xdeny-art-apex-data-files\n\nThis option prevents the runtime from loading AOT artifacts installed\nin /data/misc/apexdata/com.android.art.\n\nBug: 192049377\nTest: manually adding option and running odsign_e2e_tests\nTest: adding option and looking at proc/maps for system_server and zygote\n\nChange-Id: I56c7ce55b64de72faf39a06238089fe4b6b84b88\n"
    },
    {
      "commit": "3563d6a134be347910ff2035128bff7f1d1a147d",
      "tree": "3d6f55ea9e77b920b284087fd91d5992f7a1ff00",
      "parents": [
        "5729bc55dbe66b049b9e77ab76061f4ba772699b",
        "bf44f606854fe66fdc381cdb759d725e2af65b5e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 30 12:42:21 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jun 30 12:42:21 2021 +0000"
      },
      "message": "Remove experimental flag in verifier. am: f8b5288ab5 am: bf44f60685\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1748080\n\nChange-Id: I185b8fe0faaabefce0522d8bb958c636dacd4b8f\n"
    },
    {
      "commit": "f8b5288ab53fa3dbc95ddc22264c53165fdefbdd",
      "tree": "2fdee1be7012bc73d6776d508619f8c0ef4feeaa",
      "parents": [
        "d7b416118ab6820fb1fbe93ca194c4a748b9fa59"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jun 25 17:00:30 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 30 12:14:25 2021 +0000"
      },
      "message": "Remove experimental flag in verifier.\n\nWe don\u0027t use it anymore. If we add new opcodes in the future, we can\ntest by disabling the verifier (something which was hard to do at the\ntime).\n\nTest: test.py\nBug: 28313047\nChange-Id: Idce9a520995d12fdfc3bd314bc06b542492a0ab8\n"
    },
    {
      "commit": "e9d5c9667742fe3aca41f6a53d2f3a17d748d9d9",
      "tree": "800c2fd77c2e5d6492db4789cd6e594e4ed302e2",
      "parents": [
        "f10989825b43e4edd810e5be060b1e8a9b00104f",
        "692850fdcefbff6576fe5ae3ca0c362ed4f53c4c"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jun 28 12:06:56 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jun 28 12:06:56 2021 +0000"
      },
      "message": "Rename some ART gtest related Soong modules. am: 55ffe7fa9e am: 692850fdce\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1749281\n\nChange-Id: Iffc723ec09992f3643f387f1a809081a0deddac3\n"
    },
    {
      "commit": "55ffe7fa9ead8b501a756bb53f2571e3e7602f5e",
      "tree": "c4f63e30679b3e11d65268e52bf7548416f26792",
      "parents": [
        "8bf1da992a15a79ae76bcf53e9a2909912fbe96a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jun 14 15:18:54 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Jun 28 11:40:15 2021 +0000"
      },
      "message": "Rename some ART gtest related Soong modules.\n\nART gtests currently link with the debug (\"d\") versions of ART\nlibraries. The gtests themselves and their libraries are compiled as\ndebug artifacts. For the sake of consistency, perform the following\nrenaming of ART gtest related Soong modules:\n\n* `libart-compiler-gtest` -\u003e `libartd-compiler-gtest`\n* `libart-dex2oat-gtest`  -\u003e `libartd-dex2oat-gtest`\n* `libart-gtest-defaults` -\u003e `libartd-gtest-defaults`\n* `libart-gtest`          -\u003e `libartd-gtest`\n* `libart-runtime-gtest`  -\u003e `libartd-runtime-gtest`\n* `libartbase-art-gtest`  -\u003e `libartbased-art-gtest`\n\nAs we plan to introduce non-debug (\"non-d\"), standalone versions of\nART gtests in the context of uncoupling ART (target) gtests from the\nART APEX (b/162834439), this renaming will help us, as we\u0027ll be able\nto use the old names of a \"d\" module for the corresponding \"non-d\"\nversion.\n\nTest: mmma art\nTest: Run ART gtests on host and target\nTest: env OVERRIDE_TARGET_FLATTEN_APEX\u003dfalse art/build/apex/runtests.sh\nTest: env OVERRIDE_TARGET_FLATTEN_APEX\u003dtrue  art/build/apex/runtests.sh\nBug: b/162834439\nChange-Id: I4ca27a7f445a760398f41a9e60a7008d77294505\n"
    },
    {
      "commit": "02d6c6427381f8224d29a5bffae35c762d4db1a0",
      "tree": "08ca017c0196f2615d9f65efc3a088eb5818b6cb",
      "parents": [
        "f04fed517efeaa3caff055f5d868a0c6610e1c94",
        "71cc9bcfc8a419e0df113a35c2b619703d9a3689"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jun 23 09:04:35 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jun 23 09:04:35 2021 +0000"
      },
      "message": "dex2oat: Avoid unnecessary field/method resolution. am: a508249643 am: 71cc9bcfc8\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1742373\n\nChange-Id: I0ce875137a6c5470e7f822f65b1c0811b78e1749\n"
    },
    {
      "commit": "a5082496431781271a0b363a567e6de793c3ec0c",
      "tree": "86dd85f0abb41a5bf823742fe18e76b775a3035d",
      "parents": [
        "ec11cf1e4a7400af1befae3a5194206f16a58047"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 21 11:14:27 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jun 23 08:23:49 2021 +0000"
      },
      "message": "dex2oat: Avoid unnecessary field/method resolution.\n\nThere is no reason to resolve fields and methods of a class\nwe have just resolved, so remove that code. Refactor type\nresolution and avoid resolving classes twice for boot image.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 181943478\nChange-Id: I01f182a5fdfd000819fa9d9b8926d5cb320c1e0c\n"
    },
    {
      "commit": "cc0caedd41b680f4c32e51a9239a9f1b1c638a09",
      "tree": "ca3114e4333ff6ab6df2d8a553d1660083e4dc40",
      "parents": [
        "aefdc9e8a997d4a1a7371c2e0eef6a7f1a30ba8a",
        "850832b63cf264562b0f4d468876ffff5c7c2c77"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue Jun 22 08:44:30 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Jun 22 08:44:30 2021 +0000"
      },
      "message": "dex2oat: don\u0027t prune dex if passed as FD am: 59edf4b8f0 am: 850832b63c\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1740256\n\nChange-Id: Ic381f8cfd683d8f447f5783f7f87b6a962111040\n"
    },
    {
      "commit": "59edf4b8f09d02c10fa87831573151c6b99c3149",
      "tree": "b735be53783cb6945f281516c251212cfd7e26aa",
      "parents": [
        "156a8618372cda12eaff321c545d9126df225c0d"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Thu Jun 17 12:48:18 2021 -0700"
      },
      "committer": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Tue Jun 22 08:13:48 2021 +0000"
      },
      "message": "dex2oat: don\u0027t prune dex if passed as FD\n\ndex2oat prunes a dex file from its internal record if the file does not\nexist on the file path. This change avoids the pruning in case if the\ndex is passed as FD.\n\nBug: 186132447\nTest: odrefresh --use-compilation-os\u003d10 --force-compile\n      # complete successfully with other changes\nTest: TH\nChange-Id: I7dd2f0d1e100e465c2424eb36cb2d94da1e69001\n"
    },
    {
      "commit": "192d2abae44f2e58429453011f5b76d138a4bca2",
      "tree": "59879b33c3a2c6f72d727f559d8d005f70f03e54",
      "parents": [
        "7504eb20bdb97d54e8d63533165921e3a96aaea3",
        "ee503e28f35c2d083ef558f5f17193a999116bf4"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Jun 21 15:03:02 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jun 21 15:03:02 2021 +0000"
      },
      "message": "Only enable isolated compilation if requested am: c893d1597b am: ee503e28f3\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1740163\n\nChange-Id: I970ec7c141f1332030c727e2d67a283913ff01c5\n"
    },
    {
      "commit": "c893d1597b2e653659e0bc73cc2640590d01e8b0",
      "tree": "e2cb7ac8379875e7ac23d8d5683a96f57dbe4551",
      "parents": [
        "5da0507fd2d2b6342a9b87f4cce5ebbfa2c67dd3"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Jun 17 15:40:52 2021 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Jun 21 14:27:16 2021 +0000"
      },
      "message": "Only enable isolated compilation if requested\n\nIsolated compilation saves memory but takes much longer,\nso enable it only if requested.\n\nTest: adb install\nBug: 190277710\nChange-Id: Ia1bffb37ff25f80f7b6173fd42e6bd6ffff68e45\n"
    },
    {
      "commit": "4a7137436f0bcc2e0074f4fc4e9022f7f1094f7d",
      "tree": "0616c599b850e841a1b9af245dbc8b606d1df7de",
      "parents": [
        "2d06d7a0ebd0e5f95a1f34f106d526528d4d207a",
        "3e3b3052384b45cdb275153929cf67d72d5deee9"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 14 18:31:28 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jun 14 18:31:28 2021 +0000"
      },
      "message": "Rewrite static/instance field search by index. am: 4026117163 am: 3e3b305238\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1736295\n\nChange-Id: Icc4994da4e1d47b6f91282e38c936af9d1289090\n"
    },
    {
      "commit": "40261171630159bfd46043c996be8521c453fee1",
      "tree": "3cae9dfcfd5f745b61da630d031eff4f67fe9185",
      "parents": [
        "af5d304844cd8e39fcc31ca4e07e3e887d2f0bd9"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 14 10:59:51 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 14 17:55:51 2021 +0000"
      },
      "message": "Rewrite static/instance field search by index.\n\nThe old search was looking for a field with the given field\nindex in the class as well as superclasses and, for static\nfields, all interfaces. This was useless as as a field index\ncan match only in the declaring class. So, if the field was\nnot found in the declaring class we would have unnecessarily\nsearched wrong classes before resorting to string search.\n\nReuse the optimized `Class::FindField` by turning it into\na template implementation that can skip unnecessary static\nor instance field searches. Implementing the static and\ninstance field search this way allows ClassLinker to call\nonly one overload of `Class::Find{Static,Instance}Field`\nand helps avoid string searches in more cases.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing --interpreter\nBug: 181943478\nChange-Id: I23309c87c3702d98812adfec0279c483c9037f2c\n"
    },
    {
      "commit": "0a86e9321398e3fa97d18ba20a47408953ebca53",
      "tree": "9f37690ec1329142363c71ec05988b8f8ab3e6fb",
      "parents": [
        "f12764814d508e9f9176eaefd386f80927a60668",
        "a778b16bc31341ee0d8c6f3d6bdd15a69daef432"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon Jun 14 15:39:40 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jun 14 15:39:40 2021 +0000"
      },
      "message": "Add --dirty-image-objects-fd and --updatable-bcp-packages-fd am: 4ab592315e am: a778b16bc3\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1734115\n\nChange-Id: I3fcf7cf611eedb93affef101b9ba84cfb148daa9\n"
    },
    {
      "commit": "4ab592315e766876d2ae96f28f05bab9ae46c160",
      "tree": "70434b91f12a6fe7d52581446ce879732ea07900",
      "parents": [
        "b10668cb6a34398eb720f9a6305ff9a51b3ebfd4"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Thu Jun 10 12:24:02 2021 -0700"
      },
      "committer": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon Jun 14 15:08:21 2021 +0000"
      },
      "message": "Add --dirty-image-objects-fd and --updatable-bcp-packages-fd\n\nAlso, let odrefresh pass the files as FD to dex2oat.\n\nReadCommentedInputFromZip is removed since it\u0027s not used at all.\n\nBug: 187327262\nTest: odrefresh --force-compile\nChange-Id: Ie9247362eebaf46ef473f84effeb6e66830d077e\n"
    },
    {
      "commit": "550446fbf148a08d018289c2e6df9d178f3b2a5c",
      "tree": "168e72f7fa93f305c43abfd7120ab4c43ac134ae",
      "parents": [
        "93115f36ebf2b34ce11f266d20f7d0d5d0295b82",
        "769c81aebb0c5c3f64543eb5fc71c3688ed4d740"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 14 13:18:00 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jun 14 13:18:00 2021 +0000"
      },
      "message": "Clean up Class::GetDirectInterface(). am: b10668cb6a am: 769c81aebb\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1733592\n\nChange-Id: Ie7f5b4d7edd3b2332925450cc5e4bbd1fe1e8c46\n"
    },
    {
      "commit": "b10668cb6a34398eb720f9a6305ff9a51b3ebfd4",
      "tree": "ab155a0ae3c2966c20a3de68dbf53e6fe2ced86a",
      "parents": [
        "893e2edbd5aa14ab2ccb1800ccd3154f21a2d8a7"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 10 09:52:53 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 14 12:51:59 2021 +0000"
      },
      "message": "Clean up Class::GetDirectInterface().\n\nFetch array interfaces from the `IfTable`. This removes the\nonly use of the `Thread* self` argument, so we can remove\nthat argument. We also make the function non-static to avoid\nthe explicit `klass` argument. Similarly clean up arguments\nof `Class::FindClass()` and `Class::FindStaticClass()`.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 181943478\nChange-Id: Id639b675b4eb331a777cf318eb61bd19e05de4f0\n"
    },
    {
      "commit": "8e3bf4cdc1428a1863ab3e6396678d26a3e0787d",
      "tree": "277471f81483573895a95d3c2e1f85b25786b3a6",
      "parents": [
        "b4fd1bb182682de9333bfdfc617eba0387fea672",
        "236f7d421817f347d3adb6f014f2c03f2392a27b"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Thu Jun 10 16:05:58 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Jun 10 16:05:58 2021 +0000"
      },
      "message": "Add runtime option -Xbootclasspathfds: for pre-opened fds am: a09d8b7d4c am: 236f7d4218\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1721606\n\nChange-Id: Iddeb57350b7ca93385133bd7e63827b8a6d973d9\n"
    },
    {
      "commit": "a09d8b7d4cb6f35f12f2bd2ed4e04a0eb129eeea",
      "tree": "79587d30dda7acb00545333067596dfcfa11bdb6",
      "parents": [
        "e300c4e4eabe3388b730efe35561e54f1c306710"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon May 24 14:21:55 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jun 10 15:22:02 2021 +0000"
      },
      "message": "Add runtime option -Xbootclasspathfds: for pre-opened fds\n\nThe new option allows the client to pass a pre-opened fds to the\nruntime. The number of elements must match the number of BCP jars\nspecified in -Xbootclasspath. An fd of negative number is a valid\noption, in such case the runtime will still open the jar in the\ncorresponding path in -Xbootclasspath.\n\nExample: -Xbootclasspathfds:10:11:-1:12\n\nThe option is currently only used in \"unstarted runtime\", but will also\nbe used elsewhere in the follow-up changes.\n\nBug: 187327262\nTest: patch odrefresh to use the option, no longer seeing such openat(2)\nTest: m test-art-host-gtest\n\nChange-Id: I1bebbd80136419c03ac1309a8cb8229a0fd69838\n"
    },
    {
      "commit": "6fd59b6025befc66dd1e5ff2312c2faba8e9a3be",
      "tree": "96e82844b492fa5bf5c9447e660b27afeb5779bc",
      "parents": [
        "8a644e30b26be549f6d3bc526281828cee5e3e17",
        "c0db4a5fe5d90ecac2219751065eca78ea92e89c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 09 11:43:24 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Jun 09 11:43:24 2021 +0000"
      },
      "message": "Remove palette hooks. am: 4f6bb446f8 am: c0db4a5fe5\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1724637\n\nChange-Id: Iecf83d65bd6ed93981619469e3377914339b956f\n"
    },
    {
      "commit": "4f6bb446f8fbaa192f4e5b69734414c66d5e1bae",
      "tree": "c07c8cf278137c14fda476ed682968ee3c01c65f",
      "parents": [
        "beb9f2012587035a5c30d0eca8af458b2ad659b7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 02 18:05:51 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jun 09 11:03:12 2021 +0000"
      },
      "message": "Remove palette hooks.\n\nMake the method be part of the official palette API.\n\nBug: 186016399\nBug: 185778652\nChange-Id: I3dc9e879c647fd63f5826091813613fd97e25c0d\n"
    },
    {
      "commit": "d462d1ca0419346d097802364ef2a7824be557af",
      "tree": "0035ecf0c9ebbbca91aa90c580dd9cc11de72c6d",
      "parents": [
        "0d85f9f53e1f48a8eeddffbcd06d22d0e7cd580b",
        "719ac37d4bb980bf69e7d2db472c2bca0f10b1f5"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu May 27 22:41:18 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu May 27 22:41:18 2021 +0000"
      },
      "message": "Use verify when speed-profile gets an empty profile am: 028c7efaf7 am: 719ac37d4b\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1719833\n\nChange-Id: I86b9ca2d76efd79a9172194c1491143c685a6da4\n"
    },
    {
      "commit": "028c7efaf7321a1e253fb4d9dcc5d85e8a9e6d68",
      "tree": "27631b722b16cc7a71de86e847fe023ccf01a384",
      "parents": [
        "e8efdaa09b7ff36d5a986f0320f29ac4a7563896"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed May 26 15:37:00 2021 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu May 27 19:42:00 2021 +0000"
      },
      "message": "Use verify when speed-profile gets an empty profile\n\nChange the compiler filter to verify if we need to compile\nspeed-profile but we don\u0027t get a profile, or the profile is empty.\nThis will improve the clarity and the precision of the telemetry\ndata which usually expects speed-profile to outperform verify.\n\nTest: gtest\nBug: 188655918\nChange-Id: I215552e0001d56df0e0d676721f0a741ef2573be\n"
    },
    {
      "commit": "f6c49c4e40a4ac715506ec055114f3637023b358",
      "tree": "4feddae04ff022f2c2c60e6d1548b16425f7a6eb",
      "parents": [
        "f3425aaa25ce5122896e8ca3926891d982175568",
        "e998b0b512a79b4b9e5969df5a0d63da4d4f6abb"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu May 27 14:20:08 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu May 27 14:20:08 2021 +0000"
      },
      "message": "Introduce `art::FastExit` to replace all uses of `quick_exit` in ART. am: bdf1737bd1 am: e998b0b512\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1718230\n\nChange-Id: I5253824be5f3c41444d8191810159641261fbe9c\n"
    },
    {
      "commit": "bdf1737bd17132525bcfdc778663123b61e97fa3",
      "tree": "ec097408de25394ac6444ae0589fcfa41d400257",
      "parents": [
        "f2d1a510bf36f98e0607f0527299789a64d755c9"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu May 06 00:19:19 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu May 27 13:28:37 2021 +0000"
      },
      "message": "Introduce `art::FastExit` to replace all uses of `quick_exit` in ART.\n\nNo longer use `quick_exit(3)` in ART, as it does not play well with\nClang\u0027s code coverage instrumentation (see b/187935521 and\nb/186576313). Replace all its uses with a new routine,\n`art::FastExit`, calling either `exit(3)` when ART is built with\nClang\u0027s code coverage instrumentation (in order to dump coverage\nprofiles when the program terminates) or `_exit(2)` otherwise (to exit\nquickly).\n\nFunction `art::FastExit` is implemented as part of the\n`art_libartbase_headers` header library, so that it can be used easily\nin `dalvikvm`.\n\nTest: mmma art\nTest: ART tests\nBug: 186576313\nBug: 187935521\nChange-Id: I7b4f86f6f0e7b12814684ecea73a2ed0ef994395\n"
    },
    {
      "commit": "f90395f3cd4019cdab1b7c9dd6c2510da5d50816",
      "tree": "cd630723c5bb4031985744a383a0752e80c79f34",
      "parents": [
        "1e23b09f221d6a59bc676506a79d109b54b5a47c",
        "9aee3199eee6ab8a8c42513fcea200b7b8cd1b08"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon May 24 20:44:50 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 24 20:44:50 2021 +0000"
      },
      "message": "Make the runtime option -Ximage a ParseStringList am: 61ffd049d8 am: 9aee3199ee\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1713938\n\nChange-Id: I1fbc7e036aab59d94bab0e3d9ff7c1cc97451e22\n"
    },
    {
      "commit": "61ffd049d8d6946ba52884a8f679dde0e3a6654d",
      "tree": "6ce3787caae6d00bfb30165786fe40d42a86e045",
      "parents": [
        "6d8d68efbe2101e2d5fdf078556cbc1f286c37c7"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Thu May 20 15:14:25 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon May 24 20:05:49 2021 +0000"
      },
      "message": "Make the runtime option -Ximage a ParseStringList\n\nPreviously, the string spliting is done in multiple code locations,\nincluding ImageSpace::BootImageLayout::LoadOrValidate and\nGetPrimaryImageLocation (which may be called multiple times).\n\nThis change converts the -Ximage option from a string into a\nParseStringList\u003c\u0027:\u0027\u003e.\n\nIt may be worth pointing out that this doesn\u0027t change the current code\nexpectation that each image can have a profile (e.g.\n\"/path/to/foo.art!/some/profile.prof\").\n\nThere is a later plan to introduce new options of boot image fds with\nParseIntList\u003c\u0027:\u0027\u003e. This change would make them more consistent.\n\nBug: 187327262\nTest: boot looks normal\nTest: dexopt looks normal\nTest: TH\n\nChange-Id: I82657cb725cda2d3b782cbe7a6e6d9a871e80ee7\n"
    },
    {
      "commit": "a867808dcf35075e93d7707648aa14943b3299ca",
      "tree": "eb1ccfdff0b184c82a72e7696310b7c0109758a2",
      "parents": [
        "73464072831393b2dc75effbfb1c4623daf61ba0",
        "846c4d606e672154d3621097ee8d4e767d65d140"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon May 24 13:39:02 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 24 13:39:02 2021 +0000"
      },
      "message": "dex2oat: Abort app compilation without boot image. am: d42902692d am: 846c4d606e\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1714166\n\nChange-Id: I1519aa0d0649e75b94e9922300ada5d67d184ef2\n"
    },
    {
      "commit": "d42902692d1fbb101a3c60ba314df69005da9c83",
      "tree": "76d495db0ab6160c1fe1b0e1f046da1260272265",
      "parents": [
        "8f8935ce292bec925e8a18719227df9ad06a111d"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri May 21 16:36:23 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon May 24 13:03:10 2021 +0000"
      },
      "message": "dex2oat: Abort app compilation without boot image.\n\nAlso avoid crash in GraphChecker for bad instructions that\nthrow into catch block but do not have an environment. And\nDCHECK() that java_lang_Double_doubleToRawLongBits and\njava_lang_Float_floatToRawIntBits are intrinsics.\n\nTest: New test Dex2oatTest.MissingBootImageTest.\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 188684102\nChange-Id: I13ec2ee8a7968c0a5652aa67ec6291d07a986c80\n"
    },
    {
      "commit": "ac860aa9ee4faa547e80c1a66913c5338d4190de",
      "tree": "b35a739bb94cbe0cfc2a185dab7ad78ba88a34c6",
      "parents": [
        "960332b51c88022ecab1d5b7f97bb98e0ad4ceb3",
        "bcbdc30648fb651f76ee0dcf092765bf7f6a2e10"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue May 18 23:49:13 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue May 18 23:49:13 2021 +0000"
      },
      "message": "Add --dex-fd to dex2oat am: 826e6667c4 am: bcbdc30648\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1710090\n\nChange-Id: I451ae2d3831dc644b11a2f66e6cabcab6201eda2\n"
    },
    {
      "commit": "960332b51c88022ecab1d5b7f97bb98e0ad4ceb3",
      "tree": "0f6a604091e8e1464700a4a3323480868aa066dd",
      "parents": [
        "2dd271b943c81cea180b4bf75ef9c934731434a1",
        "09b75c4ff5fe185f2696d25a9223d77b64069440"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue May 18 23:49:12 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue May 18 23:49:12 2021 +0000"
      },
      "message": "Refactor to consolidate oat writer setup am: b3bc892bfa am: 09b75c4ff5\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1710089\n\nChange-Id: I56723382b5d310513c31cd1fc761e231a5ab8556\n"
    },
    {
      "commit": "2dd271b943c81cea180b4bf75ef9c934731434a1",
      "tree": "ed16040364ec759279c712d402f8eac2aac31d9c",
      "parents": [
        "87f3fbaa3860bbe8e457e31a5a834a3307de578a",
        "c0ae8f4ae8f31bb1b70861168dee30d92e3c2d54"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Tue May 18 23:49:10 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue May 18 23:49:10 2021 +0000"
      },
      "message": "Parse --cpu-set as ParseIntList am: 2f1ad346ad am: c0ae8f4ae8\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1710088\n\nChange-Id: I2cbb218cb4d31b7f7f89641c5b194ad256d9ac00\n"
    },
    {
      "commit": "826e6667c4d543c5c75a4a87d7cceb43f72078d0",
      "tree": "8ae4e9c93339c61fc1c30525a448b5c8ee61f77e",
      "parents": [
        "b3bc892bfae8267c3b82bbbd4263cb368f7a3be3"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon May 17 15:40:13 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 18 22:41:46 2021 +0000"
      },
      "message": "Add --dex-fd to dex2oat\n\nBug: 187327262\nTest: odrefresh --force-compile\n      (also, no longer seeing openat(2) BCP extension jars via strace)\nTest: atest art_odrefresh_tests\n\nChange-Id: Icac9ed522eae307e8e4391ba9cc59927c57c0d68\n"
    },
    {
      "commit": "b3bc892bfae8267c3b82bbbd4263cb368f7a3be3",
      "tree": "7adc4bea5ed8e84def75d3078fdc04e1adc2053c",
      "parents": [
        "2f1ad346ad9524fa632368ae56cd2024638ace42"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Fri May 14 15:02:21 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 18 22:41:46 2021 +0000"
      },
      "message": "Refactor to consolidate oat writer setup\n\nThe only difference betweeen the two loop in the change is which oat\nwriter to use (always 0th, or the i-th).\n\nWith this change, we can avoid code duplication inside the loop in the\nfollow-up change.\n\nBug: 187327262\nTest: TH\n\nChange-Id: I0ab6e3beda423ad5a6b78891d60417f10c5a7ae8\n"
    },
    {
      "commit": "2f1ad346ad9524fa632368ae56cd2024638ace42",
      "tree": "9255199d223d0c0c59036e147d3b5fe8652e0b0e",
      "parents": [
        "07ff2833c7425cef87abad3e21b3f884597dc58c"
      ],
      "author": {
        "name": "Victor Hsieh",
        "email": "victorhsieh@google.com",
        "time": "Mon May 17 14:29:09 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 18 22:41:46 2021 +0000"
      },
      "message": "Parse --cpu-set as ParseIntList\n\nAn argument of --cpu-set\u003d1,2,3 is currently parsed into a\nvector\u003cint32_t\u003e. This causes two problems:\n\n1. With the type CmdlineType\u003cstd::vector\u003cint32_t\u003e\u003e that internally does\n   the comma spliting, it prevents us from adding another type of int\n   vector (e.g. multiple --dex-fd $FD). This is inconsistent to existing\n   string and vector\u003cstring\u003e parsing.\n\n2. A delimiter-separated argument like \"-Xbootclasspath:\" is parsed with\n   ParseStringList, which keeps the types of \"string vector\" seperated\n   (depending on whether it comes from a single argument, like\n   \"-Xbootclasspath:\", or multiple arguments, like --dex-file).\n\nThis change replaces the parser of vector\u003cint32_t\u003e with the new\nParseIntList, which solves the two problems above.\n\nBug: 187327262\nTest: atest art_cmdline_tests\nTest: TH\n\nChange-Id: I2f225ec2c9f47f1bf1df76507ccb67b23bb51861\n"
    },
    {
      "commit": "de94a06bb03731406a368784fcec200cb2d60352",
      "tree": "145c7b557ea3a4d3d5c2acef66217f80dd6c33da",
      "parents": [
        "aefb09aa47350440aa731742f307189faae67fce",
        "f684ebdddc61daadfdcf29c83b2f4746f91a5767"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri May 14 18:20:05 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 14 18:20:05 2021 +0000"
      },
      "message": "Ensure verifier deps in the vdex file are 4-byte aligned. am: 2ef367acf3 am: 9b733f884a am: f684ebdddc\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1701125\n\nChange-Id: Iedfe0f97c67633f21ab099d11de11a1e1763eaa6\n"
    },
    {
      "commit": "2ef367acf3f95ee4c0459b73c3b18613cfa7d74d",
      "tree": "193c094b51ab441159f04e40324d4ac51e1d32f9",
      "parents": [
        "833d76f4bdca60ed06a76b3d248ea643efafb844"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon May 10 14:14:03 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri May 14 16:46:48 2021 +0000"
      },
      "message": "Ensure verifier deps in the vdex file are 4-byte aligned.\n\nIt simplifies the encoding / decoding logic.\n\nTest: 663-odd-dex-size\nBug: 186405713\nChange-Id: I26bcf2b6cfa16548a520a501e6e1b38c238eb1df\n"
    },
    {
      "commit": "f2d7e1f0afa41f120f152d83f03428692a3fa83d",
      "tree": "85123a3e5949ba2380a0f85d1d9c9e00d2d2b24c",
      "parents": [
        "04ed15804805b2947e22e568dbaf63ebdf8e6ef2",
        "9d77b4ee0fb0ffa12d530f7cea8ccb679ed221a0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon May 10 09:05:41 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 10 09:05:41 2021 +0000"
      },
      "message": "Link libvixl statically. am: 053e1383c7 am: f70ea1ccbb am: 9d77b4ee0f\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1697446\n\nChange-Id: Ib56a4c26d46db5798a3451e4e9fe3353a60f944e\n"
    },
    {
      "commit": "053e1383c721b0a1c4f87b2d391ab392c64caf84",
      "tree": "d6698eaf3f64440b47c06e5d6f670be06cfcc80e",
      "parents": [
        "bcec38f7b7dc92d89ce9d49b8c1ba9afe87dab6b"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed May 05 16:07:27 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon May 10 08:12:24 2021 +0000"
      },
      "message": "Link libvixl statically.\n\nInstead of including shared library libvixl.so in the ART\nModule, link libvixl statically to all binaries that use it,\nnamely libart-compiler.so and libart-disassembler.so which\nshall increase in size with the additional libvixl code.\n\nThe ART Module size with default libvixl symbol visibility:\n  - before: 88460730B\n  - after: 86973943B (-1.42MiB)\nWith hidden libvixl symbol visibility:\n  - before: 88337851B\n  - after: 84962808B (-3.22MiB)\n(This is with master-art where we do not have a boot\nprofile and therefore compile more code in boot image.)\nThe change from default to hidden visibility is done in\n    https://android-review.googlesource.com/1697237 .\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nBug: 186902856\nChange-Id: I040b0115b94b8690ee7be53e3ded8610d9f13e99\n"
    },
    {
      "commit": "4ace521711ed21c957a57154e769ce512a25928b",
      "tree": "f588fa0162225f07bdc5713f15ae7286d2e2bced",
      "parents": [
        "0aee905758e614d2e8e0e2628e38ac0d08bd1fff",
        "1c6cb7b23a4f764bcb0e2c857ffd94fe0f4be72d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri May 07 10:09:27 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 07 10:09:27 2021 +0000"
      },
      "message": "Use `quick_exit` instead of `_exit` (except for error handling). am: a28c827fdb am: 9391da1069 am: 1c6cb7b23a\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1692431\n\nChange-Id: I0f3bde81380ea4eafd11026c19d20cf685ef2306\n"
    },
    {
      "commit": "a28c827fdb58ec489931d6e70e27818619bc1b75",
      "tree": "038448d3d8d2922c05296b60b1280c3ed3f596b6",
      "parents": [
        "7eedd447cb5a4904acf80123ef813a7b8dead9a2"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Apr 30 17:09:10 2021 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri May 07 09:13:03 2021 +0000"
      },
      "message": "Use `quick_exit` instead of `_exit` (except for error handling).\n\nReplace every occurrence of `_exit` (for cases other than pure error\nhandling) with `quick_exit`, in order to allow functions registered\nwith `at_quick_exit` to be called before exiting.\n\nIn particular, this change will allow LLVM\u0027s code coverage profile\ndumping routine to be called before exiting ART processes.\n\nTest: mmma art\nTest: ART tests\nBug: 186576313\nChange-Id: Ia9b0dbb471e2a26600c8bd23f7567931d050fc9d\n"
    },
    {
      "commit": "40f01c447ab61c1c60937458cd1d27c12facd86d",
      "tree": "832fe6271e5a2cebcdeccfd8e901fb75a6f4520e",
      "parents": [
        "f9370105cbeabc28590bc40023e2ee84d04a6169",
        "750ad419428cbcfcba3dbf2ff08d54448b15aaf2"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Apr 30 18:01:51 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Apr 30 18:01:51 2021 +0000"
      },
      "message": "Fix gtests with mini-debug-info enabled by default. am: 889da94a59 am: 5484914da5 am: 750ad41942\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1690899\n\nChange-Id: Ie61a6d8e0b2065f7f17df2fe9b83e80ee0607c17\n"
    },
    {
      "commit": "889da94a5931a68ca527dc7320ff0b5de69917fc",
      "tree": "1c5d50e5a63f35073ba7b6b84f6f6b5f965d7c62",
      "parents": [
        "d78f319c52888d1c45d17ce1521e4f78db2d7119"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Apr 30 13:03:14 2021 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Apr 30 16:58:11 2021 +0000"
      },
      "message": "Fix gtests with mini-debug-info enabled by default.\n\nEnsure we can generate mini-debug-info if it is enabled by default.\nThe tests don\u0027t explicitly generate the info on background thread.\n\nTest: test.py -g\nChange-Id: If3cf9a067ce683f728d553394e1407beeadae670\n"
    },
    {
      "commit": "b122245e6e817622812a87e0a1001655d509c25e",
      "tree": "82e0bb420353550f127d13d752a3f9f433537975",
      "parents": [
        "c1d6a69c66da2f4d62df5910937bebc08f5b5977",
        "d17071c1a00d203ab930e6a749e2963d4393cec8"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Apr 30 09:46:04 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Apr 30 09:46:04 2021 +0000"
      },
      "message": "Add apex versions in oat file headers. am: d3c45c298b am: d4b7f695a2 am: d17071c1a0\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1688225\n\nChange-Id: Idce67c864135155bcf5a675fa3081686a16fa066\n"
    },
    {
      "commit": "d3c45c298b02163e402e1eec97e7ba21a2ba333e",
      "tree": "3d45d277e8b85a08225c149c778b2b403853b969",
      "parents": [
        "ba320165975387e780be2bd16fac4a522411b59c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 27 13:21:28 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Apr 30 08:42:29 2021 +0000"
      },
      "message": "Add apex versions in oat file headers.\n\nUse the versions to know whether we need to recompile.\n\nTest: oat_file_assistant_test\nBug: 182465342\nChange-Id: Ic656ed4465d35d325c1823d531f7c4c5bc74598d\n"
    },
    {
      "commit": "d5540bf2fcb5d614d35286b8faf5eee97dfa8268",
      "tree": "e679d60cb75fc278a13e22d27fd56d34060d1dce",
      "parents": [
        "bcb9cdeb18ac05cb9decce0cfffecf794df07ced",
        "fbded460278d432e214dd3aaad5d26c85592dc29"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Apr 28 11:41:20 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Apr 28 11:41:20 2021 +0000"
      },
      "message": "Remove RETURN_VOID_NO_BARRIER byte-code. am: 61c624239c am: c2d57b4712 am: fbded46027\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1688586\n\nChange-Id: If1aabb8486a8803a0736b809aba746f9fbd5907d\n"
    },
    {
      "commit": "61c624239ced1203d1c77cbeb5a57f9ad2c5c73d",
      "tree": "63e392ba73e02ddb7fb8fc73ca87bf47d6452332",
      "parents": [
        "1dab575cd635706f03d510763cb4ea1b115a2cee"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 27 16:22:48 2021 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Apr 28 10:44:11 2021 +0000"
      },
      "message": "Remove RETURN_VOID_NO_BARRIER byte-code.\n\nUnused and obsolete quickened byte-code.\n\nBug: 170086509\nTest: test.py -b --host --64\nChange-Id: I1e917c189da7bf64418412522676dc6b081d5c0b\n"
    },
    {
      "commit": "c853582379f170e63ceaa65a84f84f287be24f3e",
      "tree": "30ef3613f3e40ce5a7b1ac4fec3a8dc8e6a220a2",
      "parents": [
        "4c9aae5db3ec2cc39d21e094b814472e5c64032c",
        "880cbc44007e50c94e839078dac2c062cacb7ac1"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 26 08:45:13 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Apr 26 08:45:13 2021 +0000"
      },
      "message": "dex2oat: Expect boot image profiles for boot image. am: a220980389 am: 5e48d4f823 am: 880cbc4400\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1685633\n\nChange-Id: Id59495fa6abbc4e1f9fb74c9bd76278a4a4eacf9\n"
    },
    {
      "commit": "a220980389b87aa448b5f2d110eba7604c383c12",
      "tree": "66fa588b2b52279f662b3fd9edb0ad6953abb838",
      "parents": [
        "a61859210844849e97a479bcfa74d1a62f51f819"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Apr 23 13:28:29 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 26 07:27:21 2021 +0000"
      },
      "message": "dex2oat: Expect boot image profiles for boot image.\n\nThe profile loading is currently permissive, so this\ndoes not really matter but we intend to make it more\nstrict soon.\n\nAlso clean up ScratchFile to avoid dex2oat_image_test\nerror logs related to ScratchFile destruction.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 148067697\nChange-Id: I34526ddb0389444d54b9754afbedeb671c7b05a8\n"
    },
    {
      "commit": "a60ed76246410c2d364db4caa8ac9c4e0a63447f",
      "tree": "63de5ddfe45fbb7633d5529ace52b94482e0a50f",
      "parents": [
        "e5bba4df770f3cb62841c9784893dfdba86d7be5",
        "31f93629fd51e18b87889dc782dfdb46a94534f0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Apr 21 14:30:38 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Apr 21 14:30:38 2021 +0000"
      },
      "message": "Add number of methods to OatClass. am: 2cca1e029c am: a6fb99b858 am: 31f93629fd\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1683151\n\nChange-Id: I6d73eed6ab50d6608b972653b3a880ce8fc5320b\n"
    },
    {
      "commit": "2cca1e029c8b152498d48b548a63dd2aa8697b6c",
      "tree": "bf49f82e8276e51620e97fb265408a79c4e533d6",
      "parents": [
        "79578115a2ab67af3bd61dad2a6a6497f2e0b6b9"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Apr 21 09:21:16 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Apr 21 13:17:31 2021 +0000"
      },
      "message": "Add number of methods to OatClass.\n\nAnd use it for checks when reading oat file data.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 148412019\nChange-Id: I3a2433f94397107a2ce3c198d22e660871c505a8\n"
    },
    {
      "commit": "4698e16cae073bfad9377261d6035e30739417c3",
      "tree": "90f3dee4d264f141f81b4169b72609cf335b7ac4",
      "parents": [
        "19d64412fe93187635284e984eb29c1f36abc5db",
        "0cc2bd9cdfb6ac71c9211a23adef9cd02d771be0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Apr 20 09:22:20 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Apr 20 09:22:20 2021 +0000"
      },
      "message": "Change OatClassType to enum class. am: 3d76ebebfb am: 7e9a580576 am: 0cc2bd9cdf\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1679611\n\nChange-Id: I9b60fd3072a22afb17087aac1fb5c514af1dc3ee\n"
    },
    {
      "commit": "3d76ebebfb50ce6e465f99b96078790a2576ca38",
      "tree": "2b4b41b6444f681d9d4200426afc4b9603bc091d",
      "parents": [
        "6e741a743cda2a85830b8cf85943e68feeebe3c7"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 19 15:07:50 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Apr 20 08:00:45 2021 +0000"
      },
      "message": "Change OatClassType to enum class.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 148412019\nChange-Id: I0709a467c92f38e6886d3936b20c2c7869429956\n"
    },
    {
      "commit": "9777eac8c6e34c8abb9e54502e44b2cd733e8210",
      "tree": "d23599964c167a80d612e0631da0018acf778379",
      "parents": [
        "f987f3fe44581d00b6397dd26b9c18d1978fca7e",
        "caec4871c95c691388768e5793c5ebd5d0b0d893"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 19 11:05:53 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Apr 19 11:05:53 2021 +0000"
      },
      "message": "Reland \"Move the type lookup table to vdex.\" am: 0b943287e7 am: 2dd05e193f am: caec4871c9\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1677234\n\nChange-Id: Ie40a79ac509034a11a7923d04482b4a85bbdc949\n"
    },
    {
      "commit": "0b943287e7dec0cbe1734752f5a1f30f3c29973b",
      "tree": "9b423991fc85968f2cccf926a39f844ac54f7f59",
      "parents": [
        "5db2fd0e535b056ccb11e137f195b311627b48ff"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Apr 16 09:16:00 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 19 09:57:45 2021 +0000"
      },
      "message": "Reland \"Move the type lookup table to vdex.\"\n\nThis reverts commit 640c448bad41c00599f8f8fb056eba679edc891e.\n\nReason for revert: CL is not the culprit\n\nChange-Id: Ia9a404980601998ade118b0e14008e2bc6317d76\n"
    },
    {
      "commit": "278b449bf9624164b4e2966968ef4737d532f4d4",
      "tree": "a76e8fa3343f3fa8ed14628ec01d129ca75ad9c1",
      "parents": [
        "2855ad95e6cc492eccc6a09b9fee36d4234e0a35",
        "860c07ea843d2005ac887d2644e6bb4530b2399f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Apr 16 09:32:22 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Apr 16 09:32:22 2021 +0000"
      },
      "message": "Revert \"Move the type lookup table to vdex.\" am: 640c448bad am: 3e9a647ea5 am: 860c07ea84\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1677231\n\nChange-Id: I43eaccc4f6e1739265039f5b1d1887b2f3c1f7a5\n"
    },
    {
      "commit": "2855ad95e6cc492eccc6a09b9fee36d4234e0a35",
      "tree": "8e55c1a631ee292cc09526d4c340ea30eb6d5c18",
      "parents": [
        "a2630c27d4784f2943fe0aa0df1cee9f401cf481",
        "87031e18ef9d48c95e907f8a35eaf67091793cb6"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Apr 16 09:31:36 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Apr 16 09:31:36 2021 +0000"
      },
      "message": "Clean up profile tests. am: f4d05ff134 am: b005b7816c am: 87031e18ef\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1675580\n\nChange-Id: I4434ff0a6b4c0a2702ba1b974daa6cfb507ab2ec\n"
    },
    {
      "commit": "640c448bad41c00599f8f8fb056eba679edc891e",
      "tree": "05c9293b0e17908efe82a5f4048bf092a99996e2",
      "parents": [
        "f4d05ff134347d723e27919ccc89ce9d412b2d58"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Apr 16 08:31:29 2021 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Apr 16 08:31:57 2021 +0000"
      },
      "message": "Revert \"Move the type lookup table to vdex.\"\n\nThis reverts commit c005ada78df5edebac74739b2c344e1a2a3efcba.\n\nBug: 112676029\n\nReason for revert: Fails on asan\n\nChange-Id: Id21b84f1f078d6b1c701559e0cbbd3704d269dfb\n"
    },
    {
      "commit": "f4d05ff134347d723e27919ccc89ce9d412b2d58",
      "tree": "aa368066676880ef1f4fbbec722ad8d88cad8771",
      "parents": [
        "c005ada78df5edebac74739b2c344e1a2a3efcba"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Apr 14 09:39:04 2021 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Apr 16 08:21:03 2021 +0000"
      },
      "message": "Clean up profile tests.\n\nUse TestDexFileBuilder and remove FakeDex. Add a helper\nclass for shared code between ProfileCompilationInfoTest\nand ProfileAssistantTest.\n\nTest: m test-art-host-gtest\nTest: run-gtests.sh\nBug: 148067697\nChange-Id: I0bf5d3fb7a456dcd717bce694d7f832a654fcccb\n"
    },
    {
      "commit": "a2630c27d4784f2943fe0aa0df1cee9f401cf481",
      "tree": "3bfd2da797395c1bcfacccd223f7fde27e5ae1a9",
      "parents": [
        "ccd67ac64e72251d7581982c60b192ef4bdc0fac",
        "9ce03f0c2ad0d24262d4909e34ff6a6a15f8cc12"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Apr 15 18:42:04 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Apr 15 18:42:04 2021 +0000"
      },
      "message": "Move the type lookup table to vdex. am: c005ada78d am: ebddba5521 am: 9ce03f0c2a\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1673309\n\nChange-Id: I68efa4e7a1d0a822f4b3ba4de27f117a8ecb63c6\n"
    },
    {
      "commit": "c005ada78df5edebac74739b2c344e1a2a3efcba",
      "tree": "a3a682bcc841426ac57629f937d718a5f530ea81",
      "parents": [
        "c8fe6517faf91b45683cddff3c15e08e489e12e9"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 12 18:26:20 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Apr 15 16:31:34 2021 +0000"
      },
      "message": "Move the type lookup table to vdex.\n\nThe table format has been stable for many releases now, so \"promote\" it\nto .vdex, which remains post-OTA.\n\nTest: test.py\nBug: 112676029\n\nChange-Id: Ie1bbb24b4ab9c7864ae7e69e97db5ee5d1fc9ea1\n"
    },
    {
      "commit": "cdb3ca3a9828e0e4b617e1746d4bd3d445a2d5f5",
      "tree": "76541350b1a7f2ebba1842b5d8e9a5f1b6a6c554",
      "parents": [
        "6294804618e7421acb0798daa37d14f6a2d92e94",
        "d4e21d1c7f9b5fe30d5f1f1cb930e4db7d5ccff2"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Apr 12 17:25:22 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Apr 12 17:25:22 2021 +0000"
      },
      "message": "Add a --force-allow-oj-inlines dex2oat flag am: 4531afd0d8 am: 8915bb1e74 am: d4e21d1c7f\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1659540\n\nChange-Id: Ia37029a256cb2fc8db6463c55d66c0cab89d3b5b\n"
    },
    {
      "commit": "6294804618e7421acb0798daa37d14f6a2d92e94",
      "tree": "3d91cc7bc93237b408cb041ecaef5e91749e951a",
      "parents": [
        "4788ccae9b6bc7f2dd12974895ef36292d526eac",
        "3ddcecd63ba540ea2ea69a1982e56a1ae14d796c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 12 17:25:02 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Apr 12 17:25:02 2021 +0000"
      },
      "message": "Remove option CreateTypeLookupTable. am: d187d879b0 am: 434013155e am: 3ddcecd63b\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1673205\n\nChange-Id: I44981917b87ee5e0688d2189568d9cb6a8d5ada3\n"
    },
    {
      "commit": "4531afd0d813fdfa2bb115522bc5918477c03dc2",
      "tree": "242c721965aff12f8bd4246d13b18ef71fcdbd97",
      "parents": [
        "d187d879b0cd627b8b50d80d40b0d6b1cb91598c"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Mar 30 17:13:30 2021 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Apr 12 15:53:01 2021 +0000"
      },
      "message": "Add a --force-allow-oj-inlines dex2oat flag\n\nWhen reproducing compilation failures on the host sometimes the\nautomatic core-oj noinline will prevent the issue from reproducing.\nAdd a new --force-allow-oj-inlines to disable this behavior.\n\nTest: ./art/tools/compile-jar.py --profile-file bad_compile.prof --arch arm64 ~/no.nrk.mobil.radio_10922_base_split.apk --compiler-filter\u003dspeed-profile --dump-stats -j1 --force-allow-oj-inlines\nChange-Id: I76204bfb061635819d55c2459cfea4e4cfebce79\n"
    },
    {
      "commit": "d187d879b0cd627b8b50d80d40b0d6b1cb91598c",
      "tree": "efce480c24d4a8cfe079116621b89975c3c91ac2",
      "parents": [
        "a57e103e99c23ad2a7c20454b8fbca5075906dc6"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 12 13:52:56 2021 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 12 15:04:25 2021 +0000"
      },
      "message": "Remove option CreateTypeLookupTable.\n\nWe have always created them for a while now.\n\nTest: test.py\nChange-Id: I6c9293d90c4b8449f7bd9b26ff8f4666c8ceca0a\n"
    },
    {
      "commit": "b496bec009b60c385e7e5b4665820bc548dd44c0",
      "tree": "357d5ae83accbc486b4b75d8896f0116a38a4eee",
      "parents": [
        "5ffac9173341f131ca56fe17f16ae4419c91ade1",
        "4edd8708c11a2d899bb6a171903eb255e5652585"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Apr 08 07:00:04 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Apr 08 07:00:04 2021 +0000"
      },
      "message": "Validate vdex checksums during dex2oat compilation am: 92a7857854 am: bb08a3609c am: 4edd8708c1\n\nOriginal change: https://android-review.googlesource.com/c/platform/art/+/1664621\n\nChange-Id: I4c90293a29f67656deab901d72adeccb9be7cd80\n"
    },
    {
      "commit": "92a785785423b99cf903ce0e79d06fbf62ecf51a",
      "tree": "09553e0a28050395d2e1a9255af04d93949758f0",
      "parents": [
        "722992f7b63b5e2962aaba6119402c7b93deb2f4"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Apr 05 17:43:17 2021 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 08 04:52:33 2021 +0000"
      },
      "message": "Validate vdex checksums during dex2oat compilation\n\nIf the checksums from the vdex files that comes from the .dm archive\ndoes not match the input dex files, the compilation will fail.\n\nTest: gtest\nBug: 184291791\nChange-Id: I10db75b4381946d7f2b695ff317d0b4e897a32b0\n"
    },
    {
      "commit": "bdd9d71101edf4fd8220c18e28a7dccf8a72afda",
      "tree": "025f651b0b74f288dfc27557ce45ee482ca67104",
      "parents": [
        "a622235469655d645c048228b10909234602c0e8"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Apr 05 17:59:10 2021 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Apr 06 17:01:54 2021 +0000"
      },
      "message": "Add logs for bad .dm input in dex2oat\n\nTest: adb logcat -b events\nBug: 178055795\nChange-Id: Ifeacba4cccf048e437b1906cf1592b8c2608cce4\n"
    },
    {
      "commit": "ac57691c29ffa8a31d0b789492ee3f904c059f89",
      "tree": "928969620553619e0fede06c18967c182a4b32aa",
      "parents": [
        "9d393d52fe27199325c7c123533fbc513a8af454"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 31 11:16:22 2021 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 31 14:12:53 2021 +0000"
      },
      "message": "dex2oat: Do not crash on InitializeClass() exceptions.\n\nPreviously `ClassLinker::EnsureInitialized()` could have\nreturned with a pending exception even when initializing\nfields and parents was not allowed and the CompilerDriver\ndid not expect it, leading to a crash. Change the behavior\nto consistently suppress exceptions when initializing\nfields and/or parents is not allowed.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 184094466\nChange-Id: I6a8af8c1da792c946f8f52ed4513ab1f0ccf2c9f\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"
    }
  ],
  "next": "982ecedecd2326f9b28ee60a3feb56b299e1c2bc"
}
