)]}'
{
  "log": [
    {
      "commit": "5168173dd6e79341b4b1f0a349721a2c7aa2a846",
      "tree": "e04b77281d1e767322e63fefb2ecab2850adff1a",
      "parents": [
        "90771c270b3b31dc608331027d7a83b192115138"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jan 30 10:12:00 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Feb 06 17:48:51 2018 -0800"
      },
      "message": "Use more ArrayRefs in quicken infos\n\nUse ArrayRef to get bound checks for debug builds.\n\nBug: 72608794\nBug: 63756964\nTest: test-art-host-gtest\n\nChange-Id: Ie423c969730c13b0cd936a64cbc7be07a716aa65\n"
    },
    {
      "commit": "90771c270b3b31dc608331027d7a83b192115138",
      "tree": "2160c6c30d1bf11478f80f4add1a921773063e8d",
      "parents": [
        "abee76ef780877132cf82c84f42e8ab50e6cc1d1",
        "ad666279a4af62e122f52cc7872efb812d82887f"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Feb 07 00:10:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 07 00:10:33 2018 +0000"
      },
      "message": "Merge \"Disable hidden API checks for Am\""
    },
    {
      "commit": "ad666279a4af62e122f52cc7872efb812d82887f",
      "tree": "709642c73fbd79f16a65eb1428fd2c625f7c3f19",
      "parents": [
        "6db9a6c240e0ef4c69448c7806c5d035b7b5b111"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 06 20:30:59 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Feb 06 21:41:18 2018 +0000"
      },
      "message": "Disable hidden API checks for Am\n\nAm starts its own runtime and its Java code should be exempt from\nhidden API checks. Change the logic in runtime.cc to disable hidden\nAPI checks by default and only enable them if:\n(a) dex2oat runs without -Xno-hidden-api-checks\n(b) zygote forks a new process without DISABLE_HIDDEN_API_CHECKS flag\n\nThis logic can be simplified by changing the flag from negative to\npositive. Since the cleanup requires touching multiple projects, it\nwill be done in a future CL.\n\nBug: 73001007\nBug: 64382372\nTest: manual\nChange-Id: I8a222f7a16bf88ffe4541558f3ba789f38d7322e\n"
    },
    {
      "commit": "8bcecf915545581bf23b5348cd94d3f5ec6eb669",
      "tree": "99146665aa76b27adb7d253cc8e14a48894207d4",
      "parents": [
        "045112c32ca814be43c5965de3b3006d313cfc90",
        "e11d50f23dc1256ad933d209f2db8f58138f02c0"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Tue Feb 06 18:35:41 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 06 18:35:41 2018 +0000"
      },
      "message": "Merge \"Workaround bogus Thread Safety Analysis warning\""
    },
    {
      "commit": "045112c32ca814be43c5965de3b3006d313cfc90",
      "tree": "5dda00be790a85be3134d49d7d4ca402d124d76f",
      "parents": [
        "ba562642c51f75bc60fcda2e7abaf80f2821cc61",
        "923a6943cbefb3effab3f739c154ed35c5870df4"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Tue Feb 06 18:35:41 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 06 18:35:41 2018 +0000"
      },
      "message": "Merge \"Ignore null-pointer-arithmetic warnings in external/dlmalloc\""
    },
    {
      "commit": "3a18e1fa56e103fe6e4bee85430fa87a0139aa19",
      "tree": "097fc609f3802ba6be297aa2e14e4aed804ed986",
      "parents": [
        "17eaf9926ade295b0a20a29a3873380f8f668f46",
        "c4d3bf4eaff9720ed0bb7775db6fc24a1bd755dd"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Feb 06 16:05:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 06 16:05:25 2018 +0000"
      },
      "message": "Merge \"Revert \"ART: Interpreter support for VarHandle accessors\"\""
    },
    {
      "commit": "c4d3bf4eaff9720ed0bb7775db6fc24a1bd755dd",
      "tree": "f84ebefc503e5cffb6df5989979492ae04f85cbb",
      "parents": [
        "becc83b59ff703c02198f832dbc3216a0ab8a022"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Feb 06 16:02:49 2018 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Feb 06 16:02:49 2018 +0000"
      },
      "message": "Revert \"ART: Interpreter support for VarHandle accessors\"\n\nThis reverts commit becc83b59ff703c02198f832dbc3216a0ab8a022.\n\nReason for revert: breaks on the ART buildbots due to localized toolchain differences.\n\nChange-Id: Ieb1d93b0fc7116ddc542d8bbfee1975bcb30a8f7\n"
    },
    {
      "commit": "17eaf9926ade295b0a20a29a3873380f8f668f46",
      "tree": "d0a2567378c12ab51a2aed6cd235e0ebbc056de4",
      "parents": [
        "436b6231ee469b071dce13af539cbcc549afb31a",
        "becc83b59ff703c02198f832dbc3216a0ab8a022"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 06 15:06:49 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 06 15:06:49 2018 +0000"
      },
      "message": "Merge \"ART: Interpreter support for VarHandle accessors\""
    },
    {
      "commit": "becc83b59ff703c02198f832dbc3216a0ab8a022",
      "tree": "38a3061481f01e2dcdc955bd9e9ddb60e0fd5a6f",
      "parents": [
        "1e5b3f39ff1776fd8b7d8d7d372347a08d98781b"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Dec 08 11:36:19 2017 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Feb 06 12:51:42 2018 +0000"
      },
      "message": "ART: Interpreter support for VarHandle accessors\n\nAdd support for invoking VarHandle accessors in the interpreter and\nforces code with VarHandles accessor invocations to use the interpreter.\n\nBug: 65872996\nTest: art/test/run-test --host 712\nChange-Id: I9ee3ad6aef6a3bc73d90cec0a8e023e5db42b7a2\n"
    },
    {
      "commit": "540d4be4514b3d02e046d5faebd3cb55a8ea9eff",
      "tree": "56e28ea3f48acae698e293342907727f66e0909c",
      "parents": [
        "14ef97b0a725aeb4f9a6d7c8223bacf90df2eb02",
        "279e3a3499d208daf467a1690b111dfb06f3e96e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Feb 06 00:15:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 06 00:15:25 2018 +0000"
      },
      "message": "Merge \"Enable code item deduping\""
    },
    {
      "commit": "279e3a3499d208daf467a1690b111dfb06f3e96e",
      "tree": "74c7d6d860bea25aabae47dc0ca95bafb0571f8e",
      "parents": [
        "ca6f1c0cb7655e90237583c1b6b771d3c8aae95d"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jan 24 18:17:55 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Feb 05 13:38:20 2018 -0800"
      },
      "message": "Enable code item deduping\n\nDedupe code items if they have the same contents, this is safe\nbecause of the fixed quickening logic.\n\nRemoved duplicate code items in ManyMethods that caused the startup\nmethods section to be empty in dex2oat_test.\n\nTo avoid errors related to quickening and compilation of shared code\nitems, quickening is currently disabled for shared code items.\n\nBug: 63756964\nTest: test-art-host\n\nChange-Id: I7c62eb746785d787c5269effd396f7be4859d3a6\n"
    },
    {
      "commit": "5681b72395d3112b1bca92291a7a047ac99ef1cb",
      "tree": "b9f3564612ec99c283af53dc70650c60ae468e0f",
      "parents": [
        "1a400bc46d859c3bf759d5e0cba694c0f1edc762"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Feb 05 11:04:15 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Feb 05 19:19:53 2018 +0000"
      },
      "message": "Revert \"Blacklist tests failing on valgrind.\"\n\nWe use the msync syscall to test if pages are mapped without actually\ngetting a segv. Valgrind (correctly) sees this as an illegal access.\nWe need to add the testing function to the valgrind suppression file.\n\nReason for revert: Added required valgrind suppressions\n\nThis reverts commit 45a6da0f6bd341d62fa753ac69bb4d31f219762f.\n\nBug: 72909916\nTest: mma -j40 valgrind-test-art-host-gtest-mem_map_test64\n\nChange-Id: Ib228570d0bb17c59df0e17a68de38ff25f63eeb9\n"
    },
    {
      "commit": "1e5b3f39ff1776fd8b7d8d7d372347a08d98781b",
      "tree": "f84ebefc503e5cffb6df5989979492ae04f85cbb",
      "parents": [
        "386568bc8979bd9b097259b8d58f2b02e81f816a",
        "7349d5dc0d10efaf03d4d51ab9f6c1f8ef8a833f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sun Feb 04 23:36:42 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Feb 04 23:36:42 2018 +0000"
      },
      "message": "Merge \"MIPS64: Fix art_quick_instrumentation_entry\""
    },
    {
      "commit": "45a6da0f6bd341d62fa753ac69bb4d31f219762f",
      "tree": "8443faf901d65377dd60b8f1fecbabdf53631b33",
      "parents": [
        "c4b731b944b2ceac546459873a54569f209dfc0f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Feb 04 14:08:07 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Feb 04 14:08:07 2018 +0000"
      },
      "message": "Blacklist tests failing on valgrind.\n\nbug: 72909916\nChange-Id: Ieabb341e7e15713580f96a9daea6b33921ca5306\n"
    },
    {
      "commit": "47c420bb5e81e64e6243c217da377bacf9dfcb40",
      "tree": "57c51b7d2f0e5c0b9f67093732dadb06830720c3",
      "parents": [
        "1be550542283ba9876dce18473268df1d41bc397",
        "92265222f1e1df56ee6d106493b1bd2be65d5ce9"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 03 03:58:20 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 03 03:58:20 2018 +0000"
      },
      "message": "Merge \"Only set UI warning on hidden API dark greylist\""
    },
    {
      "commit": "1be550542283ba9876dce18473268df1d41bc397",
      "tree": "ebfb1ea3e5bd32e53c5ad978a956b5b00f78d589",
      "parents": [
        "8e8f5e3b45432e458b6fe9c3af42d94b928b2b1e",
        "7a8b3f24e8c7190895e0cccbcc7e3c33908ced45"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 03 02:51:43 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 03 02:51:43 2018 +0000"
      },
      "message": "Merge \"Fix NE when DumpKernelStack\""
    },
    {
      "commit": "92265222f1e1df56ee6d106493b1bd2be65d5ce9",
      "tree": "d73a4f9708acbedb1d464c83c22756ac0eb68799",
      "parents": [
        "e5bf41acab7cc5a798a4d19425493a4af8f20436"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Feb 02 11:21:40 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Sat Feb 03 02:11:11 2018 +0000"
      },
      "message": "Only set UI warning on hidden API dark greylist\n\nThe framework might show a toast notification on access to greylisted\nhidden APIs. Only show this warning on dark greylist so as to not spam\nearly testers.\n\nBug: 64382372\nTest: make\nChange-Id: I8b5f7b4938e0f238c513e37d7db06856b966802f\n"
    },
    {
      "commit": "e29ccfd107defd1387740099f0f07116032ca76b",
      "tree": "d6d20cb9e1943487940d0cc06d82350955b496cc",
      "parents": [
        "60baf831ae3af26523631d0a3dbb187ea5b3d47d",
        "da1cdd0b1f89ef76def1c5fa8d2bea83c1a6cf48"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 02 23:40:56 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 02 23:40:56 2018 +0000"
      },
      "message": "Merge \"ART: Fix call site resolution\""
    },
    {
      "commit": "60baf831ae3af26523631d0a3dbb187ea5b3d47d",
      "tree": "63ad3c21cbfae9d5c9a59ef0c7aed7a0ba0f1101",
      "parents": [
        "0e7d8dd81d507ffac9f7c8c334391b0181970c94",
        "21f498fc58c0923bd18740bc102aa8b3000dc814"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 02 21:31:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 02 21:31:25 2018 +0000"
      },
      "message": "Merge \"Extend VLOG(signals) to be more useful.\""
    },
    {
      "commit": "0e7d8dd81d507ffac9f7c8c334391b0181970c94",
      "tree": "606e7ff0a6c6a83a817e86c8475de162da8ef23a",
      "parents": [
        "a927295aa29123fd85ac7a7f0e7c3763b5f7b974",
        "86e6814ac2224998c40f15af701ae41261b8f08e"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Feb 02 21:26:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 02 21:26:33 2018 +0000"
      },
      "message": "Merge \"Leave one more register for clang 7.0.\""
    },
    {
      "commit": "a927295aa29123fd85ac7a7f0e7c3763b5f7b974",
      "tree": "64e00ab597daea17274768c047ff0fab23cebb65",
      "parents": [
        "e65948f7c78919083224c1cd2ca47e827ced6d3e",
        "ca97ada4ec14373242de2452a6d0c16804007d66"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Feb 02 21:17:42 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 02 21:17:42 2018 +0000"
      },
      "message": "Merge changes I39354837,Id8e47f45\n\n* changes:\n  Change ClassFileLoadHook to lazily compute dex file\n  Remove unneeded mutator_lock_ requires from fixed_up_dex_file\n"
    },
    {
      "commit": "21f498fc58c0923bd18740bc102aa8b3000dc814",
      "tree": "f88a9bad93acfe306a66d128c99b5b8fdc09a55e",
      "parents": [
        "0406e1e59970399393f53923704e1b9a828b2173"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Feb 02 11:12:49 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Feb 02 11:35:53 2018 -0800"
      },
      "message": "Extend VLOG(signals) to be more useful.\n\n-verbose:signals was pretty useless because it didn\u0027t tell you much\nabout what the signal being examined actually was. Extend HandleFault\nlogging to include details about the signal being handled.\n\nTest: ./test/run-test --runtime-option -verbose:signals --host --dev 983\nChange-Id: I78baca685623c6b37f8148d6eeb2614c38fdfa69\n"
    },
    {
      "commit": "ca97ada4ec14373242de2452a6d0c16804007d66",
      "tree": "483cba96eb8cbc8e06a2ef8651f66d208626e30b",
      "parents": [
        "2e40c1c2e9c8cfc2d41a8960247bfa48e2500889"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Feb 02 09:25:31 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Feb 02 11:04:38 2018 -0800"
      },
      "message": "Change ClassFileLoadHook to lazily compute dex file\n\nCreating a dex file from the quickened or compact-dex\u0027d internal\nformat for calling the JVMTI ClassFileLoadHook is quite expensive.\nThis meant that agents could not generally listen for this event\nwithout causing unacceptable performance problems.\n\nSince agents will generally not touch the buffer, needing to\ninstrument only a handful of classes we will fix this problem by doing\nthe de-quickening lazily. This is done by mmaping an empty buffer with\nPROT_NONE and then filling it in when the program has a SEGV in the\nappropriate address range. This should improve the performance of any\nagent that listens for the ClassFileLoadHook but does not commonly do\nanything to the buffer.\n\nThis does have the disadvantage that we can no longer ensure that the\nbuffer size we pass down in class_data_len might no longer be fully\naccurate. Some agents that assert that class_data_len is exactly the\nsame as the dex-file will need to be updated.\n\nBug: 72402467\nBug: 72064989\nTest: ./test.py --host -j50\nTest: ./test.py --host --redefine-stress -j50\n\nChange-Id: I39354837f1417ae10a57c5b42cbb4f38f8a563dc\n"
    },
    {
      "commit": "86e6814ac2224998c40f15af701ae41261b8f08e",
      "tree": "84d6f7a59f41ce72730b01360a33629889d42451",
      "parents": [
        "e65948f7c78919083224c1cd2ca47e827ced6d3e"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Feb 02 10:25:55 2018 -0800"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Feb 02 10:56:05 2018 -0800"
      },
      "message": "Leave one more register for clang 7.0.\n\n* Clang 7.0 does not allow inline assembly to reserve so many registers.\n\nBug: 72613441\nTest: normal build\nChange-Id: I438e2864dcbdcfadbd06a3482437e9c4e4668f98\n"
    },
    {
      "commit": "da1cdd0b1f89ef76def1c5fa8d2bea83c1a6cf48",
      "tree": "8d7895389f46403c1a0cc8a5ddf8ff92c4355afb",
      "parents": [
        "2827ff64c7a385cfb9d6e01e6385708461eb65fc"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Jan 31 18:08:28 2018 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Feb 02 15:39:16 2018 +0000"
      },
      "message": "ART: Fix call site resolution\n\nParameter type resolution should use the target method\u0027s DEX file.\n\nBug: 70166093\nTest: art/test/run-test --host 714\nChange-Id: Ic4961a905144ee85b36d02476506c4078c6cdf7a\n"
    },
    {
      "commit": "fb3de3d72832177e4a8d1f322ed11cbe58e45c9f",
      "tree": "de8cded0436b54b2e5b1142b07fa75f0ed9791b0",
      "parents": [
        "2827ff64c7a385cfb9d6e01e6385708461eb65fc"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Jan 29 16:11:49 2018 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Feb 02 14:14:08 2018 +0000"
      },
      "message": "Create list of open dex files for libbacktrace.\n\nThis fixes unwinds after recent changes (oob apks; cdex data sharing).\n\nBug: 72520014\nTest: m test-art-host-gtest\nChange-Id: Ie2a02657b2afbe899acd2e61f0a57d207e688b99\n"
    },
    {
      "commit": "e01ec238cccd6a936d80d6fd09d924d566f3ad76",
      "tree": "848f66deae13043353e13eaba8464e233217b6b8",
      "parents": [
        "e5bf41acab7cc5a798a4d19425493a4af8f20436",
        "9b869ea9a0c65a3c4860768fae00f937ad969153"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Feb 02 11:55:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 02 11:55:00 2018 +0000"
      },
      "message": "Merge \"Fix heap size tracing during bulk thread-local allocations.\""
    },
    {
      "commit": "7349d5dc0d10efaf03d4d51ab9f6c1f8ef8a833f",
      "tree": "e3b7ad3e071a9f35746d27b79d8f44a68245d2d9",
      "parents": [
        "9657618bbf511c5a32281f1cd06ed4205536d81a"
      ],
      "author": {
        "name": "Goran Jakovljevic",
        "email": "goran.jakovljevic@mips.com",
        "time": "Fri Feb 02 10:01:10 2018 +0100"
      },
      "committer": {
        "name": "Goran Jakovljevic",
        "email": "goran.jakovljevic@mips.com",
        "time": "Fri Feb 02 10:08:52 2018 +0100"
      },
      "message": "MIPS64: Fix art_quick_instrumentation_entry\n\nLoad address of art_quick_instrumentation_exit before $gp register\nis restored in RESTORE_SAVE_REFS_AND_ARGS_FRAME.\n\nThis fixes a lot of tests like:\n* 099-vmdebug\n* 304-method-tracing\n* 545-tracing-and-jit\n* 802-deoptimization\n* 988-method-trace\nand many others as well as tests with --trace option.\n\nTest: ./testrunner --optimizing --target in QEMU\nTest: ./testrunner --optimizing --target --trace in QEMU\nChange-Id: I1c45c4a04a45ebe00cb63fbde547367be6de62cf\n"
    },
    {
      "commit": "7a8b3f24e8c7190895e0cccbcc7e3c33908ced45",
      "tree": "8b1a567e257972adbf7233e2fb67402a3abe3a4d",
      "parents": [
        "1d32a16f93d8bb479523fd237277ecbbff5bf1f4"
      ],
      "author": {
        "name": "yuanhao",
        "email": "yuanhao@xiaomi.com",
        "time": "Thu Feb 01 15:58:53 2018 +0800"
      },
      "committer": {
        "name": "yuanhao",
        "email": "yuanhao@xiaomi.com",
        "time": "Fri Feb 02 11:53:02 2018 +0800"
      },
      "message": "Fix NE when DumpKernelStack\n\nBefore kernel_stack_frames.pop_back(),\ncheck whether kernel_stack_frames is empty.\n\nBug: 72759265\nTest: manual\n\nChange-Id: I3e52d0a38ff868a278da94b2b80d44a324514934\nSigned-off-by: yuanhao \u003cyuanhao@xiaomi.com\u003e\n"
    },
    {
      "commit": "9657618bbf511c5a32281f1cd06ed4205536d81a",
      "tree": "f1ba5fd66b8f7575f15c1f7946d38b80926bf8ed",
      "parents": [
        "3e7110755fdbcd754aac32aa86d5d54b2476c9b4",
        "d8eb6736b994e70fecc2a5b0f78b0796aff82cdc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 02 02:33:14 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 02 02:33:14 2018 +0000"
      },
      "message": "Merge \"Lower a LOG(WARNING) to VLOG(deopt) in instrumentation\""
    },
    {
      "commit": "eeaf87f8590901a5c946c361320a0f237ded2eab",
      "tree": "c313e4d7dc11b9eae68ec5a518cfb825b0d25b9a",
      "parents": [
        "70e88d6df6cc97163fa8b2bdd756a6e910bc9aa5",
        "1077bbc81e008e73bfea18fbd6f4b9b8680b78a7"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 01 18:18:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 01 18:18:33 2018 +0000"
      },
      "message": "Merge \"Print dex signatures in hidden API warnings\""
    },
    {
      "commit": "70e88d6df6cc97163fa8b2bdd756a6e910bc9aa5",
      "tree": "3801c976e92f02247042e4c124f6b7dc00d4e435",
      "parents": [
        "cf026fec63bea5056988452a6c014df75bf13e19",
        "a02cb113cd0dd023eec61716d3d1bd0dc1c1453a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 01 15:54:46 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 01 15:54:46 2018 +0000"
      },
      "message": "Merge \"Move hidden API warnings into resolvers\""
    },
    {
      "commit": "cf026fec63bea5056988452a6c014df75bf13e19",
      "tree": "059aafe862dae8840e053ce2590e59707275abe9",
      "parents": [
        "67fd19dd5952b41fd119911492878c645d27e826",
        "2e349167ebdaf10dee9d68f06bbe620ed9aa841b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 01 15:51:43 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 01 15:51:43 2018 +0000"
      },
      "message": "Merge \"Enable hidden API enforcement\""
    },
    {
      "commit": "67fd19dd5952b41fd119911492878c645d27e826",
      "tree": "3589ffe63eb66e9808cba85a113e0a9a6fd1efc0",
      "parents": [
        "21dca7396476df0d3f09dee7058e1e175b8a21df",
        "8f99e0be3c036ec4db252d0adccdfcdce4b134c3"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Feb 01 15:31:05 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 01 15:31:05 2018 +0000"
      },
      "message": "Merge \"Check DEBUG_GENERATE_MINI_DEBUG_INFO when starting an app\""
    },
    {
      "commit": "21dca7396476df0d3f09dee7058e1e175b8a21df",
      "tree": "45c22aa065247825c7e7013bd7073278fd4f790c",
      "parents": [
        "0e9d0908a9462f8cc8881ae9a54e4fa131f3c3ea",
        "baeaa9b4517cfb8876369ff33c2bb92ff9c79ef1"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Feb 01 14:27:07 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 01 14:27:07 2018 +0000"
      },
      "message": "Merge \"dex2oat: Accept .dm files.\""
    },
    {
      "commit": "2e349167ebdaf10dee9d68f06bbe620ed9aa841b",
      "tree": "a2b9fc1f37f2e68352d0c2475fd5373ebf481686",
      "parents": [
        "c7e546ff3963a1d51b1f100d308db735bd19f736"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jan 24 19:52:24 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Feb 01 13:55:12 2018 +0000"
      },
      "message": "Enable hidden API enforcement\n\nTest: manual\nBug: 64382372\nChange-Id: I4cbbfb83a2fb697e78a22858cfdd6a6779e6762d\n"
    },
    {
      "commit": "1077bbc81e008e73bfea18fbd6f4b9b8680b78a7",
      "tree": "72b956e6147ab1659235644a00099926ac30926b",
      "parents": [
        "a02cb113cd0dd023eec61716d3d1bd0dc1c1453a"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jan 31 14:33:08 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Feb 01 13:47:39 2018 +0000"
      },
      "message": "Print dex signatures in hidden API warnings\n\nThis is more useful for collecting stats.\n\nTest: manual\nBug: 64382372\nChange-Id: I232ad63069b736a95aa44c3cf0240c1c2ba2906d\n"
    },
    {
      "commit": "a02cb113cd0dd023eec61716d3d1bd0dc1c1453a",
      "tree": "8553be51d5f6c2f0ebce20d7e364085ccf0a3206",
      "parents": [
        "c7e546ff3963a1d51b1f100d308db735bd19f736"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jan 31 11:36:39 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Feb 01 13:47:33 2018 +0000"
      },
      "message": "Move hidden API warnings into resolvers\n\nChecks inserted to maybe warn about accessing a hidden API member\nare proving too expensive. Move them into the resolvers.\n\nBug: 64382372\nBug: 72649186\nTest: art/test.py --host -b -r -t 674-hiddenapi -v\nChange-Id: I11bceccb8fe647e829c491be38ba0af72f1b3996\n"
    },
    {
      "commit": "0e9d0908a9462f8cc8881ae9a54e4fa131f3c3ea",
      "tree": "b46d45d62cc38ac045b410f5258d7c8aff9810a2",
      "parents": [
        "212e375f3f1b69bba5a96f1a6a44e4d28e546f4c",
        "8d728324571b720a952b297787eed70c7a1d1acb"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Feb 01 11:54:30 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 01 11:54:30 2018 +0000"
      },
      "message": "Merge \"Add compiler option for counting hotness in compiled code.\""
    },
    {
      "commit": "baeaa9b4517cfb8876369ff33c2bb92ff9c79ef1",
      "tree": "4c056b6847e958b58d8532159f5c15f9fbc0287a",
      "parents": [
        "b3c0c8086f85d415a3425bc17373e4c792d64b47"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 26 14:31:17 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Feb 01 11:54:00 2018 +0000"
      },
      "message": "dex2oat: Accept .dm files.\n\nAnd locate primary.vdex in it to do fast verification.\n\nbug: 63920015\nTest: 674-HelloWorld-Dm\nChange-Id: If920a6c7e4856a047a24bd30b049ef1ee16d7c1f\n"
    },
    {
      "commit": "da244c9249149655b303950ce3f432ce1d47a2e0",
      "tree": "fc92772c0465c1008869d39542f456076742aa90",
      "parents": [
        "2f8ad4bc3284358575aad06822cac1650512cb1b",
        "0225f8e2939a9340cb7dcebfcfe7996a2bd9bce9"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Thu Feb 01 09:27:46 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 01 09:27:46 2018 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Make libdexfile build independent of runtime dir\"\"\""
    },
    {
      "commit": "8848fe8ebe517f8c3765845a9d52dc48e2d931b1",
      "tree": "15b7f76dd1a5000ba1cac4beb9900778628c11dc",
      "parents": [
        "59949b79aa3fbb4ee6dc7f6e329ff7493d9fe1bf",
        "264a486a05e832889b17dd2bbad2d9c6588c3603"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 31 20:10:13 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 31 20:10:13 2018 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Make the runtime default to not allowing JDWP again.\"\"\""
    },
    {
      "commit": "264a486a05e832889b17dd2bbad2d9c6588c3603",
      "tree": "f6aa966402cf3678ceaac8a7d4c13ee35097ecc4",
      "parents": [
        "f346af51a5d44ee0a3cd26e7e0e1b28ec1c5579f"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Jan 31 16:47:58 2018 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Jan 31 09:48:16 2018 -0800"
      },
      "message": "Revert \"Revert \"Make the runtime default to not allowing JDWP again.\"\"\n\nThis reverts commit f05c32008de16f669ea8323c4e17beef1df92d20.\n\nWe need to change the arguments passed from run-jdwp-tests.sh in some\nsituations.\n\nReason for revert: Fixed issue causing go/art-build to fail.\n\nTest: ./art/tools/run-jdwp-tests.sh --mode\u003dhost\nBug: 72400560\n\nChange-Id: I2be260479816e3a48df5cb65bba25858750df4db\n"
    },
    {
      "commit": "8e9a5e82fe4f1beb6daddefb7b55226573f406be",
      "tree": "fe5246c42e03a66f847b345d908184a6a38bb07b",
      "parents": [
        "bad8437f82a7794c15f18e15fdae9c29543e4e4e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jan 31 09:45:27 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jan 31 09:45:27 2018 -0800"
      },
      "message": "Bump vdex version\n\nIn case devices have corrupted vdex files in /data/ bump the vdex\nversion to force regenerate.\n\nBug: 72608794\nTest: mm\nChange-Id: Ib24a6613a7b70f1f4b6fffbb3264bc51f80ba8bc\n"
    },
    {
      "commit": "02e33ab15593a5944e711f78f8f5e1d81a94c856",
      "tree": "bb0c6354518f21af959deae8b839f4b45e4efeaa",
      "parents": [
        "f346af51a5d44ee0a3cd26e7e0e1b28ec1c5579f",
        "aa129ff1bffdd6cbfe159f9381ba0babf42dddbd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 31 17:02:31 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 31 17:02:31 2018 +0000"
      },
      "message": "Merge \"Do not DCHECK intrinsics with hidden API flags\""
    },
    {
      "commit": "9b869ea9a0c65a3c4860768fae00f937ad969153",
      "tree": "418ba8519dfdabb4e23bd1be0bd18d4cddc6b2e1",
      "parents": [
        "8d8cf2e6098a8b167e03e387c50857477190bbad"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jan 31 13:46:11 2018 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jan 31 13:56:14 2018 +0000"
      },
      "message": "Fix heap size tracing during bulk thread-local allocations.\n\nThe value passed to Heap::TraceHeapSize in\nHeap::AllocObjectWithAllocator during bulk TL allocation was\nincorrectly taking into account `bytes_tl_bulk_allocated` twice.\n\nTest: m test-art-host\nChange-Id: If0219d8da08d8a1e84969d8e5426ade646b24dd7\n"
    },
    {
      "commit": "95fa4fd338f1716eadc378a1eea15d5b178dac83",
      "tree": "1161b4fa98cc9f72996830f0cae8d488a4f4abb7",
      "parents": [
        "c7e546ff3963a1d51b1f100d308db735bd19f736",
        "f05c32008de16f669ea8323c4e17beef1df92d20"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jan 31 11:24:15 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 31 11:24:15 2018 +0000"
      },
      "message": "Merge \"Revert \"Make the runtime default to not allowing JDWP again.\"\""
    },
    {
      "commit": "0225f8e2939a9340cb7dcebfcfe7996a2bd9bce9",
      "tree": "fd32362dff4ecdc8ff8b0d800a1b46fb0d9d0104",
      "parents": [
        "c7e546ff3963a1d51b1f100d308db735bd19f736"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Wed Jan 31 08:52:24 2018 +0000"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Wed Jan 31 01:24:53 2018 -0800"
      },
      "message": "Revert \"Revert \"Make libdexfile build independent of runtime dir\"\"\n\nThis reverts commit 787784f9effb126b5d0d3dc97d544c4a477b5daf.\n\nReason for revert: Bot configuration issue.\n\nChange-Id: I6a10bb4a9571f89c7e4dd095f9157e830a44e2de\nBug: 22322814\nTest: make -j 50 checkbuild\n"
    },
    {
      "commit": "f05c32008de16f669ea8323c4e17beef1df92d20",
      "tree": "449f6564eab8be9c38ea63c5e80bac5446203cfa",
      "parents": [
        "b06bd683aab50a80ef98f0ffbec9880dad068d15"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jan 31 07:34:46 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jan 31 07:34:46 2018 +0000"
      },
      "message": "Revert \"Make the runtime default to not allowing JDWP again.\"\n\nThis reverts commit b06bd683aab50a80ef98f0ffbec9880dad068d15.\n\nReason for revert: Broke go/art-build. Reverting as ART Sheriff.\n\nChange-Id: I1ab4f5eb22b51b3b348f592c22db340b88af4f7f\n"
    },
    {
      "commit": "bc718924e303339f30d5545e1088d55b772e0f5e",
      "tree": "3dac03e8a03c7aa3800706772601d47ee1a0ce90",
      "parents": [
        "cec262e99d2be886fa0b39de87cf937b69878ed3",
        "b06bd683aab50a80ef98f0ffbec9880dad068d15"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jan 30 19:55:28 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 30 19:55:28 2018 +0000"
      },
      "message": "Merge \"Make the runtime default to not allowing JDWP again.\""
    },
    {
      "commit": "cec262e99d2be886fa0b39de87cf937b69878ed3",
      "tree": "9cdd156b576249d968bbd0283da27575e64a0b79",
      "parents": [
        "85f890b792d1547182d195db3f43240180ab880b",
        "56776014d181b7ee386a2ba5d85cf66d8bb4dd22"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 30 19:19:41 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 30 19:19:41 2018 +0000"
      },
      "message": "Merge \"ART: Call ThreadGroup.add for attached threads\""
    },
    {
      "commit": "85f890b792d1547182d195db3f43240180ab880b",
      "tree": "1f30b196288ddd8fdc09614145d3c17acc92af94",
      "parents": [
        "d2b5229453af661572f0c76ac08dfd3f52727d5b",
        "787784f9effb126b5d0d3dc97d544c4a477b5daf"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Tue Jan 30 18:56:50 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 30 18:56:50 2018 +0000"
      },
      "message": "Merge \"Revert \"Make libdexfile build independent of runtime dir\"\""
    },
    {
      "commit": "787784f9effb126b5d0d3dc97d544c4a477b5daf",
      "tree": "1ff6d9fd284a4dd2a337165dff20e71137997c9d",
      "parents": [
        "b40b7e73469339a6b667b4a2e2b8690112a74dc9"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Tue Jan 30 18:48:51 2018 +0000"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Tue Jan 30 18:48:51 2018 +0000"
      },
      "message": "Revert \"Make libdexfile build independent of runtime dir\"\n\nThis reverts commit b40b7e73469339a6b667b4a2e2b8690112a74dc9.\n\nReason for revert: on device libdexfile.so missing\n\nChange-Id: I9bd61a98bef870400580e8c991cb061d3f57fa72\n"
    },
    {
      "commit": "aa129ff1bffdd6cbfe159f9381ba0babf42dddbd",
      "tree": "92264351aa2f08d0e8944884ae4b1c5536f4b08f",
      "parents": [
        "d2b5229453af661572f0c76ac08dfd3f52727d5b"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Jan 30 16:11:02 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Jan 30 18:26:23 2018 +0000"
      },
      "message": "Do not DCHECK intrinsics with hidden API flags\n\nSwitching an ArtMethod into an intrinsic wipes its hidden API flags.\nThose with flags therefore need to be special cased. Disable the\nDCHECK for these for the moment.\n\nBug: 64382372\nTest: make\nChange-Id: I8ea3f53a1a86fd7a2f82b215ca068eeafec88c49\n"
    },
    {
      "commit": "56776014d181b7ee386a2ba5d85cf66d8bb4dd22",
      "tree": "21b9f0411f565d9e49bce916e720b70a79145750",
      "parents": [
        "47ec7ad0f819c171e41d323aff71f5ac425b1ccd"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jan 26 17:40:55 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jan 30 09:26:22 2018 -0800"
      },
      "message": "ART: Call ThreadGroup.add for attached threads\n\nWhen attaching threads to the runtime, call ThreadGroup.add to\nlet the thread\u0027s group know that the thread is now started. This\nfixes incorrect internal accounting.\n\nTest: art/test/testrunner/testrunner.py -b --host -t 169\nTest: m test-art-host\nChange-Id: I60362b6b53acf06b97779ea9b3b0bc6264f1dc2d\n"
    },
    {
      "commit": "b06bd683aab50a80ef98f0ffbec9880dad068d15",
      "tree": "d9787a74a4b57fcdffd74fe98cf0f6ae74e21f85",
      "parents": [
        "0406e1e59970399393f53923704e1b9a828b2173"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jan 29 13:26:45 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Jan 30 09:11:16 2018 -0800"
      },
      "message": "Make the runtime default to not allowing JDWP again.\n\nThis was unintentionally changed a while ago and is causing a CTS test\nto fail. Changed to make the runtime default to disabling jdwp if a\nprovider isn\u0027t given. Note this does not stop one from starting a\ndebugger with -agentpath. If jdwp options are given with jdwp disabled\nthe runtime will print a warning.\n\nTest: atest CtsJdwpSecurityHostTestCases\nTest: ./test/run-test --host --debug 001-HelloWorld\nBug: 72400560\n\nChange-Id: I6561f269d9279eba0c1ac0b0f593ece867dab49e\n"
    },
    {
      "commit": "8f99e0be3c036ec4db252d0adccdfcdce4b134c3",
      "tree": "321b1946d7a846334acaf61f1bfed2ea01cfa0d1",
      "parents": [
        "ea5575b241222e3360963e944c1306330cdd16b8"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jan 30 14:44:52 2018 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jan 30 14:44:52 2018 +0000"
      },
      "message": "Check DEBUG_GENERATE_MINI_DEBUG_INFO when starting an app\n\nChange-Id: Ic95056ccc4a8aaabb16d199e88031b11e750c1a5\n"
    },
    {
      "commit": "ea5575b241222e3360963e944c1306330cdd16b8",
      "tree": "96fff85458cc411b2f329254abb045855dc7415a",
      "parents": [
        "8d8cf2e6098a8b167e03e387c50857477190bbad",
        "b40b7e73469339a6b667b4a2e2b8690112a74dc9"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Tue Jan 30 11:47:42 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 30 11:47:42 2018 +0000"
      },
      "message": "Merge \"Make libdexfile build independent of runtime dir\""
    },
    {
      "commit": "8d8cf2e6098a8b167e03e387c50857477190bbad",
      "tree": "3397a3936c4de5ef45839b2b19183e7d4d9723ed",
      "parents": [
        "9690ad794b324ba54e936608881ac0f62538b97a",
        "b21c7043037eb19289799b23eb9fa03d8956cd56"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Jan 30 11:33:45 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 30 11:33:45 2018 +0000"
      },
      "message": "Merge \"Fix loading of cdex files.\""
    },
    {
      "commit": "b40b7e73469339a6b667b4a2e2b8690112a74dc9",
      "tree": "7e8a34d9c7894c4c946f674f19f0a0a512b95184",
      "parents": [
        "9690ad794b324ba54e936608881ac0f62538b97a"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Thu Jan 25 17:11:07 2018 -0800"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Tue Jan 30 01:17:58 2018 -0800"
      },
      "message": "Make libdexfile build independent of runtime dir\n\nRemove libdexfile\u0027s dependency on utils.cc and move utf.cc into\n/dex.  Remove libdexfile\u0027s constituent sources from libart and\nuse libdexfile wherever libart is. Also remove some ART-specific\ninterfaces.  Libdexfile\u0027s tests remain to be converted, plus\nmoving the files to a new directory peer to runtime/.\n\nBug: 22322814\nTest: make -j 50 test-art-host\nChange-Id: Ifaf695216e4a0e43d3aa377984d933f7a2a243c2\n"
    },
    {
      "commit": "b21c7043037eb19289799b23eb9fa03d8956cd56",
      "tree": "9d8a293085afc00fc0f34bc9ec4d59d92c0dcea8",
      "parents": [
        "c6805743f4c2d4bf5fdbf4518e952645490b85e6"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Jan 29 21:10:59 2018 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Mon Jan 29 23:53:36 2018 +0000"
      },
      "message": "Fix loading of cdex files.\n\nIf the shared data section is not explicitly provided, we must pass\nnullptr to OpenCommon, which will in turn infer it from the header.\n\nBug: 72520014\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nChange-Id: I3eab0f68ff379f8d407f4bb00704ea54d5ae3452\n"
    },
    {
      "commit": "d8eb6736b994e70fecc2a5b0f78b0796aff82cdc",
      "tree": "bf4894e62a36f738274982167da4a7818cf9538d",
      "parents": [
        "0406e1e59970399393f53923704e1b9a828b2173"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jan 29 15:16:02 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jan 29 15:16:02 2018 -0800"
      },
      "message": "Lower a LOG(WARNING) to VLOG(deopt) in instrumentation\n\nDuring late-attach of a debugger it is fairly common for there to be\nnon-debuggable frames present. Change the instrumentation code to not\nprint a warning for all of them unless we have -verbose:deopt.\n\nTest: None\nChange-Id: I6f995f4d0eb5164e205a0eac209b4ff1e073d017\n"
    },
    {
      "commit": "1a824a5c1070648971ce9593a1dd71cdd8cf2f98",
      "tree": "1ff6d9fd284a4dd2a337165dff20e71137997c9d",
      "parents": [
        "0406e1e59970399393f53923704e1b9a828b2173"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Jan 26 15:45:30 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jan 29 19:42:40 2018 +0000"
      },
      "message": "Remove hiddenapi access flags in FixedUpDexFile\n\nThe hiddenapi tool will mess with the access flags of fields and\nmethods in order to record which are \u0027@hide\u0027. We need to undo this\nbefore passing any dex files down to jvmti agents.\n\nTest: ./test.py --host -j50\nBug: 72550707\nBug: 64382372\n\nChange-Id: Ibc9a96a6b541c06844f276db009ac29514f7a3bb\n"
    },
    {
      "commit": "58ddad4e8b003ed1c85d4c179857a619ed2c8eef",
      "tree": "5818cb49af59641313a01d91728e457633f68e84",
      "parents": [
        "7a5a3036f9d8f08871c1c6e03dfa25d3641593e2",
        "c1d3bacae473e9c64aada5885d1310f628dcd32c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 29 14:05:41 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 29 14:05:41 2018 +0000"
      },
      "message": "Merge \"ART: Type conversion fixes for MethodHandles\""
    },
    {
      "commit": "8d728324571b720a952b297787eed70c7a1d1acb",
      "tree": "f24a774aa56c236f2f756b1b439e4c61830bec56",
      "parents": [
        "0530796b73d0a33a5df27e3a7765c0835994769a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 18 22:44:32 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jan 29 09:34:05 2018 +0000"
      },
      "message": "Add compiler option for counting hotness in compiled code.\n\nFor eventually easier profiling of boot classpath and\nsystem server.\n\nbug: 30934496\nTest: 674-hotness-compiled\n\nChange-Id: I0f63c644527b74f6ef2649f481c2a1c731bb9f21\n"
    },
    {
      "commit": "c6805743f4c2d4bf5fdbf4518e952645490b85e6",
      "tree": "34711194742d48435e661d326b76a55eb658df37",
      "parents": [
        "0530796b73d0a33a5df27e3a7765c0835994769a",
        "a6e0e7df143deb1d022feac6a987e510fb4b2213"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Jan 29 09:32:59 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 29 09:32:59 2018 +0000"
      },
      "message": "Merge \"Special case JIT update for native methods.\""
    },
    {
      "commit": "c1d3bacae473e9c64aada5885d1310f628dcd32c",
      "tree": "4a50ef63911629de88d04b375c2f3321077ea8f5",
      "parents": [
        "26f927518fda8e334e2af2003056b44a9265d5a0"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jan 26 14:38:55 2018 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Jan 29 09:25:46 2018 +0000"
      },
      "message": "ART: Type conversion fixes for MethodHandles\n\nRemove illegal conversion path from byte to short.\n\nThrow WrongMethodTypeException on later error paths of reference to\nprimitive conversion.\n\nBug: 72489224\nTest: art/test.py --host -g\nChange-Id: Iddca81ee7185bb90cc5e8ab19cfa03ddfb1652ec\n"
    },
    {
      "commit": "49a5b9d0a59c3ec6c171d15f781a8e38b70352df",
      "tree": "79da9d98c6c940c50abb1d60727f78333bd99720",
      "parents": [
        "2183d4d5a65e77234a9d54d32bc0b6918a50c493"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Jan 24 22:34:27 2018 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Jan 26 22:29:43 2018 +0000"
      },
      "message": "Revert^2 \"Change default dalvik.vm.jdwp-provider to adbconnection\"\n\nWe modified adbconnection to not load the jdwp agent until it hits\nnon-DDMS packets. This ensures that using DDMS enabled tools with\nuserdebug builds will no longer cause unacceptable slowdowns due to\nloading the debugger on system_server and other system processes\n\nThis reverts commit 4650d4a37d6fa65dff936df2c8696aa98b072883.\n\nReason for revert: Issue with ddms and userdebug builds has been\n                   resolved.\n\nTest: Start up userdebug device while ddms monitor is running.\n\nTest: ./test.py --host -j50\nTest: ./art/tools/run-libjdwp-tests.sh --mode\u003ddevice\nTest: Build and run\nTest: use ddms monitor.\nTest: Use Android Studio.\nTest: Build and debug debuggable app (bandhook-kotlin)\nTest: Build and debug non-debuggable app on userdebug build\n      (bandhook-kotlin)\nTest: Debug running system process on userdebug build\n      (com.android.packageinstaller)\nTest: adb shell stop \u0026\u0026\n      adb shell setprop dalvik.vm.jdwp-provider adbconnection \u0026\u0026\n      adb shell start;\n      Test debugger with explicit adbconnection jdwp provider set\nTest: adb shell stop \u0026\u0026\n      adb shell setprop dalvik.vm.jdwp-provider default \u0026\u0026\n      adb shell start;\n      Test debugger with explicit default jdwp provider set\n      Ensure debugger is using the \u0027adbconnection\u0027 provider\nTest: adb shell stop \u0026\u0026\n      adb shell setprop dalvik.vm.jdwp-provider internal \u0026\u0026\n      adb shell start;\n      Test debugger with explicit internal jdwp provider set\n      Ensure debugger is using the old internal jdwp implementation.\n\nBug: 62821960\nChange-Id: I6d1231e56a0891cb8fd2acfd6f2413d87128fbb5\n"
    },
    {
      "commit": "2183d4d5a65e77234a9d54d32bc0b6918a50c493",
      "tree": "a4b6642d04824391c3965f7f5f46e9afc4595283",
      "parents": [
        "bf9eedaac5a9723f022150d0f5fd58cb91779497"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Jan 26 14:24:54 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Jan 26 22:29:00 2018 +0000"
      },
      "message": "Refactor jdwp_provider to make it easier to change the default\n\nChange JdwpProvider to have a kDefaultJdwpProvider member that can be\nupdated to be whatever the current default jdwp provider is.\n\nTest: build\nTest: cmdline_parser_test\nChange-Id: I89559cc63d371be60b594d850f1a16a557b42edc\n"
    },
    {
      "commit": "a6e0e7df143deb1d022feac6a987e510fb4b2213",
      "tree": "f8f113ab203ba2b0bef7b74ffe0717c994033c3a",
      "parents": [
        "8006cf1cd24d32809c937619d8d8568c8a1645ea"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 26 13:16:50 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 26 14:13:19 2018 +0000"
      },
      "message": "Special case JIT update for native methods.\n\nThe update might apply to ArtMethods that are going to be\nunloaded, so ensure we don\u0027t do read barriers there.\n\nTest: while ./art/test/run-test --host  --no-dex2oat --jit --host --no-prebuild \\\n        --compact-dex-level none --dex2oat-jobs 4 --no-relocate --runtime-option -Xcheck:jni \\\n        --build-with-javac-dx 674-hiddenapi ; do true; done\n\nChange-Id: I95ec6107c65da25f4b98f7fb77647b3ab382a93f\n"
    },
    {
      "commit": "13a677c5554b274d3e13e058f57f0f314aa0d38d",
      "tree": "d535e5d0cdf97bf837137fe8628c184832ab7b68",
      "parents": [
        "144c34f4efd8d476e562b25a5492c7734b087b1e",
        "d9f4d64c45b5f4dc2f5816e7cd9f3a3f608a60dd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 25 23:04:16 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 23:04:16 2018 +0000"
      },
      "message": "Merge \"Enable filtering of profile data on load\""
    },
    {
      "commit": "144c34f4efd8d476e562b25a5492c7734b087b1e",
      "tree": "56065df69ad0006703ace191e42823f47ea35f5f",
      "parents": [
        "05dd001ace005ad20bdc5ad2b7593a81825afe82",
        "c9e020852645b24ce9e3db7d1480aa9e72057146"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Jan 25 22:26:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 22:26:04 2018 +0000"
      },
      "message": "Merge \"Log JIT mini-debug-info memory usage.\""
    },
    {
      "commit": "05dd001ace005ad20bdc5ad2b7593a81825afe82",
      "tree": "52692bf778d4835e2771f5328ccee9367bd65cd8",
      "parents": [
        "44720c6fb84f85bd7628a020ed1097e744f0b660",
        "39d7589745f559b84b58d008f67c3aaf364b0370"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Jan 25 22:20:21 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 22:20:21 2018 +0000"
      },
      "message": "Merge \"Always generate JIT mini-debug-info for debuggable apps.\""
    },
    {
      "commit": "44720c6fb84f85bd7628a020ed1097e744f0b660",
      "tree": "e6a2d4af4dc64e45b1847ea3656894fad7c42e6c",
      "parents": [
        "3288ac58275f77d9b530bf21c0f4290540d3e831",
        "9b302bf57c9966dcac51582d83ea7606666c500b"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jan 25 21:29:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 21:29:39 2018 +0000"
      },
      "message": "Merge \"Fix method handles using wrong section\""
    },
    {
      "commit": "9b302bf57c9966dcac51582d83ea7606666c500b",
      "tree": "032beea38c2c75dddec0fb19399791c8d3f25953",
      "parents": [
        "816ca4d083ae9c439be587a0192906fe1510a123"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jan 25 13:08:08 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jan 25 13:09:19 2018 -0800"
      },
      "message": "Fix method handles using wrong section\n\nFor compact dex, the method handles were using offsets relative to\ndata section instead of main section. Fixed this code and the map\nlist offset logic in InitializeSectionsFromMapList.\n\nTest: test/run-test  --always-clean --dex2oat-jobs 4 --host --prebuild --compact-dex-level fast --optimizing --no-relocate --runtime-option -Xcheck:jni 979-const-method-handle\nBug: 63756964\nChange-Id: I9e6ddfd77da99ae1aedef7591536be190ff60904\n"
    },
    {
      "commit": "d9f4d64c45b5f4dc2f5816e7cd9f3a3f608a60dd",
      "tree": "858892fd7dfcf36c2924c48f02800e8c5faf6b60",
      "parents": [
        "9174401ae421d350a2561e5b70d15b405940856d"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jan 24 20:33:00 2018 -0800"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Jan 25 13:08:57 2018 -0800"
      },
      "message": "Enable filtering of profile data on load\n\nThis is useful for filtering profile data that does not belong to certain\napks when taking profile snapshots.\n\nBug: 30934496\nTest: profile_compilation_info_test\nChange-Id: I2100031756ef3a20eb4cbab08ddbebb067489410\n"
    },
    {
      "commit": "5bfcc23d65009e8285acfbe7f7b1e952d94ad0c7",
      "tree": "e28801fd505b9d4f1f2d89d2c202141aef50e7a2",
      "parents": [
        "a84db1edf04a0d7c93123528e90199a8f5cf1f3e",
        "4384b104a5a023535fc613d7f08564b681f164b6"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Jan 25 19:53:13 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 19:53:13 2018 +0000"
      },
      "message": "Merge \"Expose pending hidden API warning through VMRuntime\""
    },
    {
      "commit": "816ca4d083ae9c439be587a0192906fe1510a123",
      "tree": "c928fcb0c57e3e277bf004ba24b0f893c8915b09",
      "parents": [
        "b7b2957f79a33fc15ee48ff6709e9b080a266b07",
        "bff7a52e2c6c9e988c3ed1f12a2da0fa5fd37cfb"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 25 18:44:30 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 18:44:30 2018 +0000"
      },
      "message": "Merge \"Revert \"Compiler changes for bitstring based type checks.\"\""
    },
    {
      "commit": "b7b2957f79a33fc15ee48ff6709e9b080a266b07",
      "tree": "1f067c06567eb1af14304b099a1bcabd50202f6e",
      "parents": [
        "6e76c6cb1f5fd93f15e680273e0473f3e5af8387",
        "c3a22aa19bbe35ff8447460b29e07d42937a39de"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jan 25 17:27:23 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 17:27:23 2018 +0000"
      },
      "message": "Merge \"Add shared separate data section for compact dex\""
    },
    {
      "commit": "bff7a52e2c6c9e988c3ed1f12a2da0fa5fd37cfb",
      "tree": "e281a8dde61e396ed5f20c31d41086b1b1b18389",
      "parents": [
        "83af48e9f4cdfcf3f0069c63561bab4c176bd2f1"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 25 13:33:07 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 25 15:05:16 2018 +0000"
      },
      "message": "Revert \"Compiler changes for bitstring based type checks.\"\n\nBug: 64692057\nBug: 71853552\nBug: 26687569\n\nThis reverts commit eb0ebed72432b3c6b8c7b38f8937d7ba736f4567.\n\nChange-Id: I7daeaa077960ba41b2ed42bc47f17501621be4be\n"
    },
    {
      "commit": "83af48e9f4cdfcf3f0069c63561bab4c176bd2f1",
      "tree": "5d3728ebff12fdf13d324628c1cc996f1c425f7a",
      "parents": [
        "9779e6f470f91a688d81e7edd5f9e3990abafe32",
        "c06d6c60fcd8e0a66d9e8dc51a8f35e8f87454c8"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Jan 25 14:27:58 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 14:27:58 2018 +0000"
      },
      "message": "Merge \"Remove art::gc::Heap::allocation_rate_.\""
    },
    {
      "commit": "4384b104a5a023535fc613d7f08564b681f164b6",
      "tree": "d417f3b2ef61402bd209da26b49afaf22cd1ec60",
      "parents": [
        "9779e6f470f91a688d81e7edd5f9e3990abafe32"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Jan 23 16:10:36 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Jan 25 14:17:03 2018 +0000"
      },
      "message": "Expose pending hidden API warning through VMRuntime\n\nFramework might want to show a warning message to the user when the\napp has used hidden APIs. Add a JNI method through which framework\ncan query ART about the state of the warning flag.\n\nBug: 64382372\nTest: make\nChange-Id: I9d63db39b4d351647e6de8a64daa30c3288a5bee\n"
    },
    {
      "commit": "9779e6f470f91a688d81e7edd5f9e3990abafe32",
      "tree": "20bd76929b9f40c5ef4ba73612507e79d4c9f52f",
      "parents": [
        "1759f616e32ca90d4439eeb045b23c01e76be850",
        "ee7d2fd16d47b54d7fb5b9d5ec772fbc315faf4b"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Jan 25 14:08:48 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 14:08:48 2018 +0000"
      },
      "message": "Merge \"Start warning on hidden API greylist\""
    },
    {
      "commit": "1759f616e32ca90d4439eeb045b23c01e76be850",
      "tree": "255646e7e0de24234835817c901cfa45b09a2f18",
      "parents": [
        "83047434e9068afc4114e763a6fbdabeb84ead9b",
        "5a61bb7969347ffe8e0bf4f4dff841cc6c21ed85"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 25 13:54:16 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 13:54:16 2018 +0000"
      },
      "message": "Merge \"Start enforcing hidden API blacklist\""
    },
    {
      "commit": "83047434e9068afc4114e763a6fbdabeb84ead9b",
      "tree": "7ea791b513fa0e7fce7d2edad1ba5aad54918a64",
      "parents": [
        "8dc11b7951ebb0c8cf3166c0835dcbcbafc01c2b",
        "0be8cabf16ee5fa5186bc90471911336f6c01f19"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 25 12:39:50 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 12:39:50 2018 +0000"
      },
      "message": "Merge \"Revert \"ART: Use the bitstring type check for AOT app compilation.\"\""
    },
    {
      "commit": "0be8cabf16ee5fa5186bc90471911336f6c01f19",
      "tree": "0ff068df6465b52458ecca3de96d119234415def",
      "parents": [
        "718e8319c728e9ee2ec15b1d56ca96baa4393028"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 25 10:47:41 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 25 10:47:41 2018 +0000"
      },
      "message": "Revert \"ART: Use the bitstring type check for AOT app compilation.\"\n\nTest failures:\nhttp://build.chromium.org/p/client.art/builders/fugu-debug/builds/4875\n\n01-25 02:05:28.357 23732 23732 F /data/local/tmp/system/bin/../bin/dalvikvm: quick_throw_entrypoints.cc:132] Check failed: !dest_type-\u003eIsAssignableFrom(src_type) \n\n\nThis reverts commit 718e8319c728e9ee2ec15b1d56ca96baa4393028.\n\nChange-Id: I022f88cd81ae99143e5670ae29eae326ecc83cc2\n"
    },
    {
      "commit": "ee7d2fd16d47b54d7fb5b9d5ec772fbc315faf4b",
      "tree": "844ed2998f78723aa7909ce0a7b19995c34f0bd9",
      "parents": [
        "5a61bb7969347ffe8e0bf4f4dff841cc6c21ed85"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Sat Jan 20 17:25:23 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Jan 25 10:40:56 2018 +0000"
      },
      "message": "Start warning on hidden API greylist\n\nInsert checks into reflection, JNI and the verifier to print\na warning when greylisted methods are invoked and fields accessed.\nWe do this on actual access, because reflection allows to list\nall methods/fields and simply listing a greylisted member would\nprint too many false positives.\n\nIssuing a warning also sets a boolean flag in Runtime. This will\nbe made accessible through VMRuntime to the framework which will\nissue a Toast on Activity start.\n\nThe change was tested with internal microbenchmarks of reflection\nand those flagged one issue. Microbenchmark invoking a field getter\nhas regressed by 35%. We will profile this benchmark in detail and\nconsider options for improvement. Bug b/72482474 was created to track\nprogress.\n\nTest: art/test.py -b -r -t 674-hiddenapi\nBug: 64382372\nBug: 72482474\nChange-Id: I323244935e9091a2f8d012385cefaac6b1fe3777\n"
    },
    {
      "commit": "5a61bb7969347ffe8e0bf4f4dff841cc6c21ed85",
      "tree": "44c266c97576dcbdc931cf94d81774614a2c762b",
      "parents": [
        "d02784e17c20c91a50dcb10522351f4937e250ff"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Jan 19 16:59:46 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Jan 25 10:11:11 2018 +0000"
      },
      "message": "Start enforcing hidden API blacklist\n\nInsert checks into reflection, JNI and Class::CanAccessMember to\nmake blacklisted hidden APIs undiscoverable.\n\nThe change was tested with internal microbenchmarks of reflection\nand those showed no measurable performance impact.\n\nTest: art/test.py -b -r -t 674-hiddenapi\nBug: 64382372\nChange-Id: I9e39804b837ae9ffeba926f2a5b1e8e9986c472b\n"
    },
    {
      "commit": "5cee0a321d4b250ab7553bdca5c35cf507528deb",
      "tree": "dc56ab8316133e22c9ae190c765462a0ab4272ab",
      "parents": [
        "9174401ae421d350a2561e5b70d15b405940856d",
        "bc177271536cf22cc43a32a58cbec3dc41a66467"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Jan 25 08:58:28 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 08:58:28 2018 +0000"
      },
      "message": "Merge \"dex2oat: Test whether the passed vdex has no dex file.\""
    },
    {
      "commit": "c3a22aa19bbe35ff8447460b29e07d42937a39de",
      "tree": "9f795deb249eebcf573dfe07a98d70c1d52ce898",
      "parents": [
        "d3233abdf14f173bb99e3905e8543ffff845230e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jan 19 18:58:34 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jan 24 19:53:20 2018 -0800"
      },
      "message": "Add shared separate data section for compact dex\n\nAdded a shared dex data buffer for compact dex files, this buffer\nis referenced by all compact dex files in a vdex file. Repurposed\nthe existing data_off / data_size fields in the header.\n\nAfter the shared buffer is filled up, it is placed after the dex\nfiles in the oat writer and the dex file headers are fixed up to have\nthe correct offsets / sizes to the shared buffer.\n\nMotivation:\nMake it easy to deduplicate data across dexes.\n\nBug: 63756964\nTest: test-art-host\nChange-Id: I17855a0c78b20be3d323d12dedb9c695962be3ed\n"
    },
    {
      "commit": "9174401ae421d350a2561e5b70d15b405940856d",
      "tree": "562ef4aabed8a09680d926d9bd3b95a21e4b75b8",
      "parents": [
        "d3233abdf14f173bb99e3905e8543ffff845230e",
        "2dba0ab8498e5ff3ba5be2e37e26310a661cf259"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Jan 25 01:12:36 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 25 01:12:36 2018 +0000"
      },
      "message": "Merge \"Enable profile key updates via profman\""
    },
    {
      "commit": "d3233abdf14f173bb99e3905e8543ffff845230e",
      "tree": "e1fd1abd81da728cd004b1982f7c04cccfa7d6b0",
      "parents": [
        "0e920facfcc1cdc12f08ef269746563f8f801f9b",
        "718e8319c728e9ee2ec15b1d56ca96baa4393028"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Wed Jan 24 21:26:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 21:26:25 2018 +0000"
      },
      "message": "Merge \"ART: Use the bitstring type check for AOT app compilation.\""
    },
    {
      "commit": "bc177271536cf22cc43a32a58cbec3dc41a66467",
      "tree": "1264ffa027c02e8f813aa8330ecf7970d4e91e44",
      "parents": [
        "e714e96e78bfdf6c608fdc01de45515e73fa2a8d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 24 14:55:32 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 24 20:32:50 2018 +0000"
      },
      "message": "dex2oat: Test whether the passed vdex has no dex file.\n\nIn such a case, use the passed APK instead.\n\nbug: 63920015\nTest: 674-vdex-uncompressed\nChange-Id: Icec87e6a6b65091a800ebec28b47d35daa6711c9\n"
    },
    {
      "commit": "2dba0ab8498e5ff3ba5be2e37e26310a661cf259",
      "tree": "4dcc90f214855c7521817f9809712726132d4a1e",
      "parents": [
        "49971eb50c0213b7506bdd29954a6a4423e6426a"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Jan 22 19:22:24 2018 -0800"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jan 24 12:14:47 2018 -0800"
      },
      "message": "Enable profile key updates via profman\n\nAllow profman to update the profile key in an existing profile based on\nnew dex location.\n\nThis is needed in order to support profiles for dex files that might move\nfrom their original profiling location (e.g. during install)\n\nThe matching [profile key \u003c-\u003e dex_file] is done based on the dex checksum\nand the number of methods ids. If neither is a match then the profile key\nis not updated. If the new profile key would collide with an existing key\n(for a different dex) then the update will fail.\n\nTest: profile_compilation_info_test\nBug: 30934496\n\nChange-Id: Ic696b3f6fe9da2007421bf044d58a21c90fd9ee7\n"
    },
    {
      "commit": "c06d6c60fcd8e0a66d9e8dc51a8f35e8f87454c8",
      "tree": "a709103822c54791cd62f553fdb38c1259edee8e",
      "parents": [
        "e714e96e78bfdf6c608fdc01de45515e73fa2a8d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jan 24 17:51:35 2018 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Jan 24 17:51:35 2018 +0000"
      },
      "message": "Remove art::gc::Heap::allocation_rate_.\n\nThis member is no longer used anywhere.\n\nTest: mmma art\nChange-Id: Ieb11ea74b27c3df9d818c420c50cc04d0f4cfb26\n"
    },
    {
      "commit": "8c0961f9e061ee4b04c1c4ba8ad5cca13bcf884d",
      "tree": "f6e5a970a6bcc0935e150cb6c28a520bf31ba964",
      "parents": [
        "2b1a21ed3581f77f34d582507177ebce33565534"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Tue Jan 23 16:11:38 2018 -0800"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Wed Jan 24 09:24:29 2018 -0800"
      },
      "message": "Move missed files to libdexfile\n\nReduce the dependencies on utf and utils in preparation for separate\ndirectory.\n\nBug: 22322814\nTest: make -j 50 test-art-host\n      make -j 50 dexdump2 dexlist\n\nChange-Id: Icdecf895dafec63ef903514eef79d459abc14925\n"
    },
    {
      "commit": "c9e020852645b24ce9e3db7d1480aa9e72057146",
      "tree": "7dbdb71d2513d0885d9698f266f5ef728e6458fd",
      "parents": [
        "39d7589745f559b84b58d008f67c3aaf364b0370"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jan 24 16:44:02 2018 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jan 24 16:52:06 2018 +0000"
      },
      "message": "Log JIT mini-debug-info memory usage.\n\nChange-Id: I0ffa6fb466b1635e724b0e782702303b92355408\n"
    },
    {
      "commit": "39d7589745f559b84b58d008f67c3aaf364b0370",
      "tree": "85d4e7b80c92325413770b18914bf0a70aa8e7df",
      "parents": [
        "6650b0db52eee45f024652bae526ad64166ae02f"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jan 24 16:06:46 2018 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Jan 24 16:06:46 2018 +0000"
      },
      "message": "Always generate JIT mini-debug-info for debuggable apps.\n\nChange-Id: I863ae20cab5a86fc63bf34fde17c9181308a459c\n"
    },
    {
      "commit": "2b1a21ed3581f77f34d582507177ebce33565534",
      "tree": "cd27b9f81588d3942d0fd7d61fceb5f3128484a1",
      "parents": [
        "f450a37b16062980d93a8744408c9b710895c22d",
        "29742602424fe8a30884a00947120bd3407f4da6"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Jan 24 15:47:20 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 15:47:20 2018 +0000"
      },
      "message": "Merge \"Load /data oat/odex files non-executable when only_use_system_oat_files is set.\""
    },
    {
      "commit": "000a0ada6bfab0138936f03c4cfe8aecd835add5",
      "tree": "0e5c1e808dba93c365f6674ce560eb732782f3a1",
      "parents": [
        "e714e96e78bfdf6c608fdc01de45515e73fa2a8d",
        "8714435022757567aa078601f54244b8339bbed1"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Jan 24 15:16:33 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 24 15:16:33 2018 +0000"
      },
      "message": "Merge \"Disable DCHECK for an intrinsic with hidden API flags\""
    }
  ],
  "next": "8714435022757567aa078601f54244b8339bbed1"
}
