)]}'
{
  "log": [
    {
      "commit": "e41eec3b193d594577cbe8afc7c3dc6608c2f201",
      "tree": "a9914bbb64b8fc87a90ccf165368b6b33475322f",
      "parents": [
        "98e97c6953e970ce99e53640c963fa79a525b1eb"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 18 14:41:54 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 21 09:24:58 2019 +0000"
      },
      "message": "Fix deadlock in ThreadList::RunCheckpoint().\n\nBe smarter about the situation when a thread races the\nsuspend request to become Runnable. In that case we try to\nreschedule the checkpoint on that thread and, if successful,\nwe clear the suspend request. Thus we never have to wait for\na Runnable thread to become suspended.\n\nThis avoids a deadlock where the ThreadList::RunCheckpoint()\nwas waiting for a Runnable thread which was waiting for the\nGC to allow weak ref access while the GC thread was actually\nsuspended by the suspend request, trying to become Runnable.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing --jit --interpreter\nBug: 138852758\nChange-Id: I746b00160e09ac9e55ee6214faee6447025615b9\n"
    },
    {
      "commit": "98e97c6953e970ce99e53640c963fa79a525b1eb",
      "tree": "8cecf0e18d95b78118e439394060b0c940f05ac8",
      "parents": [
        "47c4ccdee17fd6f814b23fc6342498627cb448ab"
      ],
      "author": {
        "name": "Nick Desaulniers",
        "email": "ndesaulniers@google.com",
        "time": "Fri Oct 18 14:25:19 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 21 07:38:54 2019 +0000"
      },
      "message": "[art] fix -Wimplicit-int-float-conversion\n\nkPrimIntMax cannot be precisely represented as an IEEE 754 single\nprecision float.\n\nkPrimLongMax cannot be precisely represented as an IEEE 754 single\nprecision float or double precision double.\n\nAccept the imprecision as per the local comments in the code.\n\nBug: 139945549\nTest: mm\nChange-Id: I598544fb2cd8904b321803ed04202ba0a694cdc1\nSigned-off-by: Nick Desaulniers \u003cndesaulniers@google.com\u003e\n"
    },
    {
      "commit": "47c4ccdee17fd6f814b23fc6342498627cb448ab",
      "tree": "138a453553ecfefbbca7e3a2d8538f04f75c1ad8",
      "parents": [
        "35cffd6e9befc4dc288d8661e196f765b1205a6b"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 20 19:48:47 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 20 23:17:22 2019 +0000"
      },
      "message": "Temporary hack: Tweak extra process info on test timeout.\n\nI am worried debuggerd might be affecting process status.\n\nBug: 142039427\nTest: Test the code path locally with very low timeout.\nChange-Id: Iadac9fbe379c798bfc7020cef411e6e6cfc90cc4\n"
    },
    {
      "commit": "35cffd6e9befc4dc288d8661e196f765b1205a6b",
      "tree": "8e0068f140adfac8d4708fb23a99453678643435",
      "parents": [
        "93815555c40b4701328e524bc88a8ff025271bae"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Oct 10 00:43:39 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Oct 19 12:20:44 2019 +0000"
      },
      "message": "Remove visibility to ART internals for a test that doesn\u0027t need it.\n\nTest: m\nBug: 133140750\nChange-Id: I1f8b6d5cfdf9e7719e88e116bf1fd7628b0dd240\n"
    },
    {
      "commit": "93815555c40b4701328e524bc88a8ff025271bae",
      "tree": "398203aa7020e28a96a43fb14070da966b4d39a6",
      "parents": [
        "289e7124653b58a42a9cb431117362890f584945"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Oct 10 00:30:47 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Oct 19 12:20:44 2019 +0000"
      },
      "message": "Remove simpleperf visibility to ART internals.\n\nNo longer necessary after removing the dependency on\nlibdexfile_static_defaults in simpleperf.\n\nTest: m\nBug: 133140750\nChange-Id: Ie07b805354942befd0051963b10c2230ddbee598\n"
    },
    {
      "commit": "289e7124653b58a42a9cb431117362890f584945",
      "tree": "de68a507103f87c7e23335c22e3be89f11b370ce",
      "parents": [
        "ad390fab9e0a724790337674692b4ef15cb4ccb2"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Thu Oct 17 12:57:16 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Oct 19 01:09:48 2019 +0000"
      },
      "message": "pooled_mark_stacks: Add extra logging\n\nMaintain a map of thread and its associated mark stack. Everytime when\nthe pooled_mark_stacks_ is of same size as kMarkStackPoolSize, this map\nshould be empty. Also, there should not be any entry in the map for a\ndestroying thread.\n\nThis change is to be reverted once the bug is fixed.\n\nBug: 140119552\nTest: art/test/testrunner/testrunner.py\nChange-Id: I415ccd210985878dd6689ee2ef1e35712d464150\n"
    },
    {
      "commit": "ad390fab9e0a724790337674692b4ef15cb4ccb2",
      "tree": "1a59c68d31629550b591e85cac1a96829a6c2ce7",
      "parents": [
        "76a37458ee823202504dcff3dc95f19957a726a3"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Oct 16 20:03:00 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Oct 18 23:07:46 2019 +0000"
      },
      "message": "Use GC exclusion for NotifyStartupCompleted\n\nPrevent deadlocks that can occur in very rare cases where checkpoints\nblock on a thread decoding weak globals, resulting in a deadlock.\n\nThis is done by moving the startup completed event on a separate\nthread and using GC exclusion.\n\nTest: test-art-host\nBug: 138852758\n\nChange-Id: I314c61aff5be0d5829f7ad5fac0659e99dec1d90\n"
    },
    {
      "commit": "76a37458ee823202504dcff3dc95f19957a726a3",
      "tree": "46ae0a43d1a6648e7dd40d5a6f948feeb04b9400",
      "parents": [
        "db55a1121b2437765e732c8bbedf914f8a52f624"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 18 18:34:54 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 18 18:52:15 2019 +0100"
      },
      "message": "Temporary hack: Print extra process info on test timeout.\n\nAttempt to figure out what is happening on the buildbots.\n\nBug: 142039427\nTest: Test the code path locally with very low timeout.\nChange-Id: I96dd7df11241196a82fa26b4f8b19133176b712c\n"
    },
    {
      "commit": "db55a1121b2437765e732c8bbedf914f8a52f624",
      "tree": "9b1be00c3684703e6a062052a634daa859068333",
      "parents": [
        "697fe5cc6ce0e9c72c3681152a99a5d5bab4253c"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Oct 17 10:32:47 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Oct 18 15:51:34 2019 +0000"
      },
      "message": "Class redefinition sometimes needs to update verification\n\nIn cases where class redefinition moves a class from having no\nverification failures to having soft verification failures we need to\nupdate the methods with new verification class flags. For example if\na method is modified to have unbalanced monitors we need to make sure\nthat future invokes of that method count locks and use the\ninterpreter.\n\nPreviously we would simply keep the same verification state as the\noriginal implementation, causing us to try to compile in situations\nthe compiler cannot handle or leave monitors in inconsistent states.\n\nTest: ./test.py --host\nBug: 142876078\nChange-Id: I8adf59158639bdf237d691b20fad223f0a34db1f\n"
    },
    {
      "commit": "697fe5cc6ce0e9c72c3681152a99a5d5bab4253c",
      "tree": "3c3f5fee37e29271a0ef5e6fdfbf5157563759fa",
      "parents": [
        "5115a4dffb95637efe1df92d6f6eb70a8724c9ae"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 09 17:24:17 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 18 15:29:34 2019 +0000"
      },
      "message": "JIT mini-debug-info: Append packed entries towards end.\n\nNeeded to avoid potential race condition with libunwind.\n\nTest: ./art/test.py -b -r --host --jit --64\nTest: device boots\nChange-Id: I214247acf5673c5bc517ee1400454aec62026432\n"
    },
    {
      "commit": "5115a4dffb95637efe1df92d6f6eb70a8724c9ae",
      "tree": "605f5ca51dde13b1ec93fb0348d52969367b126e",
      "parents": [
        "15ffafd026962a16ee1abdea630542dc46f67482"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 17 14:56:47 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 18 12:49:45 2019 +0000"
      },
      "message": "Clean up initialization checks for entrypoints.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing --jit\nTest: aosp_taimen-userdebug boots.\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing --jit\nBug: 18161648\nChange-Id: Ia3c2fdb616a5bb289e5afeccd4e6fe3eaf7ed697\n"
    },
    {
      "commit": "15ffafd026962a16ee1abdea630542dc46f67482",
      "tree": "1ead15a7c08d49a13aad1a57d44531d4da62b57d",
      "parents": [
        "44465f79ebe37fc4dc7daf18af5cfa7ab9eb49d4"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Oct 17 13:58:01 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 17 23:04:34 2019 +0000"
      },
      "message": "Remove useless return-value from RetransformClassesDirect\n\nThis call simply executes a bunch of callbacks. It cannot fail. We do\nnot need to return and check a jvmtiError return value.\n\nTest: ./test.py --host\nChange-Id: I164e4979526ec18b258ad300f959b20a9fb417f2\n"
    },
    {
      "commit": "44465f79ebe37fc4dc7daf18af5cfa7ab9eb49d4",
      "tree": "6e817702fc1f9521592f6cf627da5dba567df984",
      "parents": [
        "2bd8bfd716d4b07d7df017596af7b8394006cf38"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Thu Oct 17 11:40:24 2019 -0700"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Thu Oct 17 21:10:58 2019 +0000"
      },
      "message": "Add checks for pooled_mark_stacks in CC GC\n\nAdding some CHECK regarding thread-local mark stacks.\n\nBug: 140119552\nTest: art/test/testrunner/testrunner.py\nChange-Id: I0b10851ff4cf94791da08363546647c2294524e5\n"
    },
    {
      "commit": "2bd8bfd716d4b07d7df017596af7b8394006cf38",
      "tree": "9ed086f67e299151d9d488e9edf00139d4121c1b",
      "parents": [
        "4d319c7a2a5473d86a8db6afd14a6dda47c84697"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 17 15:49:03 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 17 18:32:01 2019 +0000"
      },
      "message": "Temporary hack: Print extra backtraces on test timeout.\n\nAttempt to figure out what is happening on the buildbots.\n\nBug: 142039427\nTest: Test the code path locally with very low timeout.\nChange-Id: Ia4db2a7082a49a36c357eed1bd25200dcca3c41d\n"
    },
    {
      "commit": "4d319c7a2a5473d86a8db6afd14a6dda47c84697",
      "tree": "70e2d3944474670a1f9c2b53600cc65cd21c1cf1",
      "parents": [
        "706e778ef7a84ddfef82e8e2e43f852960849935"
      ],
      "author": {
        "name": "Primiano Tucci",
        "email": "primiano@google.com",
        "time": "Thu Oct 17 15:18:45 2019 +0100"
      },
      "committer": {
        "name": "Primiano Tucci",
        "email": "primiano@google.com",
        "time": "Thu Oct 17 15:18:45 2019 +0100"
      },
      "message": "perfetto_hprof: match iterator API change\n\nThis CL matches the typed iterator change made by aosp/1144623\nand gets rid of the legacy path within the same CL topic.\nNo functional change is introduced by this CL.\n\nBug: 132880619\nTest: builds\nChange-Id: I0fac64db3b6b87408493b7e1d983c90b99e0060a"
    },
    {
      "commit": "706e778ef7a84ddfef82e8e2e43f852960849935",
      "tree": "46a213bcc6926956298275629aa2b42eeebc0ed1",
      "parents": [
        "352482c000830755405f5da3624891ff4690a36a"
      ],
      "author": {
        "name": "Nick Desaulniers",
        "email": "ndesaulniers@google.com",
        "time": "Wed Oct 16 10:02:23 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 17 13:26:49 2019 +0000"
      },
      "message": "[art] fix -Wimplicit-int-float-conversion\n\nkPrimIntMax and kPrimLongMax are too large in value to be precisely\nrepresented by IEEE 754 single and double precision, respectively.\n\nThe code in question is clamping the `value` to the above kConstants.\nIn this case, the imprecision doesn\u0027t result in logical errors. Accept\nthe imprecision via explicit cast.\n\nFixes:\nart/compiler/optimizing/nodes.cc:1597:22: error: implicit conversion\nfrom \u0027const int32_t\u0027 (aka \u0027const int\u0027) to \u0027float\u0027 changes value from\n2147483647 to 2147483648 [-Werror,-Wimplicit-int-float-conversion]\n        if (value \u003e\u003d kPrimIntMax)\n                  ~~ ^~~~~~~~~~~\nart/compiler/optimizing/nodes.cc:1605:22: error: implicit conversion\nfrom \u0027const int64_t\u0027 (aka \u0027const long\u0027) to \u0027float\u0027 changes value from\n9223372036854775807 to 9223372036854775808\n[-Werror,-Wimplicit-int-float-conversion]\n        if (value \u003e\u003d kPrimLongMax)\n                  ~~ ^~~~~~~~~~~~\nart/compiler/optimizing/nodes.cc:1629:22: error: implicit conversion\nfrom \u0027const int64_t\u0027 (aka \u0027const long\u0027) to \u0027double\u0027 changes value from\n9223372036854775807 to 9223372036854775808\n[-Werror,-Wimplicit-int-float-conversion]\n        if (value \u003e\u003d kPrimLongMax)\n                  ~~ ^~~~~~~~~~~~\n\nBug: 139945549\nTest: mm\nChange-Id: I60582c13cfaceb6c6b217e13d7e9bd04d94874fe\nSigned-off-by: Nick Desaulniers \u003cndesaulniers@google.com\u003e\n"
    },
    {
      "commit": "352482c000830755405f5da3624891ff4690a36a",
      "tree": "5911bff6550d035b4df4b0828a71830e5e5bace5",
      "parents": [
        "46392356906fb3d5e24280a23809b5f012d72942"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 16 15:59:52 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 16 17:14:28 2019 +0000"
      },
      "message": "Disable timeouts in run-test-jar\n\nInvestigating gcstress timeout issues.\nThis code changed recently. Disable it.\n\nTests will still timeout in testrunner.py script.\n\nBug: 142039427\nTest: Set low timeout and check that tests still timeout.\nChange-Id: Ia8930687b923cc3664b69438f4f4e35ce2ff3824\n"
    },
    {
      "commit": "46392356906fb3d5e24280a23809b5f012d72942",
      "tree": "6ae25bbb7ef42ccaf58dd7c064d6ae0aa619311a",
      "parents": [
        "31b3ffa32d4efc3868806917ca3f2c82847478c7"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Fri Oct 11 14:25:49 2019 +0100"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Wed Oct 16 16:28:48 2019 +0000"
      },
      "message": "Emit roots into perfetto profile.\n\nBug: 136210868\nTest: Flash aosp, profile keyboard\nChange-Id: I3b652d79a847791e9bc31cdfb7980356dbcbcf54\n"
    },
    {
      "commit": "31b3ffa32d4efc3868806917ca3f2c82847478c7",
      "tree": "60a421d346615fd0f1b3171fa5d3820d01ae0867",
      "parents": [
        "cce414f8b46de709250af49398083e99f96b6161"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Oct 14 10:27:00 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 16 15:39:42 2019 +0000"
      },
      "message": "Remove temporary CPPLINT.cfg files\n\nTemporary CPPLINT.cfg files were introduced when move libnativeloader\nand libnativebridge under art/.\n\nBug: 141749154\nTest: mm cpplint-art-all\nChange-Id: I85e75180138a512aef025f1e5275e20d8d1d14b0\n"
    },
    {
      "commit": "cce414f8b46de709250af49398083e99f96b6161",
      "tree": "b212a1a4aa7fbd47728785bf9e979b6ffb60fde4",
      "parents": [
        "0866ea41c21df6672b302eabe5b98ebb40c92613"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 07 08:51:33 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Oct 16 15:29:16 2019 +0000"
      },
      "message": "Delay entrypoint update until visibly initialized.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing --jit\nTest: aosp_taimen-userdebug boots.\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing --jit\nBug: 18161648\nChange-Id: Idde0cbc848f19236319426bc82ac10b8b8bb9ee9\n"
    },
    {
      "commit": "0866ea41c21df6672b302eabe5b98ebb40c92613",
      "tree": "71d1adb37e646b41d4926edc0207694a0ade2036",
      "parents": [
        "765b87dee25855aed0c71e029346e99d7d91f9f0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 15 12:04:17 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Oct 16 14:07:16 2019 +0000"
      },
      "message": "Revert^2 \"Refactor oat file writing.\"\n\nThis reverts commit 50c812abbe8a8f64d2def49c549eaa005b5f32c7.\n\nFix the VerificationResults to be created before Runtime.\nThis is needed for recording verification data during early\nRuntime initialization when compiling the boot image.\nThis also cleans up a TODO for bug 29790079.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: Manual, prebuilt files do not change with this CL.\nBug: 142680736\nBug: 29790079\nChange-Id: I4350e7a67a16ee1653a8f2fce6244e353a3597c4\n"
    },
    {
      "commit": "765b87dee25855aed0c71e029346e99d7d91f9f0",
      "tree": "78834a11767fa44aec49877933796d99d3c63a9c",
      "parents": [
        "63f712f54ac01871b66907452e045d7a5eb4d608"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Oct 15 21:25:58 2019 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Oct 15 21:31:02 2019 +0100"
      },
      "message": "Revert^2 \"zygote: use libcutils to allocate JIT memory\"\n\nThis reverts commit af47ca01e96c280a15c24e2ae8152f61ffb8c1ce.\n\nAdds legacy fallback path for ART buildbots which are running on older\nsystem images.\n\nBug: 139855428\nTest: boot taimen\nTest: m test-art-host-gtest-jit_memory_region_test\nTest: Flash taimen PQ3A.190801.002, setup chroot test environment, \\\n art/tools/run-gtests.sh /apex/com.android.art/bin/art/arm64/jit_memory_region_test\n\nChange-Id: Ieb89664c180c4dee08e98cb4c6b963f48c430832\n"
    },
    {
      "commit": "63f712f54ac01871b66907452e045d7a5eb4d608",
      "tree": "00c323db78228ab7a071b084ae8a71647dde7307",
      "parents": [
        "50c812abbe8a8f64d2def49c549eaa005b5f32c7"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Jul 12 15:01:46 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Oct 15 13:42:02 2019 +0000"
      },
      "message": "Switch interpreter: Split the method in ASAN to avoid huge frames\n\nBug: 117341496\nTest: \"./art/test.py -b -r --interpreter --host --64\" in ASAN\nChange-Id: I6945bf78789588058b1668bf16da9ee1b3ff26b5\n"
    },
    {
      "commit": "50c812abbe8a8f64d2def49c549eaa005b5f32c7",
      "tree": "083d1d03f5fd32e4a3bd466a9aad276a7be067b6",
      "parents": [
        "af47ca01e96c280a15c24e2ae8152f61ffb8c1ce"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 15 08:57:00 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 15 12:01:50 2019 +0000"
      },
      "message": "Revert \"Refactor oat file writing.\"\n\nThis reverts commit 0d192d2c08116cab8244a6eb229aa784bc6cfefa.\n\nReason for revert: Boot time regression.\nBug: 142680736\n\nChange-Id: I65c8f687668c1d7cec293b6b8bfe7147181c0a10\n"
    },
    {
      "commit": "af47ca01e96c280a15c24e2ae8152f61ffb8c1ce",
      "tree": "50ef867248332c93a366f1d531b08be8ddab8d59",
      "parents": [
        "65ae669694e4376d6015d8a54668d5d4bc826c27"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Oct 15 09:09:34 2019 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Oct 15 09:21:12 2019 +0000"
      },
      "message": "Revert \"zygote: use libcutils to allocate JIT memory\"\n\nThis reverts commit ee61519ae61297be973820d94c48e00653bc74d4.\n\nReason for revert: Fails is post submit testing in ART buildbots (https://ci.chromium.org/p/art/builders/ci/angler-armv7-ndebug/1005)\n\nChange-Id: I72cb2b4fe501a8f5aaa78db1d01584387aaea710\n"
    },
    {
      "commit": "65ae669694e4376d6015d8a54668d5d4bc826c27",
      "tree": "4a213390429b9b598add13fb85262343e654981d",
      "parents": [
        "27e5f3bc36407904e76ee35d54c8d5bbfdf7402b"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Fri Oct 11 14:17:21 2019 +0100"
      },
      "committer": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Tue Oct 15 06:43:05 2019 +0000"
      },
      "message": "Add jni libicu_jni library into ART APEX\n\n- The library may be moved into i18n APEX in the future\n\nBug: 138994281\nTest: device boots\nChange-Id: I9c629224bb318acde744d470e7483a80b2473aa4\n"
    },
    {
      "commit": "27e5f3bc36407904e76ee35d54c8d5bbfdf7402b",
      "tree": "45ebffafa6d4ce791f45784cbe351cb72d7192d0",
      "parents": [
        "ee61519ae61297be973820d94c48e00653bc74d4"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Oct 14 15:02:42 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Oct 14 21:52:21 2019 +0000"
      },
      "message": "Add more failing tests to libcore_no_getrandom_failures.txt\n\nBug: 142637466\nBug: 141230711\nTest: ./art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX32\nChange-Id: I0f974183491f1b79f9848457f8c458d86de31deb\n"
    },
    {
      "commit": "ee61519ae61297be973820d94c48e00653bc74d4",
      "tree": "eedc306a8d32010fc1d044e4e37dd8e4987abc67",
      "parents": [
        "0a51605ddd81635135463dab08b6f7c21b58ffb0"
      ],
      "author": {
        "name": "Tri Vo",
        "email": "trong@google.com",
        "time": "Mon Oct 07 15:50:08 2019 -0700"
      },
      "committer": {
        "name": "Tri Vo",
        "email": "trong@google.com",
        "time": "Mon Oct 14 19:33:21 2019 +0000"
      },
      "message": "zygote: use libcutils to allocate JIT memory\n\nOriginal motivation for opening /dev/ashmem directly in zygote was to\navoid binder hop of ashmem_create_region() talking to ashmemd.\n\nAshmemd is no more, and ashmem_create_region() opens an ashmem fd\nin-process. See aosp/q/topic:remove_ashmemd, b/139855428. So we replace\nraw /dev/ashmem access with corresponding libcutils API.\n\nTest: m test-art-host-gtest-jit_memory_region_test\nTest: boot taimen\nChange-Id: Id6cadc88ef6197ba833824423fc96ccbabcfc499\n"
    },
    {
      "commit": "0a51605ddd81635135463dab08b6f7c21b58ffb0",
      "tree": "820f338333010f4d6e4b543ffea47e9ff7d2dd3f",
      "parents": [
        "e2727154f25e0db9a5bb92af494d8e47b181dfcf"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 14 13:00:44 2019 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 14 13:00:44 2019 +0000"
      },
      "message": "Revert \"Make compiler/optimizing/ symbols hidden.\"\n\nThis reverts commit e2727154f25e0db9a5bb92af494d8e47b181dfcf.\n\nReason for revert: Breaks ASAN tests (ODR violation).\nBug: 142365358\n\nChange-Id: I38103d74a1297256c81d90872b6902ff1e9ef7a4\n"
    },
    {
      "commit": "e2727154f25e0db9a5bb92af494d8e47b181dfcf",
      "tree": "0ddc6eec3ad9508d7eb1f2b941786dd0ed7d2cd8",
      "parents": [
        "c78860b91ae07eed92f86876e7a03132adea6fcd"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 10 10:46:42 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Oct 14 08:22:00 2019 +0000"
      },
      "message": "Make compiler/optimizing/ symbols hidden.\n\nMake symbols in compiler/optimizing hidden by a namespace\nattribute. The unit intrinsic_objects.{h,cc} is excluded as\nit is needed by dex2oat.\n\nAs the symbols are no longer exported, gtests are now linked\nwith the static version of the libartd-compiler library.\n\nlibart-compiler.so size:\n  - before:\n    arm: 2396152\n    arm64: 3345280\n  - after:\n    arm: 2016176 (-371KiB, -15.9%)\n    arm64: 2874480 (-460KiB, -14.1%)\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing --jit\nBug: 142365358\nChange-Id: I1fb04a33351f53f00b389a1642e81a68e40912a8\n"
    },
    {
      "commit": "c78860b91ae07eed92f86876e7a03132adea6fcd",
      "tree": "820f338333010f4d6e4b543ffea47e9ff7d2dd3f",
      "parents": [
        "b9a8541380c2bdb9685e16d8d4b2ba034ddbf870"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Oct 11 11:30:01 2019 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Oct 14 07:49:45 2019 +0000"
      },
      "message": "Remove temporary soong visibility workarounds\n\nRemoves temporary unrestricted visibility for libnativeloader and\nlibnativebridge.\n\nBug: 137364733\nTest: m nothing\nChange-Id: I32d871b639deddd664c42e9962f6826ab798862f\n"
    },
    {
      "commit": "b9a8541380c2bdb9685e16d8d4b2ba034ddbf870",
      "tree": "6a0ca068c8d78eb059a61896c64b249eaf7ca0b9",
      "parents": [
        "0b4479830e2614fc1582ced22a426fe7f473161b"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 13 12:11:04 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 13 18:54:24 2019 +0000"
      },
      "message": "Revert \"Generate mini-debug-info when running tests.\"\n\nThis reverts commit 8e2c78d6dfddaceb602ae356e42af4eff19cc74a.\n\nReason for revert: Investigating timeout issues.\n\nBug: 142039427\nChange-Id: Ifb49dc07b77dd00d1b2d84f81d4fd4d90c14bfc0\n"
    },
    {
      "commit": "0b4479830e2614fc1582ced22a426fe7f473161b",
      "tree": "9062d64ff29d1ae4140b77985e8bfa47b8343124",
      "parents": [
        "47d2947967e301b7a1f9d3d01ad8953cea8a52c7"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 13 12:10:58 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 13 18:54:24 2019 +0000"
      },
      "message": "Revert \"Generate mini-debug-info when running JIT tests.\"\n\nThis reverts commit 6df588bdd8d5b5751af851b511210bc4753cf7cc.\n\nReason for revert: Investigating timeout issues.\n\nBug: 142039427\nChange-Id: I513b11b8a5d53df41be724998fac95560dee3a47\n"
    },
    {
      "commit": "47d2947967e301b7a1f9d3d01ad8953cea8a52c7",
      "tree": "ef51e614883565896440880935ca8c89a30b979f",
      "parents": [
        "08dcf15d1a1c321752e72b63c52ec2045b82d50f"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 13 12:10:48 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 13 18:54:24 2019 +0000"
      },
      "message": "Revert \"Improve stack unwinding during gcstress tests.\"\n\nThis reverts commit 357d4db493467e4dd74b2ba1d4b8d7c80f8409b6.\n\nReason for revert: Investigating timeout issues.\n\nBug: 142039427\nChange-Id: Iec1df893c75c6ab5b8cd52ba4b617acff57c3049\n"
    },
    {
      "commit": "08dcf15d1a1c321752e72b63c52ec2045b82d50f",
      "tree": "4b4401e761256189abd75e591ed1a340454fdf42",
      "parents": [
        "c3590fe6b45e36e0f3daddeedf5ce23144a63e48"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 13 12:10:36 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sun Oct 13 18:54:24 2019 +0000"
      },
      "message": "Revert \"gcstress: Limit the number of unwinds.\"\n\nThis reverts commit 52c7e98efe104bfe77b07f7c2c8c778996db02f4.\n\nReason for revert: Investigating timeout issues.\n\nBug: 142039427\nChange-Id: I6e158e1db94eca3de4603aab9eff51824291cb87\n"
    },
    {
      "commit": "c3590fe6b45e36e0f3daddeedf5ce23144a63e48",
      "tree": "20a8ff05aca915d684e4f6f1907b2251c4cd28a6",
      "parents": [
        "aaac8d26d10454492fc404466b055a01f9a048aa"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 10 14:56:55 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Oct 11 18:32:22 2019 +0000"
      },
      "message": "Cosmetic changes in test/README.md and test/README.chroot.md.\n\nTest: Render these files as HTML and check their outputs manually\nBug: 34729697\nChange-Id: I34012734461c51acf59a2a0718956033e1c6cb65\n"
    },
    {
      "commit": "aaac8d26d10454492fc404466b055a01f9a048aa",
      "tree": "834f911e78a89f72918bce6682fa4f754b72347b",
      "parents": [
        "52c7e98efe104bfe77b07f7c2c8c778996db02f4"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Oct 10 13:04:36 2019 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Oct 11 16:33:12 2019 +0000"
      },
      "message": "ART: add devices option to test/knownfailures.json\n\nAdds devices field to records in knownfailures.json and uses it to\ndisable 137-cfi for fugu.\n\nBug: 142365899\nTest: manual on taimen disabling and re-enabling using devices entry\nChange-Id: I9a059ae1fe2dda04ba2b64f147cf82660ababe62\n"
    },
    {
      "commit": "52c7e98efe104bfe77b07f7c2c8c778996db02f4",
      "tree": "5421594f64cde4cf801928008a140e57e2ae4a6e",
      "parents": [
        "4346499223589f53293a68a0af4c42202461fdd4"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 11 14:24:31 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 11 16:11:22 2019 +0000"
      },
      "message": "gcstress: Limit the number of unwinds.\n\nTemporary hack while diagnosing timeouts.\n\nBug: 142039427\nTest: ./art/test.py -b -r --host --jit --64 --gcstress\nChange-Id: If27211852fbbc1623664c93415f6355c5a8e58ba\n"
    },
    {
      "commit": "4346499223589f53293a68a0af4c42202461fdd4",
      "tree": "409316ba96c8c623947ba197b5240911388a76e6",
      "parents": [
        "0d192d2c08116cab8244a6eb229aa784bc6cfefa"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Oct 11 11:10:03 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 11 15:59:27 2019 +0000"
      },
      "message": "libnativeloader: add a clarifying comment to Android.bp\n\nFollow up to https://r.android.com/1136402\n\nBug: 137364733\nTest: m nothing\nChange-Id: Id78fd50d9f5e1a4cc9b17532c920f56033b7a45b\n"
    },
    {
      "commit": "0d192d2c08116cab8244a6eb229aa784bc6cfefa",
      "tree": "a84963a1f78d1eaa7405ce63fee1b6a8dff12efc",
      "parents": [
        "9b16e344b246096d228dd4b41ff711884bcfcb3e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 10 16:53:07 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 11 13:44:48 2019 +0000"
      },
      "message": "Refactor oat file writing.\n\nSince we\u0027re writing dex files to vdex rather than oat files,\nwe can write them before knowing the oat header size. This\nsimplifies Runtime creation in dex2oat.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I6e0fa9ddc6671cff99e70507b67e052df7ad87c3\n"
    },
    {
      "commit": "9b16e344b246096d228dd4b41ff711884bcfcb3e",
      "tree": "ff93f416fcc59fb831202e80b5fb8c8ede99d500",
      "parents": [
        "e828ea0553b3106598071239e8215fca63b15c9b"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Oct 09 13:29:16 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 11 09:57:02 2019 +0000"
      },
      "message": "Move libnative{bridge,loader} to art/\n\nThis change moves system/core/libnative{bridge,loader} under art/.\n\nBug: 137364733\nTest: m\nChange-Id: I9be7333d00fcd3f36cd80520e50a30ea840187ad\n"
    },
    {
      "commit": "e828ea0553b3106598071239e8215fca63b15c9b",
      "tree": "e3f8f03eaa6ffc41135c00151f0126f72234bfd6",
      "parents": [
        "adb66f967432ff1f0d51726923a64943c9f1d35b"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Oct 10 18:20:21 2019 +0100"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Fri Oct 11 09:39:41 2019 +0000"
      },
      "message": "Make bitmap constants more explicit.\n\nTest: build\n\nChange-Id: Iea6844929f10fd08fe1290ab67473e9134a20d10\n"
    },
    {
      "commit": "adb66f967432ff1f0d51726923a64943c9f1d35b",
      "tree": "1444900ef83edb837c446361ef38bbf17c17f50c",
      "parents": [
        "ff258063f2748aadf0ea83d0d284b1bedaf792d9"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 10 12:59:43 2019 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 10 17:34:37 2019 +0000"
      },
      "message": "Revert^2 \"JIT: Separate code allocation and initialization.\"\n\nThis reverts commit 63b0c26aae3e7237166dd781eb7a15fbc7c091c2.\n\nTest: ./art/test.py -b -r --host --all-gc -t 708\nReason for revert: Reland after bug fix.\nChange-Id: Ic13e2799bf4bdd8ca468f72cc0f3b72f224f2b08\n"
    },
    {
      "commit": "ff258063f2748aadf0ea83d0d284b1bedaf792d9",
      "tree": "1c7a94758a09ad9141d3413ea14e0d3e651c3c77",
      "parents": [
        "98416bf06592493ee6fde039af5eaa5efab73acc"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 09 15:33:48 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 10 14:18:25 2019 +0000"
      },
      "message": "jitzygote: only copy contents if they differ.\n\nmemcpy will write to the page and dirty it, so avoid it if\ncontents are the same.\n\nBug: 119800099\nTest: boot\nChange-Id: I075a36eaa448f1214b0d8f452bfa65026b293658\n"
    },
    {
      "commit": "98416bf06592493ee6fde039af5eaa5efab73acc",
      "tree": "a0052ec5364ce1068639a9b7d7355683eb691371",
      "parents": [
        "63b0c26aae3e7237166dd781eb7a15fbc7c091c2"
      ],
      "author": {
        "name": "Evgeny Astigeevich",
        "email": "evgeny.astigeevich@linaro.org",
        "time": "Mon Sep 09 14:52:12 2019 +0100"
      },
      "committer": {
        "name": "Evgeny Astigeevich",
        "email": "evgeny.astigeevich@linaro.org",
        "time": "Thu Oct 10 13:06:08 2019 +0100"
      },
      "message": "Fix uses of MaybeRecordImplicitNullCheck without special scopes\n\nMaybeRecordImplicitNullCheck is a function which uses\nCodeGenerator::RecordPcInfo() and requires an exact PC. However for ARM32/ARM64,\nwhen CodeGenerator::RecordPcInfo() is used without VIXL special scopes (EmissionCheckScope,\nExactAssemblyScope) there is no guarantee of an exact PC. Without the special scopes VIXL might\nemit veneer/literal pools affecting a PC.\nThe ARM32 code generator has uses of MaybeRecordImplicitNullCheck without the\nspecial scopes.\n\nThis CL fixes missing special scopes in the ARM32/ARM64 code generators.\nIt also changes API to prevent such cases:\n1. A variant of CodeGenerator::RecordPcInfo with native_pc as a\nparameter is added. The old variant (where Assembler::CodePosition is used) is\nkept and documented that Assembler::CodePosition is target-dependent and\nmight be imprecise.\n2. CodeGenerator::MaybeRecordImplicitNullCheck is made virtual. Checks\nare added to ARM32/ARM64 code generators that\nMaybeRecordImplicitNullCheck is invoked within VIXL special scopes.\n\nTest: test.py --host --optimizing --jit --gtest\nTest: test.py --target --optimizing --jit\nTest: run-gtests.sh\n\nChange-Id: Ic66c16e7bdf4751cbc19a9de05846fba005b7f55\n"
    },
    {
      "commit": "63b0c26aae3e7237166dd781eb7a15fbc7c091c2",
      "tree": "5713f52331c0cd3b881df80f4314f9ea2a0f09db",
      "parents": [
        "e1b36f09cb478a39ba443f6acb11cd1901c01c1d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 09 20:12:15 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 09 20:12:15 2019 +0000"
      },
      "message": "Revert \"JIT: Separate code allocation and initialization.\"\n\nThis reverts commit e1b36f09cb478a39ba443f6acb11cd1901c01c1d.\n\nReason for revert: Crashes in art::jit::JitMemoryRegion::FreeCode\nhttps://logs.chromium.org/logs/art/buildbucket/cr-buildbucket.appspot.com/8900060997388741808/+/steps/test_libcore/0/stdout\n\nChange-Id: I40259baec9acbb7889732548f8b31e0a48651cd9\n"
    },
    {
      "commit": "e1b36f09cb478a39ba443f6acb11cd1901c01c1d",
      "tree": "75642c703fee9fce7cd09af344dd26d485379b13",
      "parents": [
        "449011217844401ed491ad0f89dcba21cc26bfc4"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 04 17:44:33 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 09 15:51:56 2019 +0000"
      },
      "message": "JIT: Separate code allocation and initialization.\n\nAllocate(reserve) both code and data first,\nand then initialise(commit) both of them.\n\nThis is useful since we know the address sooner\nfor the purpose of debug info generation.\n\nTest: ./art/test.py -b -r --jit --host --64\nChange-Id: I4971a8801004efbc6c2b27884834dda775b72664\n"
    },
    {
      "commit": "449011217844401ed491ad0f89dcba21cc26bfc4",
      "tree": "5713f52331c0cd3b881df80f4314f9ea2a0f09db",
      "parents": [
        "5ee206f3ee081424b323844a4fc91c3d0e89aa89"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Fri Oct 04 01:03:48 2019 +0100"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Wed Oct 09 12:06:05 2019 +0000"
      },
      "message": "Add a function that fails softly if libdexfile(d)_external.so cannot be\nloaded.\n\nlibunwindstack needs it since it is used in situations where we cannot\nguarantee that libdexfile_external.so is available, e.g. from\nlibc_malloc_debug.so in the bootstrap Bionic.\n\nTest: m test-art-host-gtest-art_libdexfile_support_tests\nTest: m test-art-host-gtest-art_libdexfile_support_static_tests\nBug: 139408016\nChange-Id: I0c311222baaafbf5c3a0f7d3f9f2d83d4abbaf90\n"
    },
    {
      "commit": "5ee206f3ee081424b323844a4fc91c3d0e89aa89",
      "tree": "c6b3aefcace815a5d4389b94c73ff3706d4179bd",
      "parents": [
        "caf8f4c5aaa1c2827d13309bd59b9f4b7e3424b9"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 08 15:09:17 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 09 08:36:57 2019 +0000"
      },
      "message": "Make LinkMethods setup the entrypoint like image_writer.\n\nFor consistency, set the entrypoint the same.\n\nTest: test.py\nChange-Id: Ie069c6e5214d5e00ddcc072dbe6db423d0d7c80e\n"
    },
    {
      "commit": "caf8f4c5aaa1c2827d13309bd59b9f4b7e3424b9",
      "tree": "5948f5d4c0256f7a2e59a8ac33e7b69dc4afc3d5",
      "parents": [
        "2bb44fe818f2bf1d867a6ae490ef69c7f3a51e97"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 08 18:47:48 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 09 08:35:28 2019 +0000"
      },
      "message": "Fix dependencies of profile_boot_info_test.\n\nTo fix flakes like:\nhttps://android-build.googleplex.com/builds/git_master-art-host-linux-art-generational-cc/5924459/logs/build.log\n\nTest: profile_boot_info_test\nChange-Id: I72d86ef395d64ed366810bce13d536e705210341\n"
    },
    {
      "commit": "2bb44fe818f2bf1d867a6ae490ef69c7f3a51e97",
      "tree": "c1860179daba52ab0d53707650c1e85194399629",
      "parents": [
        "59770df741b87b201e83ef81cbcfac9df048d19b"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 04 12:28:14 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Oct 09 08:25:22 2019 +0000"
      },
      "message": "ARM64: Change code emitted by ClinitCheck.\n\nChange the code from MVN+CBNZ to CMP+BLO. The latter is\nbetter optimized in ARM64 CPUs. To avoid increasing code\nsize, this requires the preceding load to be changed from\nLDR to LDRB for a single byte of the 32-bit field.\n\nThis shows small but measurable improvement on a few Golem\nbenchmarks, for example MicroLambda, KotlinAutoReversiBench\nand KotlinImgProc-GaussianBlurOpt.\n\nTest: testrunner.py --target --optimizing\nBug: 36692143\nChange-Id: Ia73f791d7026220ef38e73bd5ee19fcc4877564d\n"
    },
    {
      "commit": "59770df741b87b201e83ef81cbcfac9df048d19b",
      "tree": "45e399559cd7f7e2c272ab951716d3989acfba97",
      "parents": [
        "172ad03d12615f3cac92a7fda1ac3c2b23064c5b"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Oct 08 11:22:38 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 09 00:51:46 2019 +0000"
      },
      "message": "Correct skips and name typo\n\nThe word recursive was misspelled and several tests were missing from\nknownfailures.json. This fixes these issues.\n\nTest: ./test.py --host\nTest: ./test/testrunner/testrunnner.py --jvm\nChange-Id: I6609937f57ec5f7d2ca7f31683b383560b76b1cf\n"
    },
    {
      "commit": "172ad03d12615f3cac92a7fda1ac3c2b23064c5b",
      "tree": "56ebb520c5ddf1a23ddd15da52f8841a57f4f9f6",
      "parents": [
        "2bdda937160ed8ab53ecf1ed181160bbbff4308d"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 08 14:40:34 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 08 16:52:51 2019 +0000"
      },
      "message": "Reduce the heap size to 16MiB for two tests.\n\nThis should speed up GCs and avoid timeouts.\n\nTest: testrunner.py --host -t 159 -t 163\nBug: 142222906\nChange-Id: Ib6df25dc44485a4467af8d9ae94b267859960e12\n"
    },
    {
      "commit": "2bdda937160ed8ab53ecf1ed181160bbbff4308d",
      "tree": "85fef586b1d653d78fb203fb8eb45a8b4e59df45",
      "parents": [
        "3732beb8c1b5fc722e4d993725aff1170239b181"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Oct 08 14:26:25 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Oct 08 16:39:51 2019 +0000"
      },
      "message": "gcstress: increase libcore timeout.\n\nDiagnosing buildbot issues.  I am not sure if it is needed.\n\nBug: 138868214\nBug: 142039427\nTest: run vogar for libcore.libcore.io\nChange-Id: I201d4d0b4a85ed6edd685139da01f80da9fe29a3\n"
    },
    {
      "commit": "3732beb8c1b5fc722e4d993725aff1170239b181",
      "tree": "84b7cb6751564bfa55474aa31d48393da468b78b",
      "parents": [
        "39c399a9e85a8de74c6b47bc8cbc1e43b94ed54c"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Oct 04 13:35:34 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 08 16:13:29 2019 +0000"
      },
      "message": "Refactor Transform/redefine entrypoints\n\nThe RetransformClasses and RedefineClasses entrypoints were previously\npartly defined in OpenjdkJvmTi.cc. Most other entrypoints are entirely\ndefined in other files with only basic capability checks occurring in\nOpenjdkJvmTi.cc. This change brings these functions into alignment\nwith all the others.\n\nTest: ./test.py --host\nBug: 134162467\nChange-Id: I1e2e6506c89ad0e393dacdbc7f2d96659678397e\n"
    },
    {
      "commit": "39c399a9e85a8de74c6b47bc8cbc1e43b94ed54c",
      "tree": "a734a83f385e67a174a6576dfe0c8a266e7c9280",
      "parents": [
        "9bee62aa8ce05cd5f5154b8240e537b7c358530e"
      ],
      "author": {
        "name": "Artur Satayev",
        "email": "satayev@google.com",
        "time": "Fri Sep 13 16:09:09 2019 +0100"
      },
      "committer": {
        "name": "satayev",
        "email": "satayev@google.com",
        "time": "Tue Oct 08 15:09:57 2019 +0000"
      },
      "message": "Report any non-app signatures.\n\nBefore, veridex only reported signatures that were defined in the CSV file. This CL still preserves the same use case by default, but also allows reporting any other signatures as \"invalid\" if they are not defined in the --dex-files.\n\nTest: manual\nChange-Id: I10753d05bf9f418d2c8543be16cdfb335be9044c\n"
    },
    {
      "commit": "9bee62aa8ce05cd5f5154b8240e537b7c358530e",
      "tree": "2280499fb9f913afc982f5c221b401263a5ef137",
      "parents": [
        "444e998f5987007bd2783b4d88a9970d1a17736f"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 03 15:27:21 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Oct 08 13:43:58 2019 +0000"
      },
      "message": "JIT mini-debug-info: Compression micro-optimization.\n\nDon\u0027t compress the last group to avoid repeated\ncompression and decompression in jit-zygote.\n\nTest: device boots, check compression in logcat.\nChange-Id: I117cb6486710508554efa982beb2dc0774799bee\n"
    },
    {
      "commit": "444e998f5987007bd2783b4d88a9970d1a17736f",
      "tree": "ef8a93058e973c2c0cf022ea2265679cbb783580",
      "parents": [
        "44ab2cd97c7f4086013a766f442d2f9f619efcc8"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 02 17:59:23 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Oct 08 13:43:16 2019 +0000"
      },
      "message": "JIT mini-debug-info: Generate the debug info sooner.\n\nWe need to add the debug info before the entry-point is set,\notherwise there is window of time when we are missing it.\n\nTest: test.py -b -r --optimizing --jit --host --64\nChange-Id: I3bbad0c96d68e9603bac131faee498b8b9f62699\n"
    },
    {
      "commit": "44ab2cd97c7f4086013a766f442d2f9f619efcc8",
      "tree": "ae2797ce2e18790ddb3a91099997aefeb873c542",
      "parents": [
        "6a40fe46a097d34cc30b29c3af49081909037d8f"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Oct 08 10:17:05 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 08 12:24:26 2019 +0000"
      },
      "message": "Stop buildbot-build.sh script if any command fails\n\nBug: 142300164\nTest: manual\nChange-Id: Ie3f53f4f3917fe24554af3899ab905b0b6e5ea25\n"
    },
    {
      "commit": "6a40fe46a097d34cc30b29c3af49081909037d8f",
      "tree": "290f0757bcc3c8c1990916992848870cb7ee420b",
      "parents": [
        "fff1bd03c6b4f93e866c006b1781c690270ba994"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Oct 08 09:49:32 2019 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Oct 08 11:23:26 2019 +0000"
      },
      "message": "Add a link from runtime ns to the neuralnetworks ns\n\nlibneuralnetworks.so could be preloaded by libnativeloader. In that case,\nit should be accessible from libnativeloader which runs in the\nart namespace.\n\nBug: 141847343\nTest: m, device boots\nTest: run vm-tests-tf\nChange-Id: I68507d5f00e4e60bc18ea9ffd5093b019d2ec559\n"
    },
    {
      "commit": "fff1bd03c6b4f93e866c006b1781c690270ba994",
      "tree": "e43e83c8a05f210f340176153d60357d990f92c2",
      "parents": [
        "55eccdf61f46bd2a633f489f8d09cf78e1de1938"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Oct 01 01:54:59 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 08 03:33:27 2019 +0000"
      },
      "message": "Rename the runtime linker namespace following ART/Runtime APEX split.\n\nTest: Build \u0026 boot\nBug: 139408016\nChange-Id: I5d0a87ce8288cbd9c20bc3b5e98d12c92912aac2\n"
    },
    {
      "commit": "55eccdf61f46bd2a633f489f8d09cf78e1de1938",
      "tree": "e60d91c8fc48dfe70956ec9febd346b9dc9fcf77",
      "parents": [
        "49df715faf3700e874fbe246b339a8e426549216"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Oct 07 13:51:13 2019 +0000"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 07 18:59:55 2019 +0000"
      },
      "message": "Revert^4 \"Walk internal ArtField/ArtMethod pointers\"\n\nSeveral of the new tests make use of the invoke-custom opcode. This\nopcode is not supported by dexter/slicer causing the tests to fail.\n\nThis reverts commit c34eab45161c51bf63e548e44645cbcc59d01268.\n\nReason for revert: Added tests to redefine-stress known failures\nTest: ./test.py --host --redefine-stress\nBug: 134162467\n\nChange-Id: Ic1b375a0cb1e44d0252c17115af92c269fb8efc5\n"
    },
    {
      "commit": "49df715faf3700e874fbe246b339a8e426549216",
      "tree": "2e6216a9fe271aad03acf966d7154a57b86d7e41",
      "parents": [
        "97421fd3f780baf9dfcffdd2b86ded33481d272c"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Oct 03 11:22:35 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Oct 07 17:14:04 2019 +0000"
      },
      "message": "Handle MethodHandle call to non-default interface methods\n\nWe would check-fail when an invoke-super MethodHandle attempted to\ninvoke a non-default interface method. This changes the behavior to\ncorrectly throw an IllegalAccessError.\n\nTest: ./test.py --host\nBug: 142059356\nChange-Id: I8c214ee589ba71d8ab0dd6434890a3f681031364\n"
    },
    {
      "commit": "97421fd3f780baf9dfcffdd2b86ded33481d272c",
      "tree": "770e50af6662a6159f551e32104538d5d9f66a3c",
      "parents": [
        "6c6369e6c182e83c2611b20b0ec492c6225a7b97"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Oct 07 11:41:02 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Oct 07 13:39:28 2019 +0000"
      },
      "message": "Add temporary time logging\n\nDiagnosing testing issues.\n\nBug: 138868214\nTest: Check the verbose output with very low timeout\nChange-Id: I02f51c7958dc627fbe6f231f0ba87f63905c3970\n"
    },
    {
      "commit": "6c6369e6c182e83c2611b20b0ec492c6225a7b97",
      "tree": "a2bd5d793c5823b70ac9c290dd90c2cee001dfcb",
      "parents": [
        "bd5fb28413ea9999f6f0a79ab8889a66e28658f1"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Oct 07 11:06:39 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Oct 07 12:22:28 2019 +0000"
      },
      "message": "Complete a comment about `TARGET_FLATTEN_APEX` and the ART APEX in Android.mk.\n\nTest: n/a\nBug: 132413565\nChange-Id: Icd4926c8eed7d8f535d98a93ce31cf3102d6ad77\n"
    },
    {
      "commit": "bd5fb28413ea9999f6f0a79ab8889a66e28658f1",
      "tree": "10a5fe8e75c27ce0fd9f67f6b9c67ee8a79a7e00",
      "parents": [
        "1cef6b2a2542448a5f3ab954008c24bdb5fbbd8a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Oct 04 14:26:03 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Oct 07 10:27:41 2019 +0000"
      },
      "message": "Document `OVERRIDE_TARGET_FLATTEN_APEX` in ART documentation.\n\nIf one wants to forcibly enable/disable APEX flattening, they should\nnow use `OVERRIDE_TARGET_FLATTEN_APEX` instead of\n`TARGET_FLATTEN_APEX` (which has stopped working lately).\n\nTest: n/a (documentation-only change)\nBug: 121117762\n\nChange-Id: I4d865eaf13e29c860e71f8c5fafad67fcd6db4b0\n"
    },
    {
      "commit": "1cef6b2a2542448a5f3ab954008c24bdb5fbbd8a",
      "tree": "ecec24cf32ea236245e9bf5f6f1b62b245588505",
      "parents": [
        "c34eab45161c51bf63e548e44645cbcc59d01268"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 03 15:26:15 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 07 08:45:09 2019 +0000"
      },
      "message": "Add and use a read-barrier free NeedInitializationCheck method.\n\nThe JIT may be working with ArtMethod that are in the process of\nbeing deleted.\n\nBug: 142001849\nTest: 674-hiddenapi\nChange-Id: I3632ba6f49bcf54a29bd92882eb343b92945ef28\n"
    },
    {
      "commit": "c34eab45161c51bf63e548e44645cbcc59d01268",
      "tree": "1b2a0eb85865d2cf6b1627cb5d64869e72412505",
      "parents": [
        "623d4f1ba4f4218c5472e3d9e1e9bf707795878d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 07 07:15:53 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Oct 07 07:16:18 2019 +0000"
      },
      "message": "Revert \"Revert^2 \"Walk internal ArtField/ArtMethod pointers\"\"\n\nThis reverts commit ea2a3d949354c8b054983ba629c81bc5ff7163da.\n\nBug: 134162467\n\nReason for revert: Fails redefine stress\n\nChange-Id: If487c0bcacaf3a3f565ff475b6dad8321e3428b9\n"
    },
    {
      "commit": "623d4f1ba4f4218c5472e3d9e1e9bf707795878d",
      "tree": "44a01387b2fcdda602019cefa3bf78b6535b2caa",
      "parents": [
        "94af5824acb28f9756fb8246f95f78c4026228e2"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Sep 30 13:45:51 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Oct 06 13:09:09 2019 +0000"
      },
      "message": "Share boot image methods memory in JIT zygote.\n\nOnce the zygote is done compiling, copy the ArtMethods to\nshared memory that will be in-place remapped. This is\na memory optimization that enables memory sharing between\nzygote and early forked processes.\n\nCurrently relies on undefined behavior of the kernel, but will\nfollow-up with a CL that uses file sealing that will address this.\n\nSaves around 2MB of memory for processes forked before zygote is\ndone compiling - there are around a dozen of processes.\n\nBug: 119800099\nTest: boots, PostLaunchMemoryUsage\nChange-Id: Ia1bdbd1abd27f28b087d9f33aca4cd901d55082f\n"
    },
    {
      "commit": "94af5824acb28f9756fb8246f95f78c4026228e2",
      "tree": "e580df0d6a694a5c6b6c54fbc94feab37db779ec",
      "parents": [
        "ea2a3d949354c8b054983ba629c81bc5ff7163da"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 03 14:48:26 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Sat Oct 05 00:07:52 2019 +0000"
      },
      "message": "JIT mini-debug-info: Add back timestamps.\n\nThey are needed by simpleperf.\n\nBug: 141558390\nTest: ./art/test.py -b -r --optimizing --jit --host --64\nChange-Id: Ic698910da83656889ecd972b56d4a23061fcf71e\n"
    },
    {
      "commit": "ea2a3d949354c8b054983ba629c81bc5ff7163da",
      "tree": "dc94a9c92b254d3f94d96ad0dc27f195d5a7767c",
      "parents": [
        "7fca6ef7b9dbe5a54f2c93a3484035f48ebae27a"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Oct 04 20:34:46 2019 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Oct 04 14:21:21 2019 -0700"
      },
      "message": "Revert^2 \"Walk internal ArtField/ArtMethod pointers\"\n\nThis reverts commit 712fa800b2b78e527d36c88dc369bf4b723587ea.\n\nWe incorrectly didn\u0027t check if a method was obsolete before giving its\nclass\u0027s MethodIds array. We then incorrectly used this array and the\n(placeholder) -1 index to try to find the previous method-id. Since -1\nis not a valid array index we got check failures. To fix this we\nsimply added a check that the method is not obsolete and if it is we\ngo to the slow-path.\n\nReason for revert: Fixed issue causing out-of-bounds array access\nTest: ./test.py --host --debuggable --ndebuggable\nBug: 134162467\n\nChange-Id: Iaffefeab6e889b4fb6554a11452d0af051001cb7\n"
    },
    {
      "commit": "7fca6ef7b9dbe5a54f2c93a3484035f48ebae27a",
      "tree": "8c8234d7a633006ccb3e9b1924fc377c78792c05",
      "parents": [
        "7021c13e4890ffed3dc3900250780e50270aa4ad"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Oct 02 09:24:20 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Oct 04 19:29:01 2019 +0000"
      },
      "message": "Add test skips for run-libjdwp-tests.sh\n\nSeveral tests in the apache-harmony suite will cause crashes when run\nusing the libjdwp agent (both on ART and the RI). To prevent these\nfrom cluttering the buildbot logs this adds explicit skips for all 5\nof them. The list of crashing tests is not expected to ever change.\n\nAlso added --no-skips flag to still run the skips.\n\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003dhost\nBug: 141907697\nChange-Id: I42c5ec3d0c6593a5b7d5f60cda106c9b09d0b627\n"
    },
    {
      "commit": "7021c13e4890ffed3dc3900250780e50270aa4ad",
      "tree": "eabdf86fd051484cbc9db753e69997e62c995fdd",
      "parents": [
        "e456b6ff089e99b22e2ddce39e660618fc5762de"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 04 12:56:22 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 04 14:15:17 2019 +0000"
      },
      "message": "Increase gcstress timeout\n\nRecent unwinding fixes mean gcstress has more work to do.\n\nBug: 142039427\nTest: ./art/test.py -b -r --gcstress --host -t 001\nChange-Id: Ice02b4f0be9cfb9c0189bdfc4e10356fb4bd1ffd\n"
    },
    {
      "commit": "e456b6ff089e99b22e2ddce39e660618fc5762de",
      "tree": "0474c29df5583f01eafae4a3fbd7fd62062f5b09",
      "parents": [
        "31e284b995807271065f7cdc94f02fe3dc2c2e2f"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 04 11:27:51 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Oct 04 10:33:20 2019 +0000"
      },
      "message": "testrunner: Add missing import\n\nMissed in CL/1132075\n\nBug: 140933800\nBug: 141227454\nTest: \"./art/test.py --gcstress --host -t 001\" with small timeout\nChange-Id: Ifd0d7178e998a94a63936a5cf1fe1e0ad23313ad\n"
    },
    {
      "commit": "31e284b995807271065f7cdc94f02fe3dc2c2e2f",
      "tree": "5c2e19759131038301a9bd1dbe36e66e4b634b80",
      "parents": [
        "712fa800b2b78e527d36c88dc369bf4b723587ea"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 03 16:03:09 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Oct 04 10:23:31 2019 +0000"
      },
      "message": "Make ART chroot setup \u0026 sync scripts a bit more robust.\n\nBefore this change, if one forgot to run\n`art/tools/setup-buildbot-device.sh` before running\n`art/tools/buildbot-sync.sh`, the tree on the device under\n`$ART_TEST_CHROOT` would become messy (as the contents of\n`$ANDROID_PRODUCT_OUT/system` and `$ANDROID_PRODUCT_OUT/data` would be\ndirectly copied into `$ART_TEST_CHROOT`) and scripts\n`tools/teardown-buildbot-device.sh` and\n`art/tools/cleanup-buildbot-device.sh` would not work correctly.\n\nTo avoid that issue, have `tools/buildbot-sync.sh` create all the\nexpected directories under `$ART_TEST_CHROOT` prior to pushing files\ninto them, so that the behavior of `tools/buildbot-sync.sh` is\nindependent of whether `art/tools/setup-buildbot-device.sh` had run\nbefore or not.\n\nTest: Check that running:\n        `art/tools/buildbot-sync.sh \u0026\u0026 art/tools/setup-buildbot-device.sh`\n      produces the same effect as running:\n        `art/tools/setup-buildbot-device.sh \u0026\u0026 art/tools/buildbot-sync.sh`\nBug: 34729697\nBug: 121117762\nChange-Id: Ieebb3588648f2f61efaa82fb25078e0018db97be\n"
    },
    {
      "commit": "712fa800b2b78e527d36c88dc369bf4b723587ea",
      "tree": "ccc4573a3c6bef136ef6da022350ebb5c17a1892",
      "parents": [
        "f70dfec27cae2625c199f1b8ecf1ef1f23580a45"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 04 08:38:11 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Oct 04 08:38:38 2019 +0000"
      },
      "message": "Revert \"Walk internal ArtField/ArtMethod pointers\"\n\nThis reverts commit c84fc3a742b160ce51cbf01c2e5f971ccc0a2c6c.\n\nBug: 134162467\n\nReason for revert: Test fails on debuggable.\n\nChange-Id: I240d58fafcc7434749947330b64c67d65b9b7a1e\n"
    },
    {
      "commit": "f70dfec27cae2625c199f1b8ecf1ef1f23580a45",
      "tree": "a2f1fba77e0a0e924974a59c1dace4cf381465ad",
      "parents": [
        "83072060112150894f723277ee9e8ae6977b56b5"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Oct 02 18:58:19 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Oct 03 23:43:05 2019 +0000"
      },
      "message": "Attach the running bitness to the boot image profile\n\nAlso, add tests for the profile saver.\n\nBug: 139884006\nTest: gtest\nChange-Id: I134c951e40859e4e6560cbdf43710c99de6b11fc\n"
    },
    {
      "commit": "83072060112150894f723277ee9e8ae6977b56b5",
      "tree": "2e35e2e9041e943ffb5fcb0acfd4eaaffb67a46d",
      "parents": [
        "c84fc3a742b160ce51cbf01c2e5f971ccc0a2c6c"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Oct 02 16:06:58 2019 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Oct 03 21:50:54 2019 +0000"
      },
      "message": "Follow change to ART_TEST_LIST_*\n\nART_TEST_LIST_* now contain full paths instead of paths relative\nto $(OUT_DIR).\n\nTest: m checkbuild\nChange-Id: Id4d8610bfd93eb0b9080e83f05b878aedab0967e\n"
    },
    {
      "commit": "c84fc3a742b160ce51cbf01c2e5f971ccc0a2c6c",
      "tree": "1380b353e0d3b5015c9d1ef29fd4c2534828f97b",
      "parents": [
        "8679fd5e938d7bed67d3ab67c55b7f4fb2cdd92a"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Sep 24 14:36:50 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 03 20:44:33 2019 +0000"
      },
      "message": "Walk internal ArtField/ArtMethod pointers\n\nDuring structural class redefinition we sometimes need to update some\nof the ArtMethod/ArtField pointers held by runtime frames. This adds\nsupport for doing this through a StackReflectiveHandleScope similar to\nthe StackHandleScope used for holding object references. This also\nupdates various places where reflective-handles to ArtMethods and\nArtFields are needed, for example the JniIdManager, field Read/Write\noperations and events, field resolution, and the old debugger.\n\nTest: ./test.py --host\nBug: 134162467\n\nChange-Id: I4ea73e85956a07735c6d7b125c5828a4233670bc\n"
    },
    {
      "commit": "8679fd5e938d7bed67d3ab67c55b7f4fb2cdd92a",
      "tree": "97d47a9019e57eb0f59346a92d581a343b7fbe38",
      "parents": [
        "8cd5c4c33fe6b9e30b836cddca0fc119f3c66f66"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Oct 03 11:03:52 2019 +0100"
      },
      "committer": {
        "name": "Primiano Tucci",
        "email": "primiano@google.com",
        "time": "Thu Oct 03 19:38:58 2019 +0000"
      },
      "message": "Remove perfetto_src_tracing_ipc.\n\nThis target is unneeded and libperfetto_client_experimental\nis sufficient to pull all deps required for\nthe client library.\n\nChange-Id: I688e531065fcad1103cf110f6711aca0c9894cc9\n"
    },
    {
      "commit": "8cd5c4c33fe6b9e30b836cddca0fc119f3c66f66",
      "tree": "aacb64c2f1f47b5d7b69498c14f3c736d0511add",
      "parents": [
        "34848e75fb3255b0be6f491a60129dcd61d5becf"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Sep 23 16:39:49 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 03 19:22:31 2019 +0000"
      },
      "message": "Provide more info when get_ld_guest_system_config_file_path fails.\n\nAlso propagate exit from functions running in subshells.\n\nTest: art/tools/buildbot-sync.sh while having a duplicate linker config file\nTest: art/tools/buildbot-sync.sh after fixing it\nBug: 121117762\nChange-Id: I5d64919b77d82a476bc3b138b4120af77cf8ca11\n"
    },
    {
      "commit": "34848e75fb3255b0be6f491a60129dcd61d5becf",
      "tree": "6a45971e12b61b24923e65c5921382b9e34c4345",
      "parents": [
        "4d6f24d50a81bc83ecd7f9182cdbac4c4edc0c0e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 03 14:54:26 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 03 16:50:03 2019 +0000"
      },
      "message": "Remove `-j` option from build commands in `test/README.chroot.md`.\n\nThe build system already sets a default value for the number of\nparallel building tasks (based on the number of CPU cores); trust it\ninstead of suggesting an arbitrary value.\n\nTest: Render `README.chroot.md` as HTML and check the output manually\nBug: 34729697\nChange-Id: I48e4f07a70dcac10db7132568abea4bf65600450\n"
    },
    {
      "commit": "4d6f24d50a81bc83ecd7f9182cdbac4c4edc0c0e",
      "tree": "6fcc9445e4def6f90942fbe4b3f544b1a19a5e49",
      "parents": [
        "3b1d8e335bfa67a20f6f39e5677ff0b3f736b439"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 02 16:47:36 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 03 15:56:56 2019 +0000"
      },
      "message": "Always include `libart(d)-disassembler` in debug-able ART APEXes.\n\nLibrary `libart(d)-disassembler` is required to execute some ART\nrun-tests (it\u0027s used to output disassembly information of compiled\nmethods to verify Checker `disassembly` checks); but it is dlopen\u0027d by\n`art::HGraphVisualizerDisassembler` (and not linked with\n`libart(d)-compiler`). Make it an explicit dependency of all ART APEX\npackages used for debugging or testing.\n\nTest: art/build/apex/runtests.sh\nTest: art/test/testrunner/testrunner.py --target --64 --ndebug --debug -t 1004-checker-volatile-ref-load\nBug: 140507091\nChange-Id: I0ae206a26a873487d4415bb49b16e14718448ff5\n"
    },
    {
      "commit": "3b1d8e335bfa67a20f6f39e5677ff0b3f736b439",
      "tree": "ba513030dab0b2fa0c131f592f3cca21e0fddc88",
      "parents": [
        "f9ba5210f501b7fe05bb460e7954a0d4c6dcd70d"
      ],
      "author": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Tue Oct 01 14:46:58 2019 +0100"
      },
      "committer": {
        "name": "Florian Mayer",
        "email": "fmayer@google.com",
        "time": "Thu Oct 03 14:18:21 2019 +0000"
      },
      "message": "Use BufferExhaustedPolicy::kStall in perfetto_hprof.\n\nTest: setenforce 0; profile system_server; no data loss.\n\nChange-Id: Ibb593dc64a62ef165c04f9d7b71a3e8d2fe8087d\n"
    },
    {
      "commit": "f9ba5210f501b7fe05bb460e7954a0d4c6dcd70d",
      "tree": "26ad331864d20f94da40df486824b5b6cacd370c",
      "parents": [
        "40510ab49d6bb2bc65957aa72c00fbb371647f2d"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Oct 02 15:56:08 2019 +0100"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Oct 03 14:06:03 2019 +0000"
      },
      "message": "testrunner: Kill whole process group on timeout.\n\nThis avoids occasional deadlocks of the python script.\n\nIt seems that proc.communicate will not return until all children exit\n(possibly because it is waiting for end-of-file from the shared PIPE).\n\nBug: 140933800\nBug: 141227454\nTest: test.py -b -r --gcstress --jit --host --64\nChange-Id: Ie230ab100a092a920bdbcb1c3bb50e493572562a\n"
    },
    {
      "commit": "40510ab49d6bb2bc65957aa72c00fbb371647f2d",
      "tree": "b899547d3da4ebcaa7aee59d0e7d837e18e095ed",
      "parents": [
        "00b8d451a1a93c070ffe71727a8366f12dc421a2"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 02 20:03:32 2019 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Oct 03 10:28:24 2019 +0000"
      },
      "message": "Adjust Checker assertion in 1004-checker-volatile-ref-load for heap poisoning.\n\nThe relative offset passed to the ADR instruction is usually\n(i.e. when heap poisoning is disabled) 0xc (12 bytes), but it is 0x10\n(16 bytes) when heap poisoning is enabled, as the emitted code\nsequence includes a NEG instruction to unpoison the loaded reference.\n\nTest: art/test/testrunner/testrunner.py --target --64 -t 1004-checker-volatile-ref-load\n      (with `ART_HEAP_POISONING` set to `true`)\nBug: 140507091\nBug: 36141117\n\nChange-Id: I63c6c00abbe10dfcbbf88231f9f9995d3ba950fa\n"
    },
    {
      "commit": "00b8d451a1a93c070ffe71727a8366f12dc421a2",
      "tree": "48780d4b4078df51574568524964125fcfb2f2ee",
      "parents": [
        "f383ed8b60405f09996ac2be480df7b4effb8de0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 02 15:34:45 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Oct 03 08:28:43 2019 +0000"
      },
      "message": "Remove the leading \u0027/\u0027 in jit zygote memfd/ashmem names.\n\nThis avoids having two \u0027/\u0027 in case the jit zygote code cache\nis using ashmem.\n\nTest: cat /proc/pid/smaps\nChange-Id: Ibff035949c3ff12ab513be75078255b804eef7a5\n"
    },
    {
      "commit": "f383ed8b60405f09996ac2be480df7b4effb8de0",
      "tree": "4e9fec4dd379349fb9d47c5bec9282f69a0016a7",
      "parents": [
        "43fd2936af2f76f2e73765e3deaeefb0d5e39280"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Sep 24 15:02:23 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 02 21:39:34 2019 +0000"
      },
      "message": "Hide static from cc_library_shared and vice versa\n\nThe static properties don\u0027t make sense for cc_library_shared\nmodules, and the shared properties don\u0027t make sense for\ncc_library_static modules.  Move them into separate property\nstructs so they can be added conditionally.\n\nTest: m nothing\nChange-Id: Ic3f95f588a05417dfd470d0e4e9d69c376250a11\n"
    },
    {
      "commit": "43fd2936af2f76f2e73765e3deaeefb0d5e39280",
      "tree": "ca086f1130ca65de8ce9107bb292cd3514f0308d",
      "parents": [
        "a85580ad9bd639e5137c799814405439aa0e757f"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Oct 01 13:34:51 2019 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Oct 02 20:04:55 2019 +0000"
      },
      "message": "Update run-libjdwp-tests.sh to run more of the test suite\n\nAlso add new broken tests to the failure list.\n\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003dhost\nChange-Id: Id06609ee341107be1c16a45ec736d8cee80be9f6\n"
    },
    {
      "commit": "a85580ad9bd639e5137c799814405439aa0e757f",
      "tree": "e3a8fff47c7e138fa8fada220b16f4e626ab615e",
      "parents": [
        "f3a1a29d08b2ad73a378ef31261c6238dd1def61"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Sep 27 13:24:33 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Oct 02 18:16:12 2019 +0000"
      },
      "message": "Remove aggegation counter handling from profman\n\nThe profile no longer support aggregation counters and this has no effect.\n\nBug: 139884006\nTest: m\nChange-Id: Iacadb08611e7dbce9a0d60eff92f44faaa9a3afc\n"
    },
    {
      "commit": "f3a1a29d08b2ad73a378ef31261c6238dd1def61",
      "tree": "44ca9765d27bd1016d539d8ac6371c0f95e8af29",
      "parents": [
        "6a98c95feba069dcb66dcdb89d138460a01487f3"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 20:44:16 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Oct 02 18:16:12 2019 +0000"
      },
      "message": "Annotate boot profiles with the origin package names\n\nWhen profiling the boot image the samples are not annotated with the\npackage name that generating them.\n\nBug: 139884006\nTest: m test-art-host-gtest\nChange-Id: Ie90765eea0b930660081d4e8a4ea2cda09f72524\n"
    },
    {
      "commit": "6a98c95feba069dcb66dcdb89d138460a01487f3",
      "tree": "b55fe260ce7816fb691a767a5fdae69535438ae1",
      "parents": [
        "86bf2fe254f2e2b3511a9c6293c4cd3a238e465e"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Sep 26 20:21:21 2019 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Oct 02 18:16:12 2019 +0000"
      },
      "message": "Introduce the ability to annotate profile samples\n\nWe can now annotate profiles samples (classes or methods) with additional\nmetadata that will be persisted in the offline representation. Currently\nthe annotations support the package name that contributed the given\nsamples.\n\nWhen samples are annotated, they are grouped into distinct categories\nindexed by (dex_file, sample_annotation). This is achieved by extending\nthe profile key to include a serialized representation of the annotation.\n\nBecause they create independent groups in the profile, the annotations can\npotentially increase the profile size considerably so care should be taken\nwhen adding them in big numbers.\n\nInformation extraction (methods and classes) has also been extended to\nsupport the annotations. Users may choose to extract the info for\na particular group (dex_file, sample_annotation) or, as before, just for a\nsingle dex file. If the metadata is not given (e.g. when using profile\nguided compilation), the default search mechanism kicks in, and the first\ndex file matching the constraint is searched.\n\nBy extending the key representation, we preserve the previous profile\nbehaviour without the need to extended the underlying format or increase\nthe version.\n\nBug: 139884006\nTest: m test-art-host-gtest\n\nChange-Id: Iaccecd05c575bf0dac6dace6257cdafc6dc4a329\n"
    },
    {
      "commit": "86bf2fe254f2e2b3511a9c6293c4cd3a238e465e",
      "tree": "297b840e8d27b31417cb109625678642bfd77775",
      "parents": [
        "d5fe17eac91c5c0cefb2ab8093f41ddc68c2f724"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Sep 27 15:54:42 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Oct 02 12:40:06 2019 +0000"
      },
      "message": "Remove too agressive DCHECK.\n\nBoot classpath does contain soft failures, eg:\ncom.android.framework.protobuf.UnsafeUtil$JvmMemoryAccessor\n\nBug: 141606408\nTest: libartd boots\nChange-Id: Ife657a295560420fd69d14bc11c85720e250f4aa\n"
    },
    {
      "commit": "d5fe17eac91c5c0cefb2ab8093f41ddc68c2f724",
      "tree": "f3299a8fe9ff637545d8e97461d84f6294baa5b2",
      "parents": [
        "bd5690db112e7357bfa7634abbda9762e20959d7"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Oct 01 16:18:47 2019 -0700"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Oct 01 16:18:47 2019 -0700"
      },
      "message": "Fix incorrect narrowing type cast\n\nstd::string::npos is greater than the maximum value of uint32_t type,\nthe narrowing cast will make this statement always false.\n\nFound by Clang tautological-constant-out-of-range-compare warning.\n\nTest: N/A\nBug: 72331526\nChange-Id: I59b297360ab5672868f2cffc42ec02189275a152\n"
    },
    {
      "commit": "bd5690db112e7357bfa7634abbda9762e20959d7",
      "tree": "e124a7758df578f8d61934126fec0720a2f4b0e5",
      "parents": [
        "627d8d3d532f00ae7b6145887b39f9cf0a14b148"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Sep 30 15:39:15 2019 -0700"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 01 21:34:05 2019 +0000"
      },
      "message": "Make run-jdwp-tests.sh warn about deprecation\n\nSince the internal jdwp implementation is deprecated when running the\nJDWP test suite one should generally use ./tools/run-libjdwp-tests.sh\ninstead of ./tools/run-jdwp-tests.sh. This makes run-jdwp-tests.sh\nrequire a special flag to run if not invoked through\nrun-libjdwp-tests.sh or by LUCI. This should help ensure people run\nthe appropriate tests.\n\nTest: ./art/tools/run-jdwp-tests.sh --mode\u003dhost\nTest: ./art/tools/run-jdwp-tests.sh --mode\u003dhost --force-run-test\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003dhost\nChange-Id: Id31fddafe6112656945e544c0dba7a9629deb247\n"
    },
    {
      "commit": "627d8d3d532f00ae7b6145887b39f9cf0a14b148",
      "tree": "707e4fb9852e62d370c3f57bb54633764123bf08",
      "parents": [
        "4090657e44b16dcac5cb63c2151a2eee9472d968"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Sep 30 16:46:18 2019 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 01 20:42:21 2019 +0000"
      },
      "message": "Move bionic (\"runtime\") apex definition out of art/.\n\nBug: http://b/139176024\nTest: boots\nChange-Id: I0cb50dc10c3cd6c445e358dab7bcd12cab5f5b88\n"
    },
    {
      "commit": "4090657e44b16dcac5cb63c2151a2eee9472d968",
      "tree": "de386c9da5521f7e3b011df860fad9e43252721d",
      "parents": [
        "19cb8e2bcc1a26f23a9709daf96ad7ead96d05a7"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Sep 30 13:57:11 2019 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Oct 01 19:43:05 2019 +0000"
      },
      "message": "Deoptimize boot image when profiling boot class path\n\nUsed for getting JIT samples for boot image methods.\n\nTest: adb shell profman --dump-classes-and-methods --profile-file\u003d/data/misc/profiles/cur/0/android/primary.prof --apk\u003d/apex/com.android.art/javalib/core-oj.jar\nBug: 139883463\n\nChange-Id: Ib22b4539a24c7e57be8ac3e974e6681e754b06ff\n"
    },
    {
      "commit": "19cb8e2bcc1a26f23a9709daf96ad7ead96d05a7",
      "tree": "3e30d7f62a88042fe8575f1af3a67f902a4dc70a",
      "parents": [
        "30677103d4d4dfb2695f1d9c5a3a41ae64a66ec7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 01 10:48:37 2019 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Oct 01 16:04:25 2019 +0000"
      },
      "message": "Lower the check to class is initialized.\n\nKnowing if the class is visibly initialized is only for JIT/AOT compiled\ncode to avoid the memory barrier. For callers of `NeedsInitializationCheck`\nit\u0027s enough to just check whether the class is initialized.\n\nTest: test.py, 626-set-resolved-string\nChange-Id: I2b01e03139e70cdeb73e09a01519f8d096c09440\n"
    },
    {
      "commit": "30677103d4d4dfb2695f1d9c5a3a41ae64a66ec7",
      "tree": "bbd39e10afcb39210f1786752f0066cda4320f2c",
      "parents": [
        "de05550bf33d3441655cfddd66e788791f2412e7"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Tue Oct 01 12:54:10 2019 +0100"
      },
      "committer": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Oct 01 13:49:48 2019 +0000"
      },
      "message": "Raise timeout for method tracing to 30 mins.\n\nTest: Presubmits\nBug: 141742445\nChange-Id: I60199fbaf21d2203f051b3a0c1d08a778d029d29\n"
    },
    {
      "commit": "de05550bf33d3441655cfddd66e788791f2412e7",
      "tree": "6815d4af1a0a825df90318f753dc3afa71704ece",
      "parents": [
        "988c3911671598d7c840c65bf1cdfafa1e05c582"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Aug 02 13:41:35 2019 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 01 13:05:17 2019 +0000"
      },
      "message": "Use ClassStatus::kVisiblyInitialized in reflection.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: aosp_taimen-userdebug boots.\nTest: run-gtests.sh\nTest: testrunner.py --target --optimizing\nBug: 36692143\nChange-Id: I53342f5bb6285c9ca95445791dd10e04c6d8f962\n"
    }
  ],
  "next": "988c3911671598d7c840c65bf1cdfafa1e05c582"
}
