)]}'
{
  "log": [
    {
      "commit": "0587b622f5b2dfa3fdaa73cef2dc2c18517b405e",
      "tree": "cd11c3b350346f9e10210fbaacb703104518f021",
      "parents": [
        "c2f43576c379db5ec366f357800cf7442b8ab849"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Apr 03 14:18:50 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Apr 03 15:23:27 2019 +0000"
      },
      "message": "Sync public.libraries.buildbot.txt to ART chroot directory.\n\nHave `art/tools/buildbot-sync.sh` overwrite the default\npublic.libraries.txt file with a smaller\none (`art/tools/public.libraries.buildbot.txt`) that contains only the\npublic libraries pushed to the chroot environment on device.\n\nThis is normally not needed for ART Buildbot targets (the ones defined\nin `device/generic/art`), as they use `PRODUCT_COPY_FILES` to install\n`art/tools/public.libraries.buildbot.txt` as\n`/system/etc/public.libraries.txt` on device. However this is needed\nfor other targets, as they normally install\n`system/core/rootdir/etc/public.libraries.android.txt` as\n`/system/etc/public.libraries.txt` on device.\n\nTest: ART chroot-based on-device testing using the master-art branch\nTest: ART chroot-based on-device testing using the master branch.\nBug: 124425036\nBug: 121117762\nChange-Id: Ib7a570344e26d448759a355a99a4a50089a0a3ce\n"
    },
    {
      "commit": "c2f43576c379db5ec366f357800cf7442b8ab849",
      "tree": "88f8eb65594251371e7a9e9e9ff6e8a6563eda0d",
      "parents": [
        "f59bc11bc0bd6c443d5350f24e4569f841e0beea"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Apr 03 12:56:14 2019 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Apr 03 15:21:44 2019 +0000"
      },
      "message": "Add native counterpart for VMRuntime.setProcessDataDirectory\n\nThis is used by the framework to pass the full path to app\u0027s data\ndirectory to ART, then used for storing anonymous vdex files.\n\nTest: compiles\nBug: 72131483\nChange-Id: I90de4b22f483a40f585f9b5583a14980b812f24b\n"
    },
    {
      "commit": "f59bc11bc0bd6c443d5350f24e4569f841e0beea",
      "tree": "6a78bf1a1db9ef2becbb7bb9f3313d27630dd97f",
      "parents": [
        "30167d24077495f7d4e701fbbbcfd458537f6a6e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Apr 03 10:29:29 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Apr 03 15:15:15 2019 +0000"
      },
      "message": "Couple of improvements in the jit zygote pass.\n\n- Handle the resolution stub.\n- In verbose mode, log the time to JIT compile.\n- Handle the case jit is disabled.\n- Don\u0027t look at methods that are in the jars located in the runtime module.\n\nBug: 119800099\nTest: m\nChange-Id: Ib12586cc65b3791e066e96ce7e36985cfb612059\n"
    },
    {
      "commit": "30167d24077495f7d4e701fbbbcfd458537f6a6e",
      "tree": "e01f4289dd8384f7846d6b9286444debf82a068a",
      "parents": [
        "4de9bb69107f5f194697e6c3279d2ca1887a8245"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Apr 03 14:30:45 2019 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Apr 03 15:12:46 2019 +0000"
      },
      "message": "Fix typo in 692-vdex-inmem-loader\n\nTypo meant an assert failed under --debuggable\n\nBug: 72131483\nTest: art/test.py -t 692 -b -r --host --debuggable\nChange-Id: Ic5c59a174987cf252a69dbbf5372bfc4bdfcc3e4\n"
    },
    {
      "commit": "4de9bb69107f5f194697e6c3279d2ca1887a8245",
      "tree": "7a2eb9436b8a407a375f3a96bbd23c358f771435",
      "parents": [
        "5dbd02a497f4bbdf33ae37e715159fe33594a02a"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Apr 03 13:06:17 2019 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Apr 03 15:11:28 2019 +0000"
      },
      "message": "Print allowed/denied in hiddenapi warning message\n\nThe error message when accessing hidden APIs currently contains only\nmethod/field signature, API list and access method, but fails to\nmention whether access was granted or denied. Add that information in.\n\nTest: manual\nChange-Id: Ice5ee448b6dc842f5f3f10fa8e0a59b8640abb7f\n"
    },
    {
      "commit": "5dbd02a497f4bbdf33ae37e715159fe33594a02a",
      "tree": "63aa67209bb528d56d416f7d57f2acf0e5703d70",
      "parents": [
        "2c5bcb873f086c3db4f633e620de31d53cedede5"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Apr 03 11:32:38 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Apr 03 12:49:37 2019 +0000"
      },
      "message": "Make couple of mterp function names start with lower-case.\n\nMost of our hand-written-assembly functions have lower-case name.\n\nTest: test.py -b --host --interpreter\nChange-Id: Ie1641dd77fcf772bc4c1f0d1896a7ce721f5d5a8\n"
    },
    {
      "commit": "2c5bcb873f086c3db4f633e620de31d53cedede5",
      "tree": "d9910806bb98962f5f7c0aa851066fa28b996d51",
      "parents": [
        "29885b3e215d1022c130abffbfc337a79833e20a"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Apr 03 11:14:34 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Apr 03 12:44:46 2019 +0000"
      },
      "message": "Support boot classpath checksum without image\n\nAdd special case to ImageSpace::GetBootClassPathChecksums to handle\nempty image space. In that case, we skip the image space part of the\nchecksum completely and print only the boot classpath \"tail\", which here\nare all the boot classpath dex files.\n\nThis fixes a DCHECK failure in 692-vdex-inmem-loader.\n\nTest: ./art/test/testrunner/run_build_test_target.py \\\n      art-interpreter-no-image\nBug: 72131483\n\nChange-Id: I3deb2c4704a010214c2f4287cc3010cb5fb450dd\n"
    },
    {
      "commit": "29885b3e215d1022c130abffbfc337a79833e20a",
      "tree": "6a3fb03d78837afd72bc74a926f3f7e2322f8deb",
      "parents": [
        "7126c5b47d34b9a4d6d7553b8ea48e5085ee6b41"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Apr 03 10:09:26 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Apr 03 12:22:54 2019 +0000"
      },
      "message": "Hide updatable-media package classes for app AOT compilation.\n\nTest: m\nBug: 122937705\nChange-Id: I1b26d23b6b5e0132c6893ac2901d3b56d0638027\n"
    },
    {
      "commit": "7126c5b47d34b9a4d6d7553b8ea48e5085ee6b41",
      "tree": "eeabacfcf1e75997c2c4755bb84ff63706eba46d",
      "parents": [
        "c088b2efe015d49f10597c515a7d749cb0856f84"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 05 00:02:51 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Apr 03 11:34:09 2019 +0000"
      },
      "message": "Preverify InMemoryDexClassLoader-loaded classes from vdex\n\nThis patch creates a new subclass of OatFile - OatFileBackedByVdex -\nwhich initializes OatDexClass instances using the verification info in\na vdex file created by a previous instance of the class loader.\nThe OatFile is not backed by an actual .oat file.\n\nBug: 72131483\nTest: art/tools/run-libcore-tests.sh\nTest: art/test.py -b -r -t 692 -t 693\nChange-Id: I3fd055abe17ee9739c07f2e2f4fc2543e4ec8c9e\n"
    },
    {
      "commit": "c088b2efe015d49f10597c515a7d749cb0856f84",
      "tree": "566fa3b2607299bc1af27c8853ec8eb51c6c501f",
      "parents": [
        "d355acfaf613d4020f1c2f4b526275c624fe887a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Apr 02 18:18:16 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Apr 03 10:34:28 2019 +0000"
      },
      "message": "Add support for flattened Runtime APEX to Make rule `standalone-apex-files`.\n\nAdjust the source of the Runtime APEX libraries copied to the\n/system/lib(64) directory sync\u0027d to the target, so that this rule\nworks both for non-flattened and flattened APEXes.\n\nTest: ART chroot-based on-device testing using the master-art branch\nBug: 121117762\nChange-Id: I9f796e58c22c6346d11416742ed8b81baa712c6a\n"
    },
    {
      "commit": "d355acfaf613d4020f1c2f4b526275c624fe887a",
      "tree": "c40094e3a866cdc27426c713108a67e5eda260b9",
      "parents": [
        "df1a7d458e3f4b5410562e7d86a3343155a44ce0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 21 17:09:40 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Apr 03 08:07:46 2019 +0000"
      },
      "message": "Clean up Object size related read barriers.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --interpreter\nTest: testrunner.py --host --interpreter --gcstress\nBug: 119486698\nChange-Id: I831838f230ebdd9e540462b2de56271895a01fad\n"
    },
    {
      "commit": "df1a7d458e3f4b5410562e7d86a3343155a44ce0",
      "tree": "c05da87410e3492824c66afa1652c37f6ddb7ea7",
      "parents": [
        "42d023445ae06a77777bce6fa99b457382d0f1a0"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Apr 02 14:47:24 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 02 23:46:40 2019 +0000"
      },
      "message": "Run libjdwp tests with coredump\u003dy\n\nTo aid in investigating b/70918330 run with coredump\u003dy. This will\ncause libjdwp to abort(3) when an error occurs. This should cause the\nruntime to dump a stack which we can use to determine the actual\nerror.\n\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003dhost\nBug: 70918330\nChange-Id: I4f1e1a9873e17661667dfcc1d632ea94b29957d2\n"
    },
    {
      "commit": "42d023445ae06a77777bce6fa99b457382d0f1a0",
      "tree": "81c8346da6658154479c9dee3a479a8ac1170dc6",
      "parents": [
        "91038d67ce011456176411e8f74ed5d2e2440ed3"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 02 13:52:50 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 02 22:15:54 2019 +0000"
      },
      "message": "Slightly increase XZ block-size.\n\nMake slightly bigger random-access blocks to save space.\n\nBug: 110133331\nChange-Id: I6192236b5094283854641d89be352d742fd2e936\n"
    },
    {
      "commit": "91038d67ce011456176411e8f74ed5d2e2440ed3",
      "tree": "0658f8c69b6e6d63b8a2ea66debaf2da79398df0",
      "parents": [
        "35a3f6a09931ee631a0377ee3ca98a7fb1f4f61d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 02 17:34:33 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 02 21:17:06 2019 +0000"
      },
      "message": "Don\u0027t abort for min/max/abs intrinsics, baseline use them.\n\nTest: test.py\nChange-Id: I7ba09ab8ca3848e03f34bc9fee708a1105d17dc4\n"
    },
    {
      "commit": "35a3f6a09931ee631a0377ee3ca98a7fb1f4f61d",
      "tree": "c3bbc93f5d7c5c74b49a03fc9a2609f7a918840e",
      "parents": [
        "3bfc694a4bcc9ef3de19b94a34701c76c6008071"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Mar 04 15:59:06 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Apr 02 19:20:14 2019 +0000"
      },
      "message": "Create vdex file for dex loaded with InMemoryDexClassLoader\n\nPrevious CL introduced a background verification thread for dex bytecode\nloaded with InMemoryDexClassLoader. Extend the logic to collect the\nresults of class verification into an instance of VerifierDeps and dump\nit into a vdex file in the app\u0027s data folder.\n\nThe background thread does not collect full VerifierDeps (e.g.\nassignability dependencies, etc), just a bit vector of whether a class\nwas successfully verified or not.\n\nThe vdex format is extended to include boot classpath checksums and the\nclass loader context it was created for. These are optional and\ncurrently left empty for regular vdex files.\n\nThe generated vdex files are treated as a cache with a limited capacity,\ncurrently capped at 8 files. The least recently used file (in terms of\natime reported by stat()) is unlinked if the cache is full and a new\nvdex is about to be generated.\n\nBug: 72131483\nTest: art/tools/run-libcore-tests.sh\nTest: art/test.py -b -r -t 692 -t 693\nChange-Id: I26080d894d34d8f35f00c7925db569f22f008d2c\n"
    },
    {
      "commit": "3bfc694a4bcc9ef3de19b94a34701c76c6008071",
      "tree": "d56c745462a0837e0154869be68011170f6b7846",
      "parents": [
        "c74ccb8a5ff4cacda6d1ed95f7676f00cc2dd269"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Apr 02 08:40:41 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Apr 02 18:47:17 2019 +0000"
      },
      "message": "Avoid resolving startup const strings without a profile\n\nWithout a profile, the behavior should be to resolve no strings instead\nof resolving them all.\n\nBug: 127609587\nTest: test-art-host\nChange-Id: I374ce60f2a731fd0a561226999e9ce5a6ac2c2e4\n"
    },
    {
      "commit": "c74ccb8a5ff4cacda6d1ed95f7676f00cc2dd269",
      "tree": "ec9c6802984af94ac48e382a2df04f6e6939cfeb",
      "parents": [
        "21a6ec5a5e9d392e33e4febffaa581da4d4855f2"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Feb 19 18:39:58 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Apr 02 16:43:41 2019 +0000"
      },
      "message": "Remove our custom elf.h header.\n\nIt tends to clash with the system header, which we can use instead.\n\nBug: 73344075\nTest: Generated oat files on host are identical.\nChange-Id: I12db1dd9e9ec039d7c157650dc6cb61fe6a2524a\n"
    },
    {
      "commit": "21a6ec5a5e9d392e33e4febffaa581da4d4855f2",
      "tree": "f15a490e54d1076765c558583dc0447ce4e60952",
      "parents": [
        "9298875403a470320c7e6a7731522f78583ca124"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Mar 28 10:55:50 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 02 16:39:07 2019 +0000"
      },
      "message": "ART: Add VLOG to GenericJNI\n\nAdd a VLOG(third_party_jni) that details the call, that is, print\nthe Java method and the target\u0027s address.\n\nBug: 128869974\nTest: m test-art-host\nChange-Id: I335115924c0f040d939f3bb55237f7e253b7a549\n"
    },
    {
      "commit": "9298875403a470320c7e6a7731522f78583ca124",
      "tree": "b6b4881b535ba5a0c1ec885f17bc06680fb7cc0f",
      "parents": [
        "331a5e101313838189933399b2017305493f9f58"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Mar 28 22:40:40 2019 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Apr 02 16:39:02 2019 +0000"
      },
      "message": "Add filegroup for sigchainlib version scripts\n\nThe sigchainlib version scripts are used by app_process, export\nthem as filegroups.\n\nTest: m app_process\nChange-Id: I536592afbaa98bf1e06cfb86f478ef5d612430cb\n"
    },
    {
      "commit": "331a5e101313838189933399b2017305493f9f58",
      "tree": "5a8f391ff9e36db8965f01603e15834c800b5fc5",
      "parents": [
        "4080b8febed8b82957274882a96b2a7d8625c32e"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Apr 01 22:46:16 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Apr 02 16:31:01 2019 +0000"
      },
      "message": "Revert^2 Verify InMemoryDexClassLoader classes in a background thread\n\nWhen dex bytecode is loaded using InMemoryDexClassLoader, automatically\nspawn a background thread which performs bytecode verification on every\nclass.\n\nThis reverts commit b4bb63aa4be80722643611fc931976b3544f14b5. This CL\nfixes a previous issue where runtime threads are not allowed to load\nclasses in debuggable mode.\n\nBug: 72131483\nChange-Id: Icdeb5be2b33ef55675e3a23886e71ce3b4b02f43\nTest: art/tools/run-libcore-tests.sh\nTest: art/test.py -b -r -t 692\n"
    },
    {
      "commit": "4080b8febed8b82957274882a96b2a7d8625c32e",
      "tree": "c1788f345c17889e9c1b539ceb9ad094c0a12a1d",
      "parents": [
        "f421a903a85c4fd6bb729cb52f402042382ef017"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Apr 02 13:58:04 2019 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Apr 02 15:14:17 2019 +0000"
      },
      "message": "Veridex: Explicitly enable Darwin target\n\nFixes missing build target for out/host/darwin-x86/veridex.\n\nBug: 73344075\nBug: 129400556\nTest: ssh mac \u0026\u0026 . build/envsetup.sh \u0026\u0026 make -j12 PRODUCT-sdk-sdk dist sdk_repo\nTest: m out/host/darwin-x86/veridex\nChange-Id: I9cf3c5e6c4d1ddc6cf970444ec3c0ec335cfc0b5\n"
    },
    {
      "commit": "f421a903a85c4fd6bb729cb52f402042382ef017",
      "tree": "a3ddbe7bab7561def9948b684b15f1bbd6faa836",
      "parents": [
        "42edf775e053f57bb8ca7913541f72af702b0162"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 01 15:51:18 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Apr 02 15:05:32 2019 +0000"
      },
      "message": "imgdiag: Change CHECK_NE() to LOG(ERROR).\n\nWe\u0027ve seen enough flakes, so reduce the spam while\nwe investigate.\n\nTest: imgdiag_test\nBug: 123852774\nChange-Id: Ia8017f93e23d73c8393588c529b1fa9f0a3f88db\n"
    },
    {
      "commit": "42edf775e053f57bb8ca7913541f72af702b0162",
      "tree": "ca4b01cd0de0d35984fefd6fcc8bbdf6dd1457fe",
      "parents": [
        "ddcdb9c0a45e2265dab4617b95b3b175779ee388"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Apr 01 20:22:09 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Apr 02 13:19:31 2019 +0000"
      },
      "message": "We no longer depend on libutils.\n\nTest: art/build/apex/runtests.sh (on aosp_taimen, aosp_cf_x86, hikey64_only)\nBug: 124293228\nChange-Id: Id463ed6f1b4bb05462fd3619bce65e3c25b07ce6\n"
    },
    {
      "commit": "ddcdb9c0a45e2265dab4617b95b3b175779ee388",
      "tree": "622efa202b7fe0a691cb68319afd46dab4f0d07f",
      "parents": [
        "9b195cc7fc2bc81feb29fd8431a9f67204db1054"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 02 09:56:33 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 02 12:27:27 2019 +0000"
      },
      "message": "Add another failure for libcore/gcstress/debug.\n\nTest: run-libcore-tests.sh\nChange-Id: Ic7077e0701326c604ec2dfaec397efaaac7c71fb\n"
    },
    {
      "commit": "9b195cc7fc2bc81feb29fd8431a9f67204db1054",
      "tree": "a64255fe384de8ea6da67862aaf505cc495b92cf",
      "parents": [
        "58412b1f6c6c1fb1f212dd4e2cb442541fc91df5"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 02 08:29:00 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 02 11:38:05 2019 +0000"
      },
      "message": "Fix arm32 code generator when used with baseline compilation.\n\nA shift with zero can happen in baseline as we don\u0027t run\ninstruction simplification.\n\nAlso move baseline testing to AOT to catch such regressions.\n\nTest: test.py --baseline\nChange-Id: I9fa7af8e058135688ec44d907da7a6da27a6311e\n"
    },
    {
      "commit": "58412b1f6c6c1fb1f212dd4e2cb442541fc91df5",
      "tree": "d0da00907ee46faec095c9f2bd62b83da3d99000",
      "parents": [
        "dfc0de7696a50a9aeee95dcf74dac036e3334314"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 01 13:26:34 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Apr 02 07:57:27 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify DexCache.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: Ic4747928255afca61aca6802e7fec0585c6c1226\n"
    },
    {
      "commit": "dfc0de7696a50a9aeee95dcf74dac036e3334314",
      "tree": "20a6edd33cca852f8e65ce8d20a85949b566904c",
      "parents": [
        "9ef308da0ea8d1df2edf65d4957599fafcc56aeb"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 01 10:57:55 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Apr 02 07:57:27 2019 +0000"
      },
      "message": "Partially ObjPtr\u003c\u003e-ify Object, fix stale ref in test.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: I0c0bc669c0ab8d99185e662a2fec16f32a42a0a2\n"
    },
    {
      "commit": "9ef308da0ea8d1df2edf65d4957599fafcc56aeb",
      "tree": "de58aeef64d8657cb2026fd34998a76394ba4014",
      "parents": [
        "99c0795f715ae96ba90bd7a37032d0dc7bdad8c2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Mar 28 11:06:26 2019 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Apr 01 13:41:48 2019 -0700"
      },
      "message": "ART: Forbid the zygote to load code outside of system\n\nProtect the window between runtime creation and forking.\n\nBug: 129454856\nTest: m test-art-host\nTest: Device boots\nTest: manual\nChange-Id: I6108b4196235cb2a2ede52e9d9e3450afe78f90e\n"
    },
    {
      "commit": "99c0795f715ae96ba90bd7a37032d0dc7bdad8c2",
      "tree": "568e1c0f9f85ff2742f2bdfce99929aeaaa27f71",
      "parents": [
        "b4bb63aa4be80722643611fc931976b3544f14b5"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Mar 30 17:43:55 2019 +0000"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Apr 01 20:34:51 2019 +0000"
      },
      "message": "Revert^4 \"Disable check that no oat libraries are loaded.\"\n\nThis reverts commit 8b5af2c1fb1f3b54ec4eb8c3188a7f7105466b6d.\n\nReason for revert: Fix capture of image files.\n\nBug: 128529256\nChange-Id: I55e7ee178695358d5f3e19c0d0641bcaaa3fe355\nTest: m test-art-host\n"
    },
    {
      "commit": "b4bb63aa4be80722643611fc931976b3544f14b5",
      "tree": "7982bd7e79474b24f8f258efec3ac64328b34d7e",
      "parents": [
        "71d614f12ad6da2f15e835e22fe577b2d1d86bb0"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Apr 01 19:38:10 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Apr 01 19:38:48 2019 +0000"
      },
      "message": "Revert \"Verify InMemoryDexClassLoader classes in a background thread\"\n\nThis reverts commit d592dbe1e2b09079382713220b2ff59f02db1859.\n\nReason for revert: art buildbots crashing\n\nChange-Id: Ida6bb79cb498e708df5c535edc16e4fe9875442c\n"
    },
    {
      "commit": "71d614f12ad6da2f15e835e22fe577b2d1d86bb0",
      "tree": "84184197e8e1502d6374747923e2c9fab8a23032",
      "parents": [
        "d592dbe1e2b09079382713220b2ff59f02db1859"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 01 15:19:40 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 01 17:35:16 2019 +0000"
      },
      "message": "Fix imgdiag after ObjPtr\u003c\u003e-ify Object::As*().\n\nTest: imgdiag_test\nBug: 31113334\nChange-Id: I2d6138e2db79a84fbac8b1cd687e0a2f5da04d69\n"
    },
    {
      "commit": "d592dbe1e2b09079382713220b2ff59f02db1859",
      "tree": "0782c75d713200b1e99dee9f97b4898612b3fee3",
      "parents": [
        "0a20607d671bf001043ccb0cf156db16b4fc6bed"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Mar 01 22:25:31 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Apr 01 15:54:39 2019 +0000"
      },
      "message": "Verify InMemoryDexClassLoader classes in a background thread\n\nWhen dex bytecode is loaded using InMemoryDexClassLoader, automatically\nspawn a background thread which performs bytecode verification on every\nclass.\n\nBug: 72131483\nTest: art/tools/run-libcore-tests.sh\nTest: art/test.py -b -r -t 692\nChange-Id: Iad54f510de02cd073e68d775d34b7dd5bdef304e\n"
    },
    {
      "commit": "0a20607d671bf001043ccb0cf156db16b4fc6bed",
      "tree": "11f6e1d1e762f2708712cf120235ca1241d5f204",
      "parents": [
        "84a32cd944102f71bb9d532c8b3d35c6c1bbce92"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Mar 28 12:29:22 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Apr 01 15:37:30 2019 +0000"
      },
      "message": "Remove ART dependence on property debug.allocTracker.stackDepth\n\nAdded VMDebug API to set this property. It will be called from framework\ncode.\n\nTest: test-art-host\nBug: 37291459\n\nChange-Id: I832a013fc8685bf063809e9394e0524bd9cd422e\n"
    },
    {
      "commit": "84a32cd944102f71bb9d532c8b3d35c6c1bbce92",
      "tree": "5954b678ca47cde2579c15ad5d503c589e1446a2",
      "parents": [
        "023c2181ee90ee6ac322c870f2565f405b8ea349"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Mar 29 16:39:46 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Apr 01 12:10:32 2019 +0000"
      },
      "message": "Exclude internal dependencies ASAN might add.\n\nThis required extending the superfluous files check to handle glob patterns.\n\nThis also corrects a bug in check_no_superfluous_files that caused it to not\ncheck directories correctly for the host apex (due to trailing \u0027/\u0027 in the\ncall to HostApexProvider.read_dir), so a few missing entries are added\nthere.\n\nBug: 124293228\nTest: art/build/apex/runtests.sh (with and without SANITIZE_TARGET/SANITIZE_HOST).\nChange-Id: I83030b5b696fd80f42dd8722737b02fdf3a4089d\n"
    },
    {
      "commit": "023c2181ee90ee6ac322c870f2565f405b8ea349",
      "tree": "a85cb2dd4aa24c136e9bd1e26acc77e68e702a15",
      "parents": [
        "93d339d9b2949ca85d031bb9ebb7a0612b095fa8"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Mar 28 15:52:32 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Apr 01 12:10:32 2019 +0000"
      },
      "message": "Clean up APEX library lists.\n\nMake it more clear why they are listed, and sort lists for maintenance. This\nmostly reorders lines, but also removes a few libraries that are pulled in\nby dependencies and don\u0027t need to be mentioned explicitly. There should be\nno functional differences.\n\nTest: art/build/apex/runtests.sh\nBug: 124293228\nChange-Id: I5bfb68892a5cbf77654af253c3b1efec034c16e2\n"
    },
    {
      "commit": "93d339d9b2949ca85d031bb9ebb7a0612b095fa8",
      "tree": "d0793a9fe9df196398ca523c4a57a0ed18f107e4",
      "parents": [
        "bdc93b47e2e7e8f17413669e03bc461d259d16f6"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Mar 27 09:56:45 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Apr 01 10:26:42 2019 +0000"
      },
      "message": "Revert^2: InMemoryDexClassLoader in ClassLoaderContext follow-up\n\nAddress follow-up comments on Ic64065819018a1e56dee0f65405d26beb8fd7bbd.\nIn particular, the classpath elements of IMC are replaced with\n\"\u003cunknown\u003e\" magic value to make it clear that the dex location is bogus,\nand a clarifying comment is added.\n\nPreviously this CL would fail on target because IMC classpath was not\nbeing replaced with \"\u003cunknown\u003e\" and context matching failed. This was\nonly a problem on target because\nOatFile::ResolveRelativeEncodedDexLocation ignores non-absolute\nlocations on host.\n\nThis reverts commit 93d99f3665cbd890509f4c707e1a62c5f26d320e.\n\nTest: m test-art-gtest-class_loader_context_test\nBug: 72131483\nChange-Id: I27cbfa69c24d412cc1b6bcce88218cc95e324ef5\n"
    },
    {
      "commit": "bdc93b47e2e7e8f17413669e03bc461d259d16f6",
      "tree": "bd1c632196a437e90d012475afa83adf614be538",
      "parents": [
        "f52d92fce224c86491d9b0fd6fca805564119426"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 29 16:12:04 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 01 09:37:59 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify StackTraceElement and ClassLoader.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: I457eeda55bbfb905dd2de0abd68451ab42ef9c1f\n"
    },
    {
      "commit": "f52d92fce224c86491d9b0fd6fca805564119426",
      "tree": "fbf38f272a980e965627918d9dc6bbb536395c00",
      "parents": [
        "e660f7232a19a2c173f562b8e0987755a78ee298"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 29 12:33:02 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 01 09:37:59 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify Monitor/-Pool.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nBug: 31113334\nChange-Id: I2d2ebc5ef56e73e5678e0cfcd84c479611dfcca8\n"
    },
    {
      "commit": "e660f7232a19a2c173f562b8e0987755a78ee298",
      "tree": "3ac5b79d09cfc440026890793ed5046beecf2412",
      "parents": [
        "d19ee6340949a24950e07f694e362aa337659258"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 29 13:09:28 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Apr 01 09:36:13 2019 +0000"
      },
      "message": "Tool for boot class path args for ART host tools.\n\nTest: host_bcp.sh /system/framework/arm64/boot.oat\nTest: host_bcp.sh $ANDROID_PRODUCT_OUT/system/framework/arm64/boot.oat\nBug: 128990084\nChange-Id: I315462afa4848b92d32fdf4f11bac941a2e93768\n"
    },
    {
      "commit": "d19ee6340949a24950e07f694e362aa337659258",
      "tree": "34d2f6368358533743e42adc85384e7177255fea",
      "parents": [
        "8b5af2c1fb1f3b54ec4eb8c3188a7f7105466b6d"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Mar 29 23:05:59 2019 -0700"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Apr 01 09:31:10 2019 +0000"
      },
      "message": "De-flake 1336-short-finalizer-timeout\n\nRemove the message that tends to get reordered.\n\nBug: 129597278\nTest: Treehugger\nChange-Id: I7bdfc99eee0eda5dca9a42bb38008beb8e6ff00a\n"
    },
    {
      "commit": "8b5af2c1fb1f3b54ec4eb8c3188a7f7105466b6d",
      "tree": "d17a39d4016aac38abf0699269c2532b4c4e5376",
      "parents": [
        "e9fa8db2edd469c5dc92dd42ab0e9e80d345dc1f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Mar 30 17:39:33 2019 +0000"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Mar 30 17:39:33 2019 +0000"
      },
      "message": "Revert^3 \"Disable check that no oat libraries are loaded.\"\"\"\n\nThis reverts commit e9fa8db2edd469c5dc92dd42ab0e9e80d345dc1f.\n\nReason for revert: Fails test 677-fsi on target\n\n Abort message: \u0027Check failed: LocationIsOnSystem(oat_file-\u003eGetLocation().c_str()) /data/art-test/core-core-libart-testdex.oat\u0027\n\nChange-Id: I7045283ae8af24218798a42e7f66ca8ab4ca3dd2\n"
    },
    {
      "commit": "e9fa8db2edd469c5dc92dd42ab0e9e80d345dc1f",
      "tree": "35efc2ff7e6c4bc55b18707ac6f174bf3963945d",
      "parents": [
        "b215557206a39d3d2373c4ba7095bdae6a705144"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Fri Mar 29 21:23:43 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 29 23:57:46 2019 +0000"
      },
      "message": "Revert \"Revert \"Disable check that no oat libraries are loaded.\"\"\n\nThis reverts commit d133917ed51afb0c57c9512fddab7c68a3a36cfe.\n\nReason for revert: reland fix\nBug: 128529256\n\nChange-Id: I950bc2f7e694dfcfe28e3379727079dde4ec7627\n"
    },
    {
      "commit": "b215557206a39d3d2373c4ba7095bdae6a705144",
      "tree": "d17a39d4016aac38abf0699269c2532b4c4e5376",
      "parents": [
        "184832a46b21ff3ebe54f50f21dd71f2292d8943"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed Mar 27 14:25:53 2019 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Mar 29 23:49:27 2019 +0000"
      },
      "message": "Add FinalizerTimeoutMs argument, and respect it\n\nAdd -XX:FinalizerTimeoutMs commandline argument, and make it\navailable for libcore.\n\nAdd 1336-short-finalizer-timeout to test it. Blacklist it for\nthe cases in which 030-bad-finalizers was known not to work,\nsince it\u0027s largely a clone. Disable it for gcstress, since timeout\nmargins are tight.\n\nIncrease timeout in 030-bad-finalizers due to gcstress issues.\n\nUse the result in 004-NativeAllocations and 030-bad-finalizers\nto avoid timeouts. Make 004-NativeAllocations more proactive in\navoiding timeout.\n\nThis is intended as a replacement for aosp/836642 .\n\nBug: 129350738\nBug: 68792448\nTest: Boot AOSP, TreeHugger\nChange-Id: I9aef9c9bacb7e8d851bd2c879ed9fb5b596abc60\n"
    },
    {
      "commit": "184832a46b21ff3ebe54f50f21dd71f2292d8943",
      "tree": "76c6e9f5ded8c47be6a606604b0393a6648ad4f4",
      "parents": [
        "39402548017c99f9b33afaa851f412371013e911"
      ],
      "author": {
        "name": "Ryan Tseng",
        "email": "hinoka@google.com",
        "time": "Thu Mar 28 16:18:47 2019 -0700"
      },
      "committer": {
        "name": "Eric Foo",
        "email": "efoo@google.com",
        "time": "Fri Mar 29 22:03:51 2019 +0000"
      },
      "message": "[cr-buildbucket] Allow luci-migration to bump build number\n\nChange-Id: I0c0a97e78bc11adc93a3746019b4cca3ec8651b5"
    },
    {
      "commit": "39402548017c99f9b33afaa851f412371013e911",
      "tree": "80c4d53cb7ae12ab9f4800cb358e53d5109593da",
      "parents": [
        "2fde9bdc252e209d722f83410f2ced42ab73e8a4"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Sun Mar 24 02:47:16 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 29 18:18:00 2019 +0000"
      },
      "message": "Modernise code to use override specifier\n\nGenerated by clang-tidy, with IgnoreDestructors option enabled.\n\nTest: m checkbuild\nBug: 116509795\nChange-Id: I5dafa10c2cf605165581b8cf7dd2633ed101ed65\n"
    },
    {
      "commit": "2fde9bdc252e209d722f83410f2ced42ab73e8a4",
      "tree": "026bd8b04523b8c6c4274b06cb9a4d1fd6b4018b",
      "parents": [
        "67f0e9c167c9dcf5add8afe62760d3770546cd73"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Mar 28 15:40:11 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Mar 29 15:28:36 2019 +0000"
      },
      "message": "Add test 980 to knownfailures for no-image + jit\n\nThis configuration seems to be flaky for unknown reasons. It appears\nthere is some sort of race between the jit and stack-walking that\nleads to us being unable to find the JIT compiled transition frames in\nsome situations.\n\nTest: none\nBug: 73333076\nChange-Id: I4e2a2f2fc4ec935edd0cd832dec6db739130d176\n"
    },
    {
      "commit": "67f0e9c167c9dcf5add8afe62760d3770546cd73",
      "tree": "752f441458e0d85b0f9e1e4a2c981664e71242c0",
      "parents": [
        "4617d5823c8e7841fed813b3b9c72664d7fd4dc6"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 29 14:00:12 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 29 14:48:18 2019 +0000"
      },
      "message": "ART: Fix stale reference use in debugger.\n\nTest: run-jdwp-tests.sh --mode\u003dhost --variant\u003dX32 --debug\nBug: 31113334\nChange-Id: I48d137b0fe87b01ed982a4275d1b558fd6e23a4f\n"
    },
    {
      "commit": "4617d5823c8e7841fed813b3b9c72664d7fd4dc6",
      "tree": "9eafbee06717e02a2c4acd5d7ce1e6601955356e",
      "parents": [
        "d7e9bbf092b5a61048358fd54183526ef12284af"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 28 13:48:31 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 29 09:50:00 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify mirror::Object::As*(), fix stale refs in test.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: Ia04c4996f5cbfa1f26acbadcd747342c57b1aac3\n"
    },
    {
      "commit": "d7e9bbf092b5a61048358fd54183526ef12284af",
      "tree": "620cee17c499bdb23217224b0b1332408d725a6e",
      "parents": [
        "bb206de72135271e66e58576b1196f3e08d5b6fd"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 28 13:18:57 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 29 09:50:00 2019 +0000"
      },
      "message": "Clean up explicit conversions to ObjPtr\u003c\u003e.\n\nAdd an ObjPtr\u003c\u003e::DownCast() overload that takes a plain\npointer and remove unnecessary calls to MakeObjPtr(),\nusually preceding DownCast(). Move the MakeObjPtr() to\ncommon_art_test.h .\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: I2a243b6d8f3b2e773396dfc53b659c5f7d9ea44a\n"
    },
    {
      "commit": "bb206de72135271e66e58576b1196f3e08d5b6fd",
      "tree": "3ecbb781735b26d43628cf0f08673ce9908d69fd",
      "parents": [
        "5fdd1e84e0e3c4da0e6beac66a5cdd81c34bf399"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 28 10:30:32 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 29 09:50:00 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify ClassExt.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nBug: 31113334\nChange-Id: If5fe3b9f6e10549b5ca3f395b0c83531cd3ba7a3\n"
    },
    {
      "commit": "5fdd1e84e0e3c4da0e6beac66a5cdd81c34bf399",
      "tree": "01c5ddd5b9240cc6c323c5a381301fc1d0b0300b",
      "parents": [
        "5a832258726e3dfa148a1ddf63e987ca0cbab17a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 29 09:02:18 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 29 09:23:55 2019 +0000"
      },
      "message": "Add more host/debug/gcstress expected timeouts.\n\nTest: run-libcore-tests\nChange-Id: I3f1a5d526c8ef43705c5079a4e97ee04431c191b\n"
    },
    {
      "commit": "5a832258726e3dfa148a1ddf63e987ca0cbab17a",
      "tree": "3a8f5deece4fe5992a3bb79d362b59d9ddfdf754",
      "parents": [
        "08417350b78b975a7fed36d3360e0f926abae385"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Mar 28 07:31:16 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Mar 28 16:24:36 2019 +0000"
      },
      "message": "Address comments for aog/934603\n\nTest: TH\nChange-Id: I6b54cfbaa49d320c3c9e97ebaeeb97e285f9bf43\n"
    },
    {
      "commit": "08417350b78b975a7fed36d3360e0f926abae385",
      "tree": "f3add4d2cce103a5015ad46b5b7c4635def84f1b",
      "parents": [
        "c17ace2f1c9bac9f54f4b201f850f32389f811ce"
      ],
      "author": {
        "name": "Nikita Ioffe",
        "email": "ioffe@google.com",
        "time": "Thu Mar 28 12:47:38 2019 +0000"
      },
      "committer": {
        "name": "Nikita Ioffe",
        "email": "ioffe@google.com",
        "time": "Thu Mar 28 15:15:25 2019 +0000"
      },
      "message": "Use tidy_checks_as_errors blueprint field instead of manually setting --warnings-as-errors\n\nTest: m\nChange-Id: I892ac8e65cdc3d9aacd03d86b9e758a495c76662\n"
    },
    {
      "commit": "c17ace2f1c9bac9f54f4b201f850f32389f811ce",
      "tree": "59dd9e69dcb0eabddae8e6fc2699d09ca8d3a738",
      "parents": [
        "362e9f24de01c0caf71fcc8424896649cc74e0bb"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Mar 18 21:47:31 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Mar 28 11:52:51 2019 +0000"
      },
      "message": "Rename various functions for consistency and clarity.\n\nThe .so and .jar suffixes are dropped from all library check calls to make\nthose lines sort in the same order as e.g. in the Android.bp file (the\nsorting itself will go into a follow-up CL).\n\nTest: art/build/apex/runtests.sh\nBug: 124293228\nChange-Id: I0ac824524f73e43a8e86edb199215c440178ce71\n"
    },
    {
      "commit": "362e9f24de01c0caf71fcc8424896649cc74e0bb",
      "tree": "dbccdf5cc44b6dac1499cce64a19f1a4f4d62001",
      "parents": [
        "d133917ed51afb0c57c9512fddab7c68a3a36cfe"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Mar 28 09:30:20 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 28 11:23:02 2019 +0000"
      },
      "message": "ART: Update art-tools modules for host\n\nUse LOCAL_IS_HOST_MODULE rather than LOCAL_HOST_REQUIRED_MODULES. The\nlatter appears to imply a target module build with the listed host\nmodules dependencies.\n\nFixes Mac build breakage.\n\nBug: 129400556\nTest: \"python frameworks/rs/build_rs.py\" on Mac\nTest: m -j100 art-tools (and check out)\nChange-Id: I4a8fb0c52cf7dc241543ca7e67be69da209ce638\n"
    },
    {
      "commit": "d133917ed51afb0c57c9512fddab7c68a3a36cfe",
      "tree": "897612aed0950c09945cb3edb91ad966ac0d6ed8",
      "parents": [
        "0984e483c1b8033250a32b11f112ae3e65eef39b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 28 09:26:01 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 28 09:27:04 2019 +0000"
      },
      "message": "Revert \"Disable check that no oat libraries are loaded.\"\n\nThis reverts commit 097d976411caec0b72194523c73e30ebbece14b0.\n\nBug: 128529256\n\nReason for revert: Breaks FSI\n\nChange-Id: I44acd5ffafd5a29941e3ad5265a03fc78cd29369\n"
    },
    {
      "commit": "0984e483c1b8033250a32b11f112ae3e65eef39b",
      "tree": "267b4f59818e5080dff726adf25e5b5710111377",
      "parents": [
        "621c8807f38fedab56ea701370a18df123177f67"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 27 16:41:41 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 28 09:22:07 2019 +0000"
      },
      "message": "Style cleanup for ObjPtr\u003c\u003e-ify changes.\n\nReplace \"ObjPtr\u003c.\u003e const\" with \"const ObjPtr\u003c.\u003e\".\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: I5a1c080bc88b091e15ee9eb0bb1ef6f6f290701c\n"
    },
    {
      "commit": "621c8807f38fedab56ea701370a18df123177f67",
      "tree": "058a0b3e4157ef726f909b0efe14965a7e336513",
      "parents": [
        "0eefb9bad0b098e892f977694ad1207f3ef42c90"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 27 16:18:18 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 28 09:22:07 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify mirror::CallSite.\n\nAnd remove unused function CallSite::Create().\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --interpreter\nBug: 31113334\nChange-Id: I936cda76543fb79edda1c2cc8671b0684fb9f08a\n"
    },
    {
      "commit": "0eefb9bad0b098e892f977694ad1207f3ef42c90",
      "tree": "9c1abc5959eaf2d6a3a420369ba642381febca04",
      "parents": [
        "5aead700219d9c9fc05524d5d72dc32cb1807c61"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 27 15:04:31 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 28 09:22:07 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify mirror::Field and mirror::Executable.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: Ib536df95543cb7240a5816bef019391bb90e6369\n"
    },
    {
      "commit": "5aead700219d9c9fc05524d5d72dc32cb1807c61",
      "tree": "84dac95f7627fefc8fd8d3dfbd5d6baf5d1e1a01",
      "parents": [
        "4f1e3288a845b91a5ce369865ec7e249f4f94622"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 27 11:00:36 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Mar 28 09:22:07 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify method/var handles, fix stale refs in tests.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --interpreter\nBug: 31113334\nChange-Id: I89ea84f7970899643e437161b598d3232a182e98\n"
    },
    {
      "commit": "4f1e3288a845b91a5ce369865ec7e249f4f94622",
      "tree": "58dadb1c056709e85481197bf61e61818d69c4db",
      "parents": [
        "ad7fa6ec6bfe4b04d3985ad896274a4511fcfdef"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Mar 27 14:41:32 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Mar 28 01:48:49 2019 +0000"
      },
      "message": "Stop verifying barrier count for thread dumping\n\nFor ANRs, some threads may not pass through the barrier. Prevent\na crash for this case.\n\nThis behavior is consistent with checks in the dump code.\n\nBug: 128490284\nTest: test-art-host\nChange-Id: I5dc681d00c29d20755020c35a18fb9912cc08d57\n"
    },
    {
      "commit": "ad7fa6ec6bfe4b04d3985ad896274a4511fcfdef",
      "tree": "d8451f6122a2a331092d26995544c5c7a9fbdbcc",
      "parents": [
        "097d976411caec0b72194523c73e30ebbece14b0"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Mar 27 11:24:29 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Mar 28 01:45:58 2019 +0000"
      },
      "message": "Delete alloc tracker properties\n\nThese properties are not officially documented and should not\nbe supported.\n\nDeleted:\ndalvik.vm.allocTrackerMax\ndalvik.vm.recentAllocMax\n\nLeft debug.allocTracker.stackDepth since it is still used in a few\nplaces.\n\nBug: 37291459\nTest: test-art-host\nChange-Id: I6755ea769cf9dcd2872e216cb78161ca7ad38e99\n"
    },
    {
      "commit": "097d976411caec0b72194523c73e30ebbece14b0",
      "tree": "d2d5c789903adc4303d54a4c4c5a1d394851260b",
      "parents": [
        "6f342dd00e7423bd29b79607df655e44b654166e"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon Mar 18 21:17:23 2019 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Wed Mar 27 22:59:46 2019 +0000"
      },
      "message": "Disable check that no oat libraries are loaded.\n\nThis invariant no longer holds when libraries are preloaded by zygote.\n\nTest: boot\nBug: 128529256\n\nChange-Id: I12fbc65f948b93f9dfe35e5cce8c83ab911af5f9\n"
    },
    {
      "commit": "6f342dd00e7423bd29b79607df655e44b654166e",
      "tree": "cdd370f1e91e4e77888f5103db5a257f08554984",
      "parents": [
        "2bcea184e4934ee6681837c9e80660cfac2166c6"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Mar 27 17:15:42 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 27 21:38:38 2019 +0000"
      },
      "message": "Revert^2 \"Only extract zipapex once for linux-bionic-zipapex tests\"\n\nFixed issue that caused main-thread exception. Changed to using the\npython3.4 compatible subprocess API.\n\nThis reverts commit c26d9e3bffa8757f8f9bcc8798cc88f57136049e.\n\nReason for revert: Fixed issue causing tests to not run.\n\nTest: ./test/testrunner/run_build_test_target.py art-linux-bionic-x64-zipapex\nChange-Id: If6a2246a3f039411011e99cce692d5a4ff1d0e47\n"
    },
    {
      "commit": "2bcea184e4934ee6681837c9e80660cfac2166c6",
      "tree": "49e0aef465dcd45a92104d5b86481297d278bd05",
      "parents": [
        "4b63d97098df972fb6c34f1a21615982a926af95"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Mar 27 14:48:04 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 27 19:42:37 2019 +0000"
      },
      "message": "Add another ASAN variant of libclang_rt that is causing test failure.\n\nThis is just a short term fix while figuring out how to handle these\nlibraries. If they should be in the apex then we should match them with a\nglob pattern instead.\n\nBug: 124293228\nTest: art/build/apex/runtests.sh\nChange-Id: I2e92c570a717e71708e9e57a0e2b728f17d8c5c1\n"
    },
    {
      "commit": "4b63d97098df972fb6c34f1a21615982a926af95",
      "tree": "484bbbcfb55aa99f47b02d2fd10da6fb6e356487",
      "parents": [
        "c26d9e3bffa8757f8f9bcc8798cc88f57136049e"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Mar 01 14:19:15 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 27 17:12:26 2019 +0000"
      },
      "message": "Remove links to libart(d).so from the platform namespace.\n\nThey are not needed since the binaries and relevant exported libraries have\nmoved to the Runtime APEX.\n\nTest: Flash and boot\nTest: atest CtsJniTestCases CtsJdwpTestCases\nBug: 119867084\nChange-Id: If3caef3881601a4a8914e3771afea2f756a722ce\n"
    },
    {
      "commit": "c26d9e3bffa8757f8f9bcc8798cc88f57136049e",
      "tree": "5b1a99a9bee8bc2f120b5d286cd9431df762ee95",
      "parents": [
        "d53f60658fb0d28279919cc856a55e4b6504dabe"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Mar 27 17:06:32 2019 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Mar 27 17:09:14 2019 +0000"
      },
      "message": "Revert \"Only extract zipapex once for linux-bionic-zipapex tests\"\n\nSomehow an exception in the main thread doesn\u0027t cause testrunner.py\nto exit non-zero.\n\nThis reverts commit 912cee8ab1260c5022ddb4862620d6ed17658de7.\n\nTest: None\n\nReason for revert: Python version incompatibility\n\n[\u0027/usr/local/google/buildbot/src/googleplex-android/master-art-host/art/test/testrunner/testrunner.py\u0027, \u0027--run-test-option\u003d--bionic\u0027, \u0027--runtime-zipapex\u003d/usr/local/google/buildbot/src/googleplex-android/master-art-host/out/soong/host/linux_bionic-x86/apex/com.android.runtime.host.zipapex\u0027, \u0027--host\u0027, \u0027--64\u0027, \u0027--no-build-dependencies\u0027, \u0027--host\u0027, \u0027--dex2oat-jobs\u0027, \u00274\u0027, \u0027--verbose\u0027]\nConcurrency: 40\n4150/4150 (100%) tests passed.\nException in thread Thread-1:\nTraceback (most recent call last):\n  File \"/usr/lib/python3.4/threading.py\", line 920, in _bootstrap_inner\n    self.run()\n  File \"/usr/lib/python3.4/threading.py\", line 868, in run\n    self._target(*self._args, **self._kwargs)\n  File \"/usr/local/google/buildbot/src/googleplex-android/master-art-host/art/test/testrunner/testrunner.py\", line 508, in run_tests\n    with handle_zipapex(zipapex_loc) as zipapex_opt:\n  File \"/usr/lib/python3.4/contextlib.py\", line 59, in __enter__\n    return next(self.gen)\n  File \"/usr/local/google/buildbot/src/googleplex-android/master-art-host/art/test/testrunner/testrunner.py\", line 531, in handle_zipapex\n    subprocess.run([\"unzip\", \"-qq\", ziploc, \"apex_payload.zip\", \"-d\", tmpdir]).check_returncode()\nAttributeError: \u0027module\u0027 object has no attribute \u0027run\u0027\n\nChange-Id: I33a87fc2d96b250e30e3e08c60e9197daa11e049\n"
    },
    {
      "commit": "d53f60658fb0d28279919cc856a55e4b6504dabe",
      "tree": "2e152d283254df61f7b18738a67e5fbce453c54b",
      "parents": [
        "fe1d952a9912bf597174dc636d0f87db06a8d925"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Mar 22 14:55:21 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Mar 27 15:11:58 2019 +0000"
      },
      "message": "Partially disable building ART for host on Mac.\n\nBuilding ART for host on Mac is not currently needed.\n\nBuilding ART for target on Mac still works.\n\nThe main motivation is remove the custom elf.h from the code base.\n\nBug: 73344075\nTest: \"m -j40\" on Mac.\nChange-Id: I4b6f7aa7b291dcb6d751374ecf8d15f35877bd2e\n"
    },
    {
      "commit": "fe1d952a9912bf597174dc636d0f87db06a8d925",
      "tree": "db7f3fd5d0b5be8de106426f0bd9316b18594e3e",
      "parents": [
        "34857b5fd3be5ee8cf1935bd1fbaad37a8e42768"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Mar 25 17:19:11 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Mar 27 15:10:09 2019 +0000"
      },
      "message": "Use generic name for JNI trampolines.\n\nJNI trampolines tend to be deduplicated which seems to lead to confusion.\n\nBug: 32949969\nTest: test.py -b --host -r -t 137-cfi\nChange-Id: Ic39998448a05f98fc1e068c4f384f35085121911\n"
    },
    {
      "commit": "34857b5fd3be5ee8cf1935bd1fbaad37a8e42768",
      "tree": "eabdd26615030bde559d939eb861f02290851c9e",
      "parents": [
        "3b45890cf987c0b57965acd78958cd8eca487b8e"
      ],
      "author": {
        "name": "Koji Fukui",
        "email": "Koji.Fukui@sony.com",
        "time": "Wed Mar 20 19:13:00 2019 +0900"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 27 12:12:13 2019 +0000"
      },
      "message": "Revert \"Revert \"Change state to waiting during aborting the VM\"\"\n\nThis reverts commit ebb481d070e3fdbb7950580e6f6886c3231a1ad9.\n\nDex2oatWatchdogTest.TestWatchdogTrigger passed.\nApply the change again.\n\nTest: ART_HEAP_POISONING\u003dtrue make test-art-host-gtest-dex2oat_test64\nBug: 127875380\nChange-Id: If4326990cd612815ffe1511490712ca8babfec55\n"
    },
    {
      "commit": "3b45890cf987c0b57965acd78958cd8eca487b8e",
      "tree": "18a3dd853e9829873688a6a61bda39dd681b2a27",
      "parents": [
        "423bebb17f15c3867a52315f0ae421f08f14544f"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 26 17:08:41 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 27 09:45:20 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify mirror::Throwable.\n\nAnd do some cleanup after previously submitted changes.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: I4f8e118bb385a9cba464a564b15addc1c7306ac2\n"
    },
    {
      "commit": "423bebb17f15c3867a52315f0ae421f08f14544f",
      "tree": "97bdf50c7144ae21e6abfe8bdc26858a6a10f94d",
      "parents": [
        "93d99f3665cbd890509f4c707e1a62c5f26d320e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 26 15:17:21 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 27 09:45:20 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify mirror::ObjectArray.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: I611b3e49d3feed306f6cd35d2b662a1e727e24c6\n"
    },
    {
      "commit": "93d99f3665cbd890509f4c707e1a62c5f26d320e",
      "tree": "9d05c20e65d20b88908da1664f7dbb34dfbc2720",
      "parents": [
        "912cee8ab1260c5022ddb4862620d6ed17658de7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 27 08:56:02 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Mar 27 08:56:19 2019 +0000"
      },
      "message": "Revert \"InMemoryDexClassLoader in ClassLoaderContext follow-up\"\n\nThis reverts commit 1a1398ec15accbd905d802e1391c8efbd2d80f98.\nBug: 72131483\nReason for revert: Broke class_loader_context_test on target\n\nChange-Id: Iaa51c8e84536638f39e9ca4c420d1e10ae15e270\n"
    },
    {
      "commit": "912cee8ab1260c5022ddb4862620d6ed17658de7",
      "tree": "18278fbb659b8d9250e4732b8a5db4984878c411",
      "parents": [
        "1617f8caf200820e6831296681d49df51982d66c"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Mar 26 13:32:54 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 27 01:48:23 2019 +0000"
      },
      "message": "Only extract zipapex once for linux-bionic-zipapex tests\n\nWe were unzipping the zipapex for every test when running the\nart-linux-bionic-x64-zipapex tests. This could take a long time. This\nmakes us only have to unzip it a single time.\n\nTest: ./test/testrunner/run_build_test_target.py art-linux-bionic-x64-zipapex\nChange-Id: Id7cf1b6445526a950c45b74fc98208e234d3069f\n"
    },
    {
      "commit": "1617f8caf200820e6831296681d49df51982d66c",
      "tree": "c569b4bab44a18cfd5023e0b267cd6a1df1a7634",
      "parents": [
        "95e03030050948dd565570494370b35a439d90c8"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 26 17:52:30 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 26 21:24:57 2019 +0000"
      },
      "message": "Mention `standalone-apex-files` in the Runtime APEX build rules.\n\nUntil ART testing and benchmarking make use of the Runtime APEX, we\nhave to create copies of some libraries under `/system` within the\ndevice environment. Add a note about this in the Runtime APEX build\nrules as a reminder.\n\nTest: n/a\nBug: 121117762\nChange-Id: I7d849193a782506fd9d5761b6835f72816065940\n"
    },
    {
      "commit": "95e03030050948dd565570494370b35a439d90c8",
      "tree": "0ef6d9296b5f87c0e0850fc610e5d705e9c2c6d7",
      "parents": [
        "30498dee68213fda37b29c9d727fc7c748a3deee"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 26 17:00:28 2019 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Mar 26 21:24:57 2019 +0000"
      },
      "message": "Copy libandroidio.so from the Runtime APEX to /system in ART testing.\n\nAdd libandroidio.so to the list of Runtime APEX libraries copied in\n/system for testing by the standalone-apex-files Make phony target.\n\nTest: ART chroot-based on-device testing using the master-art branch\nBug: 121117762\nChange-Id: I06bde7c7db9e2a7e130f3cad932101d152176f8a\n"
    },
    {
      "commit": "30498dee68213fda37b29c9d727fc7c748a3deee",
      "tree": "471b420b5800a1e0829be872b6f0fe9f065f1e25",
      "parents": [
        "338403c9000a4ff8fbb73fd107fce25801345626"
      ],
      "author": {
        "name": "Eric Foo",
        "email": "efoo@chromium.org",
        "time": "Mon Mar 25 20:05:06 2019 -0700"
      },
      "committer": {
        "name": "Ryan Tseng",
        "email": "hinoka@google.com",
        "time": "Tue Mar 26 18:45:12 2019 +0000"
      },
      "message": "Add mixed buildbot/LUCI console and a dedicated LUCI console\n\nBug:893147\nChange-Id: Ie3b1722a884180420a4ffdec1734db037f5c4a27"
    },
    {
      "commit": "338403c9000a4ff8fbb73fd107fce25801345626",
      "tree": "0e949b2cf9199f0b6a46f297bd9720f599e8eb2e",
      "parents": [
        "f276f957e5293998c1fbf14114434787392a1d12"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Tue Mar 26 08:22:13 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 26 17:35:30 2019 +0000"
      },
      "message": "jni: Avoid extra std::string copies\n\nThe methods FindSymbolWith{,out}NativeBridge() take const\nstd::string references, so it\u0027s inefficient to pass in a\nstd::string::c_str().\n\nTest: TreeHugger\nChange-Id: I82e023d22cb2d9639bd4e32d05b0620dc09efd3e\n"
    },
    {
      "commit": "f276f957e5293998c1fbf14114434787392a1d12",
      "tree": "a45c410e4fd57c0e13a8a9fb46d28f6865e2c826",
      "parents": [
        "e7e195db8eb04a58c4c467bbe357841fdf621347"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Tue Mar 26 08:15:44 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 26 17:35:30 2019 +0000"
      },
      "message": "dex2oat: Avoid extra std::string copy\n\nThe function Fatal() takes a const std::string reference, so it\u0027s\ninefficient to pass it std::string::c_str().  While it\u0027s not\nuseful optimize a fatal code path, we still fix this so static\nanalysis tools finding this issue in other parts of the code\nare less noisy.\n\nTest: TreeHugger\nChange-Id: I42231b40c1af2f866c451e169f2d8362154853b0\n"
    },
    {
      "commit": "e7e195db8eb04a58c4c467bbe357841fdf621347",
      "tree": "bbefb03122251b826c644e196519422449157f6a",
      "parents": [
        "557feceeb438946e4a005471bc80935e5c0af195"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Tue Mar 26 08:13:00 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 26 17:35:30 2019 +0000"
      },
      "message": "optimizing_compiler: Avoid extra std::string copy\n\nThe function OptimizationPassByName() takes a const std::string\nreference, so it\u0027s inefficient to pass it the result of\nstd::string::c_str().\n\nTest: TreeHugger\nChange-Id: I84fc717285b0278264cba3c9504290876025a01d\n"
    },
    {
      "commit": "557feceeb438946e4a005471bc80935e5c0af195",
      "tree": "10c1d8acd53adb5739102efb6e0f691c83c10acd",
      "parents": [
        "c524e9e7e767be0801cf110310039635698c1532"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 26 14:29:41 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 26 17:06:55 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify mirror::IfTable.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: I77d36cc96f48ff92c1ca3b2581be7637a2ea22d7\n"
    },
    {
      "commit": "c524e9e7e767be0801cf110310039635698c1532",
      "tree": "cd11699dce8c175a0940a583f5ea02ce89f73a85",
      "parents": [
        "2e1ec835d08ca0ab81b1c24436f659f952ace260"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 26 10:54:50 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 26 17:06:55 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify mirror::Class.\n\nAnd move function definitions that rely on obj_ptr-inl.h\nfrom class.h to class-inl.h .\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: I5ccc765d0a02b1d37cb39ed68c17b8456faf92ea\n"
    },
    {
      "commit": "2e1ec835d08ca0ab81b1c24436f659f952ace260",
      "tree": "431fe93d35e4c64a8b43ca41106ae7c9f00b5a1b",
      "parents": [
        "a72ca6c3e0c0a5c9f7708a6f0fd287f9e3a2629b"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Mar 25 14:22:53 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Mar 26 15:30:42 2019 +0000"
      },
      "message": "Ensure that debug symbols are sorted.\n\nI want to add symbol binary search to libunwind.\n\nBug: 110133331\nTest: test.py -b --host -r -t 137-cfi\nChange-Id: I3c3130f735f7c68993c313fced8f5cfd76a05bc5\n"
    },
    {
      "commit": "a72ca6c3e0c0a5c9f7708a6f0fd287f9e3a2629b",
      "tree": "285f2ba27f2b8be0c396bb96397f3e3de0b80288",
      "parents": [
        "dfad9fc142b73b68b7be1e822144b60214bc9607"
      ],
      "author": {
        "name": "Koji Fukui",
        "email": "Koji.Fukui@sony.com",
        "time": "Mon Mar 25 17:39:07 2019 +0900"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Mar 26 15:30:30 2019 +0000"
      },
      "message": "Don\u0027t attach thread before dex2oat finish creating runtime\n\nSymptom:\nRuntime is sometimes aborted when WatchDog of dex2oat is triggered by\nDex2oatWatchdogTest#TestWatchdogTrigger.\n\nRoot cause:\nWatchDog of dex2oat calls Runtime::AttachCurrentThread() before dex2oat\nfinishes creating runtime. It causes runtime aborting.\n\nSolution:\nDon\u0027t attach thread when dex2oat doesn\u0027t finish creating runtime.\n\nTest: make test-art-host-gtest64\nBug: 129247034\nChange-Id: Ifb8a4f2c162f6185a726a987bb41495f6db440f4\n"
    },
    {
      "commit": "dfad9fc142b73b68b7be1e822144b60214bc9607",
      "tree": "0b63057df521d5ee172a2e53542f963dad38f73d",
      "parents": [
        "1a1398ec15accbd905d802e1391c8efbd2d80f98"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Mar 26 11:34:21 2019 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Mar 26 11:38:48 2019 +0000"
      },
      "message": "ART: fix buildbots following art-tools build change\n\nBug: 129323791\nBug: 128990084\nTest: build/envsetup.sh\nTest: lunch sdk-eng\nTest: HOST_PREFER_32_BIT\u003dtrue art/tools/buildbot-build.sh --host -j100\nChange-Id: Ie68802ac25af042f2bb9d5bc8264f14f9892f09b\n"
    },
    {
      "commit": "1a1398ec15accbd905d802e1391c8efbd2d80f98",
      "tree": "c058d429874230eb71c2eb5e136426957720c6c6",
      "parents": [
        "f57f2ed8c3f75c8d8c2c051f2961ca4e8330a698"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Mar 25 17:04:47 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Mar 26 10:13:05 2019 +0000"
      },
      "message": "InMemoryDexClassLoader in ClassLoaderContext follow-up\n\nAddress follow-up comments on Ic64065819018a1e56dee0f65405d26beb8fd7bbd.\nIn particular, the classpath elements of IMC are replaced with\n\"\u003cunknown\u003e\" magic value to make it clear that the dex location is bogus,\nand a clarifying comment is added.\n\nTest: m test-art-gtest-class_loader_context_test\nBug: 72131483\nChange-Id: I0225c288a07af589a3f3d85a69ef908eeab38cb2\n"
    },
    {
      "commit": "f57f2ed8c3f75c8d8c2c051f2961ca4e8330a698",
      "tree": "8a734652280d099f95d0d2f8cb358fcf56ca0d47",
      "parents": [
        "5cb98a99cff06cd6a5b94f7d819b180d6e621f32"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Mar 25 15:55:42 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Mar 26 09:52:25 2019 +0000"
      },
      "message": "ART: Clean up obj_ptr.h and obj_ptr-inl.h .\n\nMove ObjPtr\u003c\u003e member function definitions that depend on\nother functions in obj_ptr-inl.h also to the obj_ptr-inl.h.\nUse C++14 std::enable_if_t\u003c\u003e and C++17 std::is_base_of_v\u003c\u003e.\nImprove kObjPtrPoisoningValidateOnCopy code readability\n(avoid ternary operator). Move relational opeators to\nnamespace scope and reimplement !\u003d as negation of \u003d\u003d.\n\nAlso move PtrCompression\u003c\u003e::Compress(ObjPtr\u003c\u003e) to the\nobject_reference-inl.h which includes obj_ptr-inl.h.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I5116c0e322775c19a88687f30742ef654a8be873\n"
    },
    {
      "commit": "5cb98a99cff06cd6a5b94f7d819b180d6e621f32",
      "tree": "938597238d095deeaee49df09c6b55cc327971e8",
      "parents": [
        "79f5662900190a5c59758c02d666c6429b2e07b5"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Mar 25 15:07:16 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Mar 26 09:29:46 2019 +0000"
      },
      "message": "ART: change art-tools be host-only\n\nChanges art-tools make target to require host modules. Device\nequivalents are now build by art/build/apex/Android.bp.\n\nBug: 128990084\nTest: m art-tools\nChange-Id: Iacb61c75b31422566a197839a5c9efa2d5ac0656\n"
    },
    {
      "commit": "79f5662900190a5c59758c02d666c6429b2e07b5",
      "tree": "f0262b9b9dbf958ecacd1b7c196ad11ddfd8d30b",
      "parents": [
        "d27e60aadc9038788eaf623ce7b6d42f8e65b6b9"
      ],
      "author": {
        "name": "Pete Bentley",
        "email": "prb@google.com",
        "time": "Thu Mar 21 17:09:56 2019 +0000"
      },
      "committer": {
        "name": "Pete Bentley",
        "email": "prb@google.com",
        "time": "Tue Mar 26 09:19:35 2019 +0000"
      },
      "message": "Tighten native API surface.\n\nAsynchronousCloseMonitor is moved into libandroidio by\nr.android.com/910073 and so libjavacore no longer needs to\nbe linked to the conscrypt namespace.\n\nBug: 123744297\nTest: m \u0026\u0026 flashall\nTest: atest CtsLibcoreOkHttpTestCases\nTest: atest CtsLibcoreTestCases\nChange-Id: Ic7500f57a854055c1a63f33b843234ce5792445a\n"
    },
    {
      "commit": "d27e60aadc9038788eaf623ce7b6d42f8e65b6b9",
      "tree": "479b62632e90689c1732dad96f966b0c7e764504",
      "parents": [
        "9f3ea7c8c5d911cb56b3eaab925faf113e555058"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Mar 25 20:19:27 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 25 23:27:23 2019 +0000"
      },
      "message": "Add another library that appears on branch git_master_asan_cf_throttled,\ntarget aosp_cf_x86_pasan-userdebug.\n\nBug: 124293228\nTest: art/build/apex/runtests.sh\nTest: m\nChange-Id: I2657d83a292a225526df0b6ff992ddecb4682221\n"
    },
    {
      "commit": "9f3ea7c8c5d911cb56b3eaab925faf113e555058",
      "tree": "69d1acfaf716db6fa6528f81b774cb4e8cb2eaaf",
      "parents": [
        "b81fe2364cfb0b09aa526b75efe0a232fca8c2e9"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Mar 22 14:12:53 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Mar 25 22:19:54 2019 +0000"
      },
      "message": "Make titrace work with kArtTiVersion\n\nThis allows it to be used on userdebug builds with non-debuggable\napps.\n\nTest: m libtitrace\nChange-Id: I399dbd23f27ccdaee2128e99fc8aecb97c228c24\n"
    },
    {
      "commit": "b81fe2364cfb0b09aa526b75efe0a232fca8c2e9",
      "tree": "423aa412b256110ea03e300e660d9902be636467",
      "parents": [
        "6a399f3c462d84605d85f7f825c36d670c021acf"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Mar 25 17:38:04 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 25 19:44:15 2019 +0000"
      },
      "message": "Make libvixl dependency optional since it only exists on some architectures.\n\nBug: 124293228\nTest: art/build/apex/runtests.sh (on cuttlefish)\nTest: m droid (on aosp_x86_64)\nChange-Id: Id167f7dbb2e723593890979aece7ab602b4f941d\n"
    },
    {
      "commit": "6a399f3c462d84605d85f7f825c36d670c021acf",
      "tree": "4520947329cdeb4c21eef568d036a7b92a8fcfe2",
      "parents": [
        "d91de5ffa1bfb2a6f559c0536828b03839088949"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Jan 10 16:31:55 2018 -0800"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Mar 25 18:37:59 2019 +0000"
      },
      "message": "Allow jvmti Allocate \u0026 Deallocate function on unattached threads\n\nSome real-world agents will call the JVMTI Allocate and Deallocate\nfunctions on unattached threads and expect them to function correctly.\nWe change the error checking to allow them to be used in this way. This\nis to make it easier to debug possible issues with agents.\n\nTest: ./test.py --host -j50\nBug: 70918330\nChange-Id: If1796773b198d171284c3e02f38504bf094b9e0d\n"
    },
    {
      "commit": "d91de5ffa1bfb2a6f559c0536828b03839088949",
      "tree": "61223750974a923012c35fe5113e52dc2827568d",
      "parents": [
        "179b7c61ea6769b99f70c80a7a89cbb212423ec2"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Nov 06 15:20:44 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Mar 25 16:58:06 2019 +0000"
      },
      "message": "Fix JNI GetFieldId() signature check for \"\".\n\nTest: Add a test to 647-jni-get-field-id\nChange-Id: I8581997cb60057798fe4389531bf285baa076920\n"
    },
    {
      "commit": "179b7c61ea6769b99f70c80a7a89cbb212423ec2",
      "tree": "06130898bfb2d8c3f71f4fe181277f20e1942726",
      "parents": [
        "c8b7d445e02b752a68d824e2bc69658dfb76288a"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 22 13:38:57 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Mar 25 16:54:37 2019 +0000"
      },
      "message": "ObjPtr\u003c\u003e-ify String allocations, fix stale refs.\n\nObjPtr\u003c\u003e-ify String allocation functions and related code\nand remove some unnecessary calls to ObjPtr\u003c\u003e::Ptr(). Fix\nstale reference uses in reference_table_test and stub_test.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 31113334\nChange-Id: I42927fb8b7240e5132188f73318b2ccb218748fd\n"
    },
    {
      "commit": "c8b7d445e02b752a68d824e2bc69658dfb76288a",
      "tree": "51ff473bcc25bde8439fbebbee6ecc7b46cc4b93",
      "parents": [
        "2babede0d09600a9700d496001f736366fba8bb0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 25 09:40:22 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 25 13:08:55 2019 +0000"
      },
      "message": "Defer unloader JNI libraries of boot classpath as late as possible.\n\nAlso don\u0027t try to lock at this point.\nA lock would run a checkpoint on threads that are dying, and this can\nlead to crashes, eg:\nhttps://build.chromium.org/p/client.art/builders/host-x86-cms/builds/4412/steps/test%20debuggable/logs/stdio\n\n+*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***\n+Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR) fault addr (nil)\n+OS: Linux 4.4.0-78-generic (x86_64)\n+Cmdline: \u003cunset\u003e\n+Thread: 10797 \"Shutdown thread\"\n+Registers:\n+    eax: 0x00000000    ebx: 0xf739c104    ecx: 0xf739f794    edx: 0x00000001\n+    edi: 0x00000000    esi: 0x56748c54    ebp: 0xffd2bd18    esp: 0xffd2bcc0\n+    eip: 0xf6c18c8c                    eflags: 0x00010246 [ PF ZF IF ]\n+     cs: 0x00000023     ds: 0x0000002b     es: 0x0000002b     fs: 0x0000006b\n+     gs: 0x00000063     ss: 0x0000002b\n+Backtrace:\n+\t#00 pc 001ffc8c  /b/build/slave/host-x86-cms/build/out/host/linux-x86/lib/libartd.so (art::Thread::CheckEmptyCheckpointFromMutex()+428)\n+\t  art::Thread::ReadFlag(art::ThreadFlag) const\n+\t   art/runtime/thread.h:1089\n+\t  art::Thread::CheckEmptyCheckpointFromMutex()\n+\t   art/runtime/thread-inl.h:94\n+\t#01 pc 001fb40e  /b/build/slave/host-x86-cms/build/out/host/linux-x86/lib/libartd.so (art::Mutex::ExclusiveLock(art::Thread*)+462)\n+\t  art::Mutex::ExclusiveLock(art::Thread*)\n+\t   art/runtime/base/mutex.cc:382\n+\t#02 pc 0064d9b7  /b/build/slave/host-x86-cms/build/out/host/linux-x86/lib/libartd.so (art::Libraries::UnloadBootNativeLibraries(_JavaVM*)+103)\n+\t  MutexLock\n+\t   art/runtime/base/mutex.h:431\n+\t  art::Libraries::UnloadBootNativeLibraries(_JavaVM*)\n+\t   art/runtime/jni/java_vm_ext.cc:230\n\nTest: 004-ThreadStress\nChange-Id: I7f9b69590983ff4e3276a0ad1ef5c7453d692b04\n"
    },
    {
      "commit": "2babede0d09600a9700d496001f736366fba8bb0",
      "tree": "fb1bad3e04be601c5e6a4b7309caea2b18395449",
      "parents": [
        "50928116be503deed341fbc84c0647d5687b12a1"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Mar 18 21:04:49 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Mar 25 12:39:42 2019 +0000"
      },
      "message": "Implement file absence checks in art_apex_test.py.\n\nThis verifies we don\u0027t get unexpected libraries on target, and unexpected\nbinaries on both host and target.\n\nThis also adds several missing checks, and renames some function arguments\nto better convey their semantics.\n\nTest: art/build/apex/runtests.sh (on taimen (multilib), cuttlefish (arch32)\n  and hikey64_only (arch64), successful runs and with missing checks)\nBug: 124293228\nChange-Id: I98f7617291434ba6f6625df57ce75f5f0eb088f1\n"
    },
    {
      "commit": "50928116be503deed341fbc84c0647d5687b12a1",
      "tree": "2ab09470c05eff72860eb8df14dfcc1fba002ec4",
      "parents": [
        "b9c29f625bc27968d80f9eafa988dc14af0a1c28"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Mar 22 17:06:28 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Mar 25 10:59:19 2019 +0000"
      },
      "message": "Move elf_utils.h to libelffile library as well.\n\nAlso move some of our ART-specific utils form elf.h.\n\nBug: 73344075\nTest: generated oat files on host are identical.\nChange-Id: I587afc30875b9ddb57220fb3d4e764f9bb7a0e25\n"
    },
    {
      "commit": "b9c29f625bc27968d80f9eafa988dc14af0a1c28",
      "tree": "10276cd3fa756646b41cb50cf396476f2f8df1d3",
      "parents": [
        "bcd99bed472d228a1a0a65adc606346d7daf6b93"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Mar 20 14:22:51 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Mar 25 10:27:28 2019 +0000"
      },
      "message": "Hide conscrypt package classes for app AOT compilation.\n\nSince app AOT compilation is usually done without conscrypt\non the boot class path, classes defined by app class loader\nin conscrypt packages could be resolved differently, i.e.\nfrom conscrypt, at runtime. Reject such definitions during\nAOT compilation to ensure correct runtime behavior.\n\nAdd a test that when compiling the conscrypt module as an\napp, we cannot resolve any class defined in its dex files.\n\nTest: module_exclusion_test\nBug: 122937705\nChange-Id: I1fcb4c21937f59772206ee50b688a75053231bc0\n"
    },
    {
      "commit": "bcd99bed472d228a1a0a65adc606346d7daf6b93",
      "tree": "76ed4d2a1a5aba947f0b3b8d29b0b3323fc9821c",
      "parents": [
        "3e5c4cec27e2ead115ee7dcca7baf051fdaaaa28"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Mar 22 16:21:31 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Mar 25 09:25:50 2019 +0000"
      },
      "message": "Open only necessary files for BCP checksums test.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: aosp_taimen-userdebug boots.\nBug: 128479972\nChange-Id: I13040acb5603d9207c2aaaa51ffd2fc7d3de1d82\n"
    }
  ],
  "next": "3e5c4cec27e2ead115ee7dcca7baf051fdaaaa28"
}
