)]}'
{
  "log": [
    {
      "commit": "24c14221c4cb2175406cd4406043dfd38b9b83fe",
      "tree": "afc6ce1aef9b5ae3c62c4b30eae1c8ba215a1397",
      "parents": [
        "0633365c40e32fda28d06ef94e6e3e3d8dab697f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Dec 10 10:16:15 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Dec 10 21:14:57 2018 +0000"
      },
      "message": "ART: Fix or nolint cert-dcl16-c\n\nBug: 32619234\nBug: 120614316\nTest: m\nChange-Id: I9ab82cbf3bdcb52a2f85e37d06bbd6d8f415cb15\n"
    },
    {
      "commit": "0633365c40e32fda28d06ef94e6e3e3d8dab697f",
      "tree": "11f28f180937d2fdbd934d2f9f9ada2fa30f42b0",
      "parents": [
        "b0c3661ac792f4243deddddad2e940a0dce67b0a",
        "3ea432213ec55691f184dbfddbbc1b96a114cd16"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Dec 10 17:03:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 10 17:03:12 2018 +0000"
      },
      "message": "Merge \"Create thread pool only during app image loading\""
    },
    {
      "commit": "b0c3661ac792f4243deddddad2e940a0dce67b0a",
      "tree": "0fa37f96e73ecce9afb52c6758b53e6f1abe05ef",
      "parents": [
        "1a89ac011f4ea61a32619c57991a2b8ddb4e0271",
        "ca0f2dceb2ab4fdbebf9d2b75c774c363b4191b4"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 10 16:44:13 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 10 16:44:13 2018 +0000"
      },
      "message": "Merge \"Fix ComputeModifiedUtf8Hash().\""
    },
    {
      "commit": "1a89ac011f4ea61a32619c57991a2b8ddb4e0271",
      "tree": "6d4f91d7b38cacf5e8f8d6f81c3dbd95e24e8b9c",
      "parents": [
        "5e4663a59190c268e55809ac27affd7aa3aefd06",
        "38b86dff17966f4dfb302e3c9585eb43aacaf599"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Dec 10 15:32:52 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 10 15:32:52 2018 +0000"
      },
      "message": "Merge \"Support specifying multiple implicit member signatures per class\""
    },
    {
      "commit": "ca0f2dceb2ab4fdbebf9d2b75c774c363b4191b4",
      "tree": "a2d6822b068e29c2bab2edc643dd208206e2e77b",
      "parents": [
        "b023b3fd99a3369479e965c8e5d1d79b2491f75d"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 10 12:14:36 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 10 15:14:40 2018 +0000"
      },
      "message": "Fix ComputeModifiedUtf8Hash().\n\nExplicitly cast the character to uint8_t so that we do not\nproduce different results depending on whether the platform\nhas a signed or unsigned char.\n\nTest: Additional test in utf_test.\nBug: 120749178\nChange-Id: Icf329baa9eb95c2db820b51873e72d95aabf398e\n"
    },
    {
      "commit": "5e4663a59190c268e55809ac27affd7aa3aefd06",
      "tree": "b35122fb864e22427b9e7c381a4b982852f3be74",
      "parents": [
        "b023b3fd99a3369479e965c8e5d1d79b2491f75d",
        "3a16a8f56e989a13419abb554a6f14a9a35570b7"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 10 14:04:01 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 10 14:04:01 2018 +0000"
      },
      "message": "Merge \"RFC: ART: ARM64: Support SDOT/UDOT instructions.\""
    },
    {
      "commit": "b023b3fd99a3369479e965c8e5d1d79b2491f75d",
      "tree": "12899651d6ec24d35a34babbb992e189df77b93f",
      "parents": [
        "2d17c5149bd96327e8e306986f3539429d1d98fe",
        "ad2845c0c1322210d39ba1cdbecb2094e156120c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 10 13:03:46 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 10 13:03:46 2018 +0000"
      },
      "message": "Merge \"ART: fix overflow in weighted allocated bytes metrics\""
    },
    {
      "commit": "3ea432213ec55691f184dbfddbbc1b96a114cd16",
      "tree": "3bbbff5fa296ae99e5fe1a908b02ae22cc5ff5f8",
      "parents": [
        "e3c6dfe2009d2fad6f8e4401cb17935bdd09ab9e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sat Dec 08 20:44:50 2018 -0800"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Dec 10 11:38:18 2018 +0000"
      },
      "message": "Create thread pool only during app image loading\n\nPrevent having a persistent thread pool that is only used during app\nimage loading. This saves RAM.\n\nBug: 116052292\nBug: 120622973\nTest: test-art-host\nChange-Id: I79ff75d593e001a6c48d50b95865550a24772078\n"
    },
    {
      "commit": "2d17c5149bd96327e8e306986f3539429d1d98fe",
      "tree": "fca941e7b216abd17a51d9ea0ba3d8aab059a05d",
      "parents": [
        "5ab44e73e5f9e2403e0cac0a448b35378dae1de8",
        "7391c8ce016c9bcd9e7cec91fb8dcf29f5ca5909"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 10 11:37:37 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 10 11:37:37 2018 +0000"
      },
      "message": "Merge \"Store additional information in image header.\""
    },
    {
      "commit": "7391c8ce016c9bcd9e7cec91fb8dcf29f5ca5909",
      "tree": "fca941e7b216abd17a51d9ea0ba3d8aab059a05d",
      "parents": [
        "5ab44e73e5f9e2403e0cac0a448b35378dae1de8"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Nov 21 17:58:44 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 10 11:31:57 2018 +0000"
      },
      "message": "Store additional information in image header.\n\nStore the reservation needed for loading the boot image and\nthe number of boot class path components. The former helps\navoid one extra file open+read+close when loading the boot\nimage and the latter shall be used in subsequent CLs to load\nboot image for a partial boot class path.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: Pixel 2 XL boots.\nBug: 119868597\nChange-Id: I01dba923cfa3f8faf0e41a4139b8913c78404d54\n"
    },
    {
      "commit": "5ab44e73e5f9e2403e0cac0a448b35378dae1de8",
      "tree": "51c3662e77caed93c16df30321723ee51e2a2d86",
      "parents": [
        "95c591573686f75e32e9edd01777b8a42b186208",
        "d57c51e9cffd3684401286a1c8797015ce52b77c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Dec 10 11:30:39 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 10 11:30:39 2018 +0000"
      },
      "message": "Merge \"Fix scheduler_stats may resize to negative value\""
    },
    {
      "commit": "d57c51e9cffd3684401286a1c8797015ce52b77c",
      "tree": "51c3662e77caed93c16df30321723ee51e2a2d86",
      "parents": [
        "95c591573686f75e32e9edd01777b8a42b186208"
      ],
      "author": {
        "name": "Evan Cheng",
        "email": "evan.cheng@mediatek.com",
        "time": "Fri Jan 26 15:43:08 2018 +0800"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Mon Dec 10 09:54:16 2018 +0000"
      },
      "message": "Fix scheduler_stats may resize to negative value\n\nscheduler_stats will be empty when thread had been exited.\n\nTest: This issue occurred on MTBF-Monkey test, however,\nthe root cause can be verified on the source code.\n\nChange-Id: Ie8e61683126432aa03edef9ebbbf4baaadbdeafd\n"
    },
    {
      "commit": "95c591573686f75e32e9edd01777b8a42b186208",
      "tree": "ae3332d69bb2045fc9c9941a32872607797772ed",
      "parents": [
        "c4252f49a035dca5adfbb4f39d3cede9f93dff7e",
        "91f1032505cfaec3aef51fc0a3085b213813f0ed"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 10 07:31:18 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 10 07:31:18 2018 +0000"
      },
      "message": "Merge \"Revert^2 \"Pass boot class path to ImageSpace::LoadBootImage.\"\""
    },
    {
      "commit": "c4252f49a035dca5adfbb4f39d3cede9f93dff7e",
      "tree": "2bf14da48d0a63aee438d5b53810275ef9a2df1b",
      "parents": [
        "dcdb0d4e0872fd38561cccbf538e8f3bd1053ef8",
        "a886dab5e9ec02b6258b69abc992a377e98cf1cd"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Sat Dec 08 16:39:18 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Dec 08 16:39:18 2018 +0000"
      },
      "message": "Merge \"Duplicate small time zone files in runtime apex\""
    },
    {
      "commit": "dcdb0d4e0872fd38561cccbf538e8f3bd1053ef8",
      "tree": "88085ec635a0d45de7c2360adb869a8a2f150329",
      "parents": [
        "c1baad2f913cbe37c7b634499ae23a10dd60d278",
        "ae982f976866a709cf2465d203b2fe83420a37f4"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Dec 08 12:35:35 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Dec 08 12:35:35 2018 +0000"
      },
      "message": "Merge \"Remove CHECK given jvmti deallocates memory.\""
    },
    {
      "commit": "ae982f976866a709cf2465d203b2fe83420a37f4",
      "tree": "88085ec635a0d45de7c2360adb869a8a2f150329",
      "parents": [
        "c1baad2f913cbe37c7b634499ae23a10dd60d278"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Dec 08 12:31:10 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sat Dec 08 12:31:10 2018 +0000"
      },
      "message": "Remove CHECK given jvmti deallocates memory.\n\nMissed from https://android-review.googlesource.com/c/platform/art/+/844516\n\nbug: 120632268\nTest: com.android.server.wifi.test\nChange-Id: I18eacc329ddb7a3708e45fc2b4fefe448c8757f2\n"
    },
    {
      "commit": "c1baad2f913cbe37c7b634499ae23a10dd60d278",
      "tree": "5e0404db2cc8fb78c8c74a2d31b45b27d59aa8ff",
      "parents": [
        "13782ba2f0a0fab54f8c47509f3bac445264e89e",
        "b0675b3dec9e96022873c03b95e58a98fba7a464"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Sat Dec 08 06:14:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Dec 08 06:14:04 2018 +0000"
      },
      "message": "Merge \"Fix ModifyCardsAtomic comment\""
    },
    {
      "commit": "b0675b3dec9e96022873c03b95e58a98fba7a464",
      "tree": "efa33cada91b19c1deb215c8b73d8efb669573a2",
      "parents": [
        "274ed2ea9d496f75030f849c4259b35ecb4d35c1"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Thu Dec 06 13:51:19 2018 -0800"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Dec 07 11:50:20 2018 -0800"
      },
      "message": "Fix ModifyCardsAtomic comment\n\nThe function doesn\u0027t behave as it was previously specified. Its\nactual semantics are arguably ugly, but that doesn\u0027t really seem to\nbreak anything. Just specify what it really does, and add DCHECK\nto validate previously undocumented assumption.\n\nDeduplicate the comment.\n\nUpdate card_table_test, so it no longer invokes ModifyCardsAtomic\nwith a now disallowed visitor. This was OK, because it\u0027s applied\nto a card table containing no zeroes, and hence the misbehaving\nvisitor didn\u0027t matter. Now we check.\n\nTest: Treehugger.\nChange-Id: Id1ba1cb39c709a33c362d4e386ddcb065bd39049\n"
    },
    {
      "commit": "13782ba2f0a0fab54f8c47509f3bac445264e89e",
      "tree": "b525c0372cd3979fb3e10c4df18cc6c8b42ec0fd",
      "parents": [
        "573b3877fac3c5a4a9703301502694fe7219b21c",
        "7e56a072bc3569404a7c3fc54d4952f2bfe478ab"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 07 19:42:13 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 19:42:13 2018 +0000"
      },
      "message": "Merge \"ART: Hide mutex in Instrumentation\""
    },
    {
      "commit": "91f1032505cfaec3aef51fc0a3085b213813f0ed",
      "tree": "6469e772d9fb562d26dc1d22dd0b71844bbb743f",
      "parents": [
        "573b3877fac3c5a4a9703301502694fe7219b21c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 18:04:10 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 18:13:55 2018 +0000"
      },
      "message": "Revert^2 \"Pass boot class path to ImageSpace::LoadBootImage.\"\n\nThis reverts commit db4b1deebf425be5f1d0f597d1ef540f19908324.\n\nFixed JDWP tests, see \"Test:\" stanzas below.\n\nChange-Id: I6fb56ac990b78164cbd3f93c9f6df66e0dd9a813\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: Pixel 2 XL boots.\nTest: m test-art-target-gtest\nTest: testrunner.py --target --optimizing\nTest: run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nTest: run-jdwp-tests.sh --mode\u003dhost --variant\u003dX64\nTest: run-jdwp-tests.sh --mode\u003ddevice --variant\u003dX64\nBug: 119868597\n"
    },
    {
      "commit": "ad2845c0c1322210d39ba1cdbecb2094e156120c",
      "tree": "66fe93516eda836376a98b88cf037af11c26e361",
      "parents": [
        "17ed987eeebdebbd1b923c3c2a6887a233cb7517"
      ],
      "author": {
        "name": "Albert Mingkun Yang",
        "email": "albertnetymk@google.com",
        "time": "Fri Dec 07 17:39:14 2018 +0000"
      },
      "committer": {
        "name": "Albert Mingkun Yang",
        "email": "albertnetymk@google.com",
        "time": "Fri Dec 07 17:50:58 2018 +0000"
      },
      "message": "ART: fix overflow in weighted allocated bytes metrics\n\nTest: Run art with -XX:DumpGCPerformanceOnShutdown on some benchmarks.\nBug: 112187497\nChange-Id: I59f7e8998ee055aac28e50884fcabf19b48fbf17\n"
    },
    {
      "commit": "573b3877fac3c5a4a9703301502694fe7219b21c",
      "tree": "4c921582be3fb3bdd83af5b62c482fc066ea5638",
      "parents": [
        "1e2e714cf25f37e5e925477cdd68fe2baf82c134",
        "89036a3a16a59708d4f59d63fa923ddc6c029eb8"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 07 17:37:35 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 17:37:35 2018 +0000"
      },
      "message": "Merge \"ART: Set Runtime fault message on abort\""
    },
    {
      "commit": "1e2e714cf25f37e5e925477cdd68fe2baf82c134",
      "tree": "5851aab8a4d71b49dbd272b822bfd1ae2cbd08df",
      "parents": [
        "e3c6dfe2009d2fad6f8e4401cb17935bdd09ab9e",
        "db4b1deebf425be5f1d0f597d1ef540f19908324"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 17:26:17 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 17:26:17 2018 +0000"
      },
      "message": "Merge \"Revert \"Pass boot class path to ImageSpace::LoadBootImage.\"\""
    },
    {
      "commit": "db4b1deebf425be5f1d0f597d1ef540f19908324",
      "tree": "5851aab8a4d71b49dbd272b822bfd1ae2cbd08df",
      "parents": [
        "e3c6dfe2009d2fad6f8e4401cb17935bdd09ab9e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 17:18:07 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 17:23:26 2018 +0000"
      },
      "message": "Revert \"Pass boot class path to ImageSpace::LoadBootImage.\"\n\nThis reverts commit d19085141ad9c71eae1b0ff585999ac8e27dadd4.\n\nAlso squash a revert of\n    Fix oatdump tests on target.\n    (commit 77eea0898aca2881a87afd177a0422870c39a318)\n\nReason for revert: Broke JDWP tests.\nBug: 119868597\nChange-Id: I005097d2d96014c961e5a4c0b089e7675004febc\n"
    },
    {
      "commit": "e3c6dfe2009d2fad6f8e4401cb17935bdd09ab9e",
      "tree": "df3a2b3e594be74554c97e006fc4d3271bcabaad",
      "parents": [
        "58431a7cf863b2eb7fe25eff6a28ec376f2f151d",
        "1c1c6e67d858db7fd9296260d4e6e8cff84a0364"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 07 15:05:02 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 15:05:02 2018 +0000"
      },
      "message": "Merge \"Remove CHECK and don\u0027t free code/data in zygote space.\""
    },
    {
      "commit": "38b86dff17966f4dfb302e3c9585eb43aacaf599",
      "tree": "eaa4f0eda3d3fd14b7612ffc2ca1ac7a7ae444fa",
      "parents": [
        "58431a7cf863b2eb7fe25eff6a28ec376f2f151d"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Dec 06 11:27:00 2018 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 07 15:04:04 2018 +0000"
      },
      "message": "Support specifying multiple implicit member signatures per class\n\nAdd support for processing implicitMember property for\nUnsupportedAppUsage and also for handling repeated\nUnsupportedAppUsage annotations.\n\nBug: 119861512\nTest: atest class2greylisttest, m -j20 framework\nChange-Id: I4cb86b3f23160c06e06894974d44eeff4e7d2d27\n"
    },
    {
      "commit": "1c1c6e67d858db7fd9296260d4e6e8cff84a0364",
      "tree": "df3a2b3e594be74554c97e006fc4d3271bcabaad",
      "parents": [
        "58431a7cf863b2eb7fe25eff6a28ec376f2f151d"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 07 14:46:50 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 07 14:46:50 2018 +0000"
      },
      "message": "Remove CHECK and don\u0027t free code/data in zygote space.\n\njvmti can redefine classes and request free-ing code generated\nby the zygote. In this case, don\u0027t free the memory, as that would\nactually lead to dirty memory, which is opposite the idea of\nsaving memory.\n\nbug: 120653173\nTest: com.android.server.wifi.test\nChange-Id: I8552f075e68e6646f06842a8abf7ec65da6be292\n"
    },
    {
      "commit": "58431a7cf863b2eb7fe25eff6a28ec376f2f151d",
      "tree": "960357f9bc42471a0a97ba6e7da5b380aeb83f87",
      "parents": [
        "27f1997511de023e4f33329fe0c8ca984b9dece4",
        "cf1af73677cf9ce474cafe4ba7a915ac8b4b6495"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Dec 07 13:44:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 13:44:25 2018 +0000"
      },
      "message": "Merge \"Add xz decompression method.\""
    },
    {
      "commit": "27f1997511de023e4f33329fe0c8ca984b9dece4",
      "tree": "4850bb4a65b7bbbf87254164b8c6fe85b7c50aa5",
      "parents": [
        "fc4a0b53ee2edc70faca9ff7d5b2a3c12dc8d540",
        "77eea0898aca2881a87afd177a0422870c39a318"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 12:07:09 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 12:07:09 2018 +0000"
      },
      "message": "Merge \"Fix oatdump tests on target.\""
    },
    {
      "commit": "a886dab5e9ec02b6258b69abc992a377e98cf1cd",
      "tree": "9d45efb9e530059442f02f7d9e3fb8b2ec72f5bc",
      "parents": [
        "69431d3ba1c560f0b23bd2ad6257949deb679aa7"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Dec 06 15:12:52 2018 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Dec 07 12:02:38 2018 +0000"
      },
      "message": "Duplicate small time zone files in runtime apex\n\nAdd the smaller time zone files into the runtime apex\nin addition to /system so we can flush out issues and\nstart referring to the new location in code.\n\nThis doesn\u0027t remove anything from /system so should be\nrelatively safe.\n\nICU\u0027s file will be moved rather than duplicated because\nit\u0027s a lot larger.\n\nBug: 119293618\nBug: 119390260\nBug: 113373927\nTest: build only\nChange-Id: I772842884e833cb9f7bba84bfce805a9b9180d88\n"
    },
    {
      "commit": "cf1af73677cf9ce474cafe4ba7a915ac8b4b6495",
      "tree": "39f373b235922d4831e7d00356e918ca55c3801d",
      "parents": [
        "6a98f89c4ad645b04d6c80d3d7e260c59bf6f193"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Dec 04 14:31:32 2018 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Dec 07 11:13:29 2018 +0000"
      },
      "message": "Add xz decompression method.\n\nUse the method to check compressed data in debug builds.\n\nTest: boot.oat is identical\nChange-Id: Id796d4ba19c338522fc855f751bac00555029c79\n"
    },
    {
      "commit": "77eea0898aca2881a87afd177a0422870c39a318",
      "tree": "a64d11a2f73016ec6a742ac99bcfb7ebbe93618a",
      "parents": [
        "a6dd280a61bdb09f608dd920d23394a5b6223ef4"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 10:40:03 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 10:46:43 2018 +0000"
      },
      "message": "Fix oatdump tests on target.\n\nFix tests broken by\n    https://android-review.googlesource.com/835240\n\nAs these are currently TEST_DISABLED_FOR_ARM_AND_MIPS,\nwe hit these failures only on fugu on buildbot.\n\nTest: m test-art-host-gtest\nTest: m test-art-target-gtest  # With manually enabled tests.\nBug: 119868597\nChange-Id: If365fc8b8feae4b6cf95f8fd5bab83ad952cb281\n"
    },
    {
      "commit": "fc4a0b53ee2edc70faca9ff7d5b2a3c12dc8d540",
      "tree": "bc7c194eb9c746d185c5104a6d100a5758f8d0ef",
      "parents": [
        "a6dd280a61bdb09f608dd920d23394a5b6223ef4",
        "22aa39233dae25966a95d808a4289cf3760b6c14"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 07 10:45:53 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 10:45:53 2018 +0000"
      },
      "message": "Merge \"Generalize CovariantReturnTypeMultiHandler\""
    },
    {
      "commit": "22aa39233dae25966a95d808a4289cf3760b6c14",
      "tree": "bc7c194eb9c746d185c5104a6d100a5758f8d0ef",
      "parents": [
        "a6dd280a61bdb09f608dd920d23394a5b6223ef4"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Dec 06 12:34:32 2018 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 07 10:32:44 2018 +0000"
      },
      "message": "Generalize CovariantReturnTypeMultiHandler\n\nThe CovariantReturnTypeMultiHandler handles repeated instances of the\nCovariantReturnType annotation on the same annotatable element. This\nchange generalizes the class so that it can work with any repeatable\nannotation.\n\nBug: 119861512\nTest: atest class2greylisttest, m -j20 framework\nChange-Id: Id42ccc0a335f65701f81ec3fec201258e829f5ae\n"
    },
    {
      "commit": "a6dd280a61bdb09f608dd920d23394a5b6223ef4",
      "tree": "b1fad48bb4d4ed7ca39ec5c250d20d1238739028",
      "parents": [
        "17ed987eeebdebbd1b923c3c2a6887a233cb7517",
        "15c5b97d0093a804881acf3a53bda8b6b4c1521d"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 10:19:34 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 10:19:34 2018 +0000"
      },
      "message": "Merge \"ART: Add CRC32.updateBytes intrinsic for ARM64\""
    },
    {
      "commit": "17ed987eeebdebbd1b923c3c2a6887a233cb7517",
      "tree": "9d137f6e73d2aac0a0403372d4065fd9da0612d6",
      "parents": [
        "ed8b4ac3d7a78cc4976fa24a34bac92f4fd47a27",
        "05909d81d322c0b20445e672c338c626e43f650d"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Dec 07 09:25:59 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 09:25:59 2018 +0000"
      },
      "message": "Merge \"Support class lookup for InMemoryDexClassLoader\""
    },
    {
      "commit": "ed8b4ac3d7a78cc4976fa24a34bac92f4fd47a27",
      "tree": "8292de7f2a4e8b9c0526d05a604668da11e1980e",
      "parents": [
        "a9a0973ff03ce2c2d1ec65695ad0f4cd8ed170a7",
        "2afaff7e9171992b0e2e95d0f485782d28e1b9dc"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 08:11:24 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 08:11:24 2018 +0000"
      },
      "message": "Merge \"Refactor CompilerDriver::CompileAll().\""
    },
    {
      "commit": "a9a0973ff03ce2c2d1ec65695ad0f4cd8ed170a7",
      "tree": "9f00efead2c694b2a590f8c4890a9052571bbcff",
      "parents": [
        "260a50cb43618dfdd325e7c89745d8bc38b20292",
        "d19085141ad9c71eae1b0ff585999ac8e27dadd4"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 07 07:51:00 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 07:51:00 2018 +0000"
      },
      "message": "Merge \"Pass boot class path to ImageSpace::LoadBootImage.\""
    },
    {
      "commit": "260a50cb43618dfdd325e7c89745d8bc38b20292",
      "tree": "672e350486b5849b2d27cee3312ff60625b54fb6",
      "parents": [
        "73d8cc7c48dc9fa77fe6b61a6894a28112c033af",
        "e352152209d7fdab4eae46cb9ad4c61c82e04598"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Dec 07 06:59:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 06:59:12 2018 +0000"
      },
      "message": "Merge \"Disable com.android.runtime.host on darwin\""
    },
    {
      "commit": "e352152209d7fdab4eae46cb9ad4c61c82e04598",
      "tree": "de3750e97fccb28b15372d3e2cd78cdd5a83b2d2",
      "parents": [
        "da948ce75663deb4aafaf98840685e9467a6ecb0"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Dec 06 22:51:18 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Dec 06 22:51:18 2018 -0800"
      },
      "message": "Disable com.android.runtime.host on darwin\n\nThe apex depends on binaries that are not buildable on darwin hosts.\n\nTest: m nothing\nBug: 120634314\nChange-Id: I076deaf2fed66d06da3ad000b526f6496b80ef9f\n"
    },
    {
      "commit": "73d8cc7c48dc9fa77fe6b61a6894a28112c033af",
      "tree": "47a225708b3ddbc03c6a45aeed6c9d1ddead13fa",
      "parents": [
        "883931d0cc9c48573c13836b80fbad465bdaa0c9",
        "ce9ed3669d041d9eb2f5489596f133248d90f497"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 07 06:41:18 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 06:41:18 2018 +0000"
      },
      "message": "Merge \"Enable JIT in zygote.\""
    },
    {
      "commit": "883931d0cc9c48573c13836b80fbad465bdaa0c9",
      "tree": "ee70edd0bb5f74df894d8b71d43a15ac4ff9cf3d",
      "parents": [
        "dc1309c01d7b4cbc2c9f5803f7f643fad646f9ba",
        "da948ce75663deb4aafaf98840685e9467a6ecb0"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Dec 07 01:34:32 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 01:34:32 2018 +0000"
      },
      "message": "Merge \"Revert^2 \"Add apex com.android.runtime.host artifact\"\""
    },
    {
      "commit": "89036a3a16a59708d4f59d63fa923ddc6c029eb8",
      "tree": "aff6b601d1bb6cb9925ac4764eda938d238948b2",
      "parents": [
        "dc1309c01d7b4cbc2c9f5803f7f643fad646f9ba"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 06 13:05:20 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 06 15:14:50 2018 -0800"
      },
      "message": "ART: Set Runtime fault message on abort\n\nIn Runtime::Abort, set the fault message when not on Android. This\nwill help re-print the message at the end of aborts when the\nunexpected-signal handler is being used.\n\nBug: 120506942\nTest: mmma art\nTest: manual\nChange-Id: I0b81049d700012250a16c45d0657b06d1f4d8aa0\n"
    },
    {
      "commit": "da948ce75663deb4aafaf98840685e9467a6ecb0",
      "tree": "eb272f931762cb31e31bd6aa6de05609fcdff2fd",
      "parents": [
        "35144e5713d95e1824315481c3c5d8689e580a99"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Dec 06 17:05:41 2018 +0000"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Dec 06 14:57:33 2018 -0800"
      },
      "message": "Revert^2 \"Add apex com.android.runtime.host artifact\"\n\nHOST_PREFER_32_BIT\u003dtrue is incompatible with host apex artifacts due\nto needing to know the multilib class of artifacts statically. For now\nwe will simply disable the com.android.runtime.host artifact with a\nload-hook when HOST_PREFER_32_BIT\u003dtrue.\n\nThis reverts commit 1047f1a2eba0221ba53c8991a96cd89e33f5f36f.\n\nReason for revert: Fixed issue with x86-only build\n\nTest: HOST_PREFER_32_BIT\u003dtrue m nothing\nTest: m -j80 com.android.runtime.host\n\nBug: 120617876\nBug: 120436895\n\nChange-Id: I35f2d219ec3ddb536ee0a86af7b861beafdd69d1\n"
    },
    {
      "commit": "15c5b97d0093a804881acf3a53bda8b6b4c1521d",
      "tree": "ad6befd10a3d6dee0f1667d254374e267ad89ce7",
      "parents": [
        "cfc4b3ac67b364d753d970d1adcf97668114e959"
      ],
      "author": {
        "name": "Evgeny Astigeevich",
        "email": "evgeny.astigeevich@linaro.org",
        "time": "Tue Nov 20 13:41:40 2018 +0000"
      },
      "committer": {
        "name": "Evgeny Astigeevich",
        "email": "evgeny.astigeevich@linaro.org",
        "time": "Thu Dec 06 22:19:23 2018 +0000"
      },
      "message": "ART: Add CRC32.updateBytes intrinsic for ARM64\n\nUse crc32 instructions for\njava.util.zip.CRC32.updateBytes(int,byte[],int,int).\n\nThe intrinsic is used if a number of processed bytes is less or equal to\nkCRC32UpdateBytesThreshold. If it exceeds kCRC32UpdateBytesThreshold the\ncore library provided function is used.\n\nNote that CRC32 is an optional feature in ARMv8, this intrinsic\nis only enabled for devices supporting the CRC32 instructions.\n\nThe CL is based on code from tim.zhang@linaro.org.\n\nPerformance improvements - speedup:\narray size | Cortex-A53 | Cortex-A57\n------------------------------------\n128        | 14x        | 20x\n256        | 10x        | 14x\n512        | 8x         | 11x\n1024       | 7x         | 9x\n2048       | 6x         | 8x\n4096       | 5x         | 7x\n8192       | 5x         | 7x\n16384      | 5x         | 7x\n32768      | 5x         | 7x\n65536      | 5x         | 7x\n\nTest: m test-art-target-gtest\nTest: m test-art-host-gtest\nTest: art/test/testrunner/testrunner.py --target --optimizing --interpreter\nTest: art/test/testrunner/testrunner.py --target --jit\nTest: art/test/testrunner/testrunner.py --host --optimizing --interpreter\nTest: art/test/testrunner/testrunner.py --host --jit\nTest: 580-crc32\n\nChange-Id: I0054cea41b5fc3e712e18b0afc7e3eacbf41feb6\n"
    },
    {
      "commit": "dc1309c01d7b4cbc2c9f5803f7f643fad646f9ba",
      "tree": "4e315f966919643416d8e0fd2a87c8b602ada6c6",
      "parents": [
        "bee521dc73825fc75f840749fc4fc7a083a9f0cf",
        "44f67607b33e36c118fe0f62c062865b2bc8bd8f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 06 22:09:37 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 06 22:09:37 2018 +0000"
      },
      "message": "Merge changes Ib1e027a1,I1608b032,I11ca161a\n\n* changes:\n  ART: Rewrite Runtime fault message to be lock-free\n  ART: Move to using locks.h instead of mutex.h\n  ART: Factor out lock order and holder from mutexes\n"
    },
    {
      "commit": "bee521dc73825fc75f840749fc4fc7a083a9f0cf",
      "tree": "287f691d8d02c7ece3356f0d6052e013a21c00d8",
      "parents": [
        "03eb36c6940060f82f887b3e8860a91c1f97224c",
        "519c1c7bb05af22cca3a21cfc78afce5bf9c300c"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Thu Dec 06 21:17:45 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 06 21:17:45 2018 +0000"
      },
      "message": "Merge \"Cleanup marking logic for non-moving objects\""
    },
    {
      "commit": "7e56a072bc3569404a7c3fc54d4952f2bfe478ab",
      "tree": "308bc711966ee1d4f6a3b7dc4c07f346fe5c01ad",
      "parents": [
        "44f67607b33e36c118fe0f62c062865b2bc8bd8f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Nov 29 10:40:06 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 06 11:37:19 2018 -0800"
      },
      "message": "ART: Hide mutex in Instrumentation\n\nEnsure that instrumentation.h does not pull in mutex.h.\n\nBug: 119869270\nTest: m test-art-host\nChange-Id: I0cb993ac3ddef3ce7efab8c624aa92905c888a0d\n"
    },
    {
      "commit": "44f67607b33e36c118fe0f62c062865b2bc8bd8f",
      "tree": "a17f7b4a6f7affe866377ac5ee7924195ef8fbe5",
      "parents": [
        "7fbc4a59ba2e60d869313d7961662430df83b2cb"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 28 08:27:27 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 06 11:37:19 2018 -0800"
      },
      "message": "ART: Rewrite Runtime fault message to be lock-free\n\nTo avoid the lock in a general header, rewrite the fault message\n(that is almost unused) to be lock-free. Store the string as a\nheap object owned by Runtime.\n\nBug: 119869270\nTest: mmma art\nTest: m test-art-host\nChange-Id: Ib1e027a1543c46d25953119f05792f0e874d6a3d\n"
    },
    {
      "commit": "7fbc4a59ba2e60d869313d7961662430df83b2cb",
      "tree": "59520285df8d2075412ddc566a0d4d96d4c7e109",
      "parents": [
        "7cc45fd1dbcf5704e442d0443e437aa2ae3fe21b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 28 08:26:47 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 06 11:37:19 2018 -0800"
      },
      "message": "ART: Move to using locks.h instead of mutex.h\n\nWhen only annotating lock requirements, use locks.h.\n\nBug: 119869270\nTest: mmma art\nChange-Id: I1608b03254712feff0072ebad012c3af0cc3dda4\n"
    },
    {
      "commit": "7cc45fd1dbcf5704e442d0443e437aa2ae3fe21b",
      "tree": "76e582afd0580be21497787c584cab61f7599997",
      "parents": [
        "03eb36c6940060f82f887b3e8860a91c1f97224c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 21 16:03:08 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 06 11:37:19 2018 -0800"
      },
      "message": "ART: Factor out lock order and holder from mutexes\n\nIsolate the order and holder class from the mutex definitions.\nThe locks header requires significantly fewer includes, and\nwill be used in a follow-up change to remove mutex.h dependencies\nin headers just for the sake of annotation lock requirements.\n\nThis is itself an NFC commit, only pulling the code apart.\n\nBug: 119869270\nTest: m test-art-host\nChange-Id: I11ca161ac3118725c79313a82f58595699b590bf\n"
    },
    {
      "commit": "05909d81d322c0b20445e672c338c626e43f650d",
      "tree": "3a8edef57fce12fa3d69a783f6b9523b203c85e6",
      "parents": [
        "69431d3ba1c560f0b23bd2ad6257949deb679aa7"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 06 16:25:16 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 06 19:34:02 2018 +0000"
      },
      "message": "Support class lookup for InMemoryDexClassLoader\n\nSetting up InMemoryDexClassLoader with \u0027null\u0027 as parent results in the\nclass loader not being able to load any boot classpath classes. This is\ndue to the fact that InMemoryDexClassLoader inherits class lookup from\nBaseDexClassLoader which delegates it to ART, but ART rejects\nInMemoryDexClassLoader as not supported.\n\nBug: 120603906\nBug: 120613979\nTest: InMemoryDexClassLoaderTest\nChange-Id: I3139b1bb343b5fc722bcf06f89a6f6a21a3c7c54\n"
    },
    {
      "commit": "03eb36c6940060f82f887b3e8860a91c1f97224c",
      "tree": "b4667d8a91976c1458d0ab164f07982bb92b81ee",
      "parents": [
        "4bebb8582123c75cb7a9bf0d35f746845e851618",
        "6693742a2842ece89e90d1fd8e412c2c9d62cd22"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Dec 06 18:43:34 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 06 18:43:34 2018 +0000"
      },
      "message": "Merge \"ART: use freed_bytes in reclaimed_bytes_ratio calculation\""
    },
    {
      "commit": "4bebb8582123c75cb7a9bf0d35f746845e851618",
      "tree": "066825708bc63f375e8ab24e55f8ff737de9f8bb",
      "parents": [
        "35144e5713d95e1824315481c3c5d8689e580a99",
        "0c34ceea574a7c7b902cb5da4a210702eca9e228"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 06 17:25:34 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 06 17:25:34 2018 +0000"
      },
      "message": "Merge \"Make Javac throw an exception in the event of a compile error\""
    },
    {
      "commit": "35144e5713d95e1824315481c3c5d8689e580a99",
      "tree": "514aef70ac42b209c1bc19e09631913b83cdd970",
      "parents": [
        "c345392f3c4a0d35cf1dbbd1f0e172f4f768f167",
        "1fad850a8094ab8d9eb35283b787fa781370c31b"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Dec 06 16:57:49 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 06 16:57:49 2018 +0000"
      },
      "message": "Merge \"Cleanup symbol add method in ElfBuilder.\""
    },
    {
      "commit": "2afaff7e9171992b0e2e95d0f485782d28e1b9dc",
      "tree": "96c7ea4a13e8a9a191d58002de89fb005231980e",
      "parents": [
        "6a98f89c4ad645b04d6c80d3d7e260c59bf6f193"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Nov 30 17:01:50 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 06 16:26:43 2018 +0000"
      },
      "message": "Refactor CompilerDriver::CompileAll().\n\nTreat verification results and image classes as mutable\nonly in CompilerDriver::PreCompile(), and treat them as\nimmutable during compilation, accessed through the\nCompilerOptions. This severs the dependency of the inliner\non the CompilerDriver.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nChange-Id: I594a0213ca6a5003c19b4bd488af98db4358d51d\n"
    },
    {
      "commit": "c345392f3c4a0d35cf1dbbd1f0e172f4f768f167",
      "tree": "7506f056e539443eb4c7340ab195d43ba125c208",
      "parents": [
        "69431d3ba1c560f0b23bd2ad6257949deb679aa7",
        "be50f9ae077b9d5fb4f12f693ba36cc69e9d4073"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Dec 06 15:32:45 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 06 15:32:45 2018 +0000"
      },
      "message": "Merge \"Simplify MakeElfFileForJIT\""
    },
    {
      "commit": "d19085141ad9c71eae1b0ff585999ac8e27dadd4",
      "tree": "24284e84f5df4601bacc2a97c56af1bc5950c253",
      "parents": [
        "523940b40f9701504d6e007dd2af48f315038dc1"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Nov 22 14:57:28 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 06 14:43:07 2018 +0000"
      },
      "message": "Pass boot class path to ImageSpace::LoadBootImage.\n\nWhen loading the boot image by ImageSpace, do not rely on\nthe boot class path (BCP) recorded in the primary boot image\noat file. Instead, check the BCP from image against the BCP\nprovided by the Runtime, i.e. from -Xbootclasspath:_ or the\nenvironment variable BOOTCLASSPATH. For now, allow Runtime\nto extract the BCP from the primary boot image oat file when\nwe have -Ximage:_ but no BCP.\n\nAlso pass the boot class path components down to the OatFile\nso that we can open and use the original dex files when we\ndo not have copies in the vdex files. This allows compiling\napp prebuilts when the boot dex files are uncompressed and\naligned in the original jars.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: Pixel 2 XL boots.\nTest: m test-art-target-gtest\nTest: testrunner.py --target --optimizing\nTest: run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nTest: Manually create boot image jars with uncompressed and\n      aligned dex files, compile a boot image with dex files\n      not copied into vdex files and use this boot image for\n      compiling a prebuilt services.{art,vdex,odex}.\nBug: 119868597\nChange-Id: If9411ddbecf6bb90bfa9233040931c5e833f6aee\n"
    },
    {
      "commit": "0c34ceea574a7c7b902cb5da4a210702eca9e228",
      "tree": "7975ccc54068a2a7f1ddf4e8dccf45b85b4bf039",
      "parents": [
        "69431d3ba1c560f0b23bd2ad6257949deb679aa7"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Dec 06 11:04:01 2018 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Dec 06 14:20:48 2018 +0000"
      },
      "message": "Make Javac throw an exception in the event of a compile error\n\nProvides better feedback when writing tests that fail due to a compile\nerror.\n\nTest: atest class2greylisttest\nBug: 119861512\nChange-Id: I79d5a1c0406f070b5f02c5c8ec1a362e5d03ee39\n"
    },
    {
      "commit": "ce9ed3669d041d9eb2f5489596f133248d90f497",
      "tree": "f95fc9d6fc78119686fe91db5c2aaabd31b6abb1",
      "parents": [
        "69431d3ba1c560f0b23bd2ad6257949deb679aa7"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Nov 29 03:19:28 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 06 14:12:34 2018 +0000"
      },
      "message": "Enable JIT in zygote.\n\nbug: 119800099\nTest: boot test\nChange-Id: I92dc59adeaf1202a984d363b1420ef26e53ebe84\n"
    },
    {
      "commit": "69431d3ba1c560f0b23bd2ad6257949deb679aa7",
      "tree": "4a245500b145ba0c5c8f8184f1b774b6b3e4b5cf",
      "parents": [
        "67d351540d2cfa3bca5d1d57020eeec2783a1d31",
        "1047f1a2eba0221ba53c8991a96cd89e33f5f36f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 06 09:06:24 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 06 09:06:24 2018 +0000"
      },
      "message": "Merge \"Revert \"Add apex com.android.runtime.host artifact\"\""
    },
    {
      "commit": "1047f1a2eba0221ba53c8991a96cd89e33f5f36f",
      "tree": "698a7c0a9a04a0abf6fe10793525ce861b1510ae",
      "parents": [
        "36703dc24125b52b62c05e934a050f2a298cc617"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 06 09:05:53 2018 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 06 09:05:53 2018 +0000"
      },
      "message": "Revert \"Add apex com.android.runtime.host artifact\"\n\nThis reverts commit 36703dc24125b52b62c05e934a050f2a298cc617.\n\nBug: 120436895\n\nReason for revert: Breaks x86 only build.\n\nChange-Id: Ifd5b561eeffcd721174f5eb591c6bad66dff8de8\n"
    },
    {
      "commit": "67d351540d2cfa3bca5d1d57020eeec2783a1d31",
      "tree": "5074e4bde7c61c54d9ddaecc12b1f86b3ebfd476",
      "parents": [
        "d4fff712f36f813bf793f9d66897c4cc07b9ae61",
        "8b751c59ed5331551648309bde6a19ec833fc46e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 06 07:06:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 06 07:06:25 2018 +0000"
      },
      "message": "Merge \"ART: Move EnableDebugger to frameworks\""
    },
    {
      "commit": "d4fff712f36f813bf793f9d66897c4cc07b9ae61",
      "tree": "16e3503c084c2f592fa0a8e41f28683e717e2ace",
      "parents": [
        "cfc4b3ac67b364d753d970d1adcf97668114e959",
        "eac4d6aec60053f7bbec9b833e21702f34ba3d93"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Dec 06 02:41:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 06 02:41:25 2018 +0000"
      },
      "message": "Merge \"Reduce runtime thread pool stack size\""
    },
    {
      "commit": "cfc4b3ac67b364d753d970d1adcf97668114e959",
      "tree": "f53a785c675d23c0932adfe6b935df5372c8b2e8",
      "parents": [
        "274ed2ea9d496f75030f849c4259b35ecb4d35c1",
        "36703dc24125b52b62c05e934a050f2a298cc617"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 05 22:37:35 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 05 22:37:35 2018 +0000"
      },
      "message": "Merge \"Add apex com.android.runtime.host artifact\""
    },
    {
      "commit": "eac4d6aec60053f7bbec9b833e21702f34ba3d93",
      "tree": "4a51da7a94e3022f9a4a485d0141c11220c0ba64",
      "parents": [
        "274ed2ea9d496f75030f849c4259b35ecb4d35c1"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 05 12:33:46 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 05 12:52:16 2018 -0800"
      },
      "message": "Reduce runtime thread pool stack size\n\nReduce the size to 64k to avoid using as much virtual address space.\n\nBug: 116052292\nTest: test-art-host\nChange-Id: I370cfb6c8f7060b674e5bc67a0b85ac7adf46041\n"
    },
    {
      "commit": "36703dc24125b52b62c05e934a050f2a298cc617",
      "tree": "941415bbd68605c4a4ec110e01c0157fa2d861fd",
      "parents": [
        "6a98f89c4ad645b04d6c80d3d7e260c59bf6f193"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Nov 29 17:15:02 2018 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Dec 05 09:23:14 2018 -0800"
      },
      "message": "Add apex com.android.runtime.host artifact\n\nFixed and added com.android.runtime.host tests to\nbuild/apex/runtests.sh.\n\nTest: m com.android.runtime.host\nTest: ./art/build/apex/runtests.sh\nBug: 120436895\nChange-Id: I90b30fe5fac11de1a53668083be0be82ef282514\n"
    },
    {
      "commit": "274ed2ea9d496f75030f849c4259b35ecb4d35c1",
      "tree": "6a371c40b6f754db7687aceb538f81f85871373f",
      "parents": [
        "18851145160a85f028432c07247485250167b155",
        "c6068c7f07785f326090f2c3dc0d5679adbfcc69"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 05 16:48:51 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 05 16:48:51 2018 +0000"
      },
      "message": "Merge \"Parallel image decompression\""
    },
    {
      "commit": "18851145160a85f028432c07247485250167b155",
      "tree": "3871bfd919b79ea84ce6ab7b9fbce47d5711f017",
      "parents": [
        "523940b40f9701504d6e007dd2af48f315038dc1",
        "3be7afe5f1550e11fe69459c6b0f15322d94dd06"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Dec 05 15:54:10 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 05 15:54:10 2018 +0000"
      },
      "message": "Merge \"Add `ld.config.txt` file to Android Runtime APEX packages.\""
    },
    {
      "commit": "523940b40f9701504d6e007dd2af48f315038dc1",
      "tree": "1c20f1c04edea4473b72d7937582a56559716b83",
      "parents": [
        "c83c64e793f44fbdd5eb4193f5f74af115585658",
        "2d7329b5379a739751448ee93ae7c52d15d0c07b"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Dec 05 14:50:38 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 05 14:50:38 2018 +0000"
      },
      "message": "Merge \"ART: add weighted allocated bytes metrics\""
    },
    {
      "commit": "c83c64e793f44fbdd5eb4193f5f74af115585658",
      "tree": "3ce98f86c4fe1bdf860c61cf6722f9775a65ee9e",
      "parents": [
        "f07dbf7428e05d839fe473cea20db47f0c08e33d",
        "b06fbf7dfdb360885a1791b61c8943200c77e4e6"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 05 13:38:34 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 05 13:38:34 2018 +0000"
      },
      "message": "Merge \"ART: Support kryo385 CPU.\""
    },
    {
      "commit": "f07dbf7428e05d839fe473cea20db47f0c08e33d",
      "tree": "e12bf6ae0645e8cfc92f7bdd90de63776979c656",
      "parents": [
        "19acc61673c0a70ce1b1d054f2c5ed654efb7ea1",
        "cff5f2d2093615b17a1aa17dd4eca566e3720515"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 05 13:23:11 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 05 13:23:11 2018 +0000"
      },
      "message": "Merge \"Disable failing libcore tests on host.\""
    },
    {
      "commit": "cff5f2d2093615b17a1aa17dd4eca566e3720515",
      "tree": "e12bf6ae0645e8cfc92f7bdd90de63776979c656",
      "parents": [
        "19acc61673c0a70ce1b1d054f2c5ed654efb7ea1"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 05 13:11:41 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 05 13:15:41 2018 +0000"
      },
      "message": "Disable failing libcore tests on host.\n\nThese tests require apache-xml which is currently not\ncompiled into the core image.\n\nTest: Rely on post-submit buildbot results.\nBug: 120526172\nChange-Id: I8df0a7f81d96cbaa069eb9fca2689b528ed83946\n"
    },
    {
      "commit": "8b751c59ed5331551648309bde6a19ec833fc46e",
      "tree": "7092b4556be47a205e469c20ae30737a4ff26260",
      "parents": [
        "94d4f5fa020561a1f828828dce1edf8fb5d4ab5c"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Dec 05 12:25:31 2018 +0000"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed Dec 05 12:25:31 2018 +0000"
      },
      "message": "ART: Move EnableDebugger to frameworks\n\nBug: 120485385\nTest: cts\nChange-Id: Ied6ef5e846417fa264d0f5c009780d22219d14e5\n"
    },
    {
      "commit": "be50f9ae077b9d5fb4f12f693ba36cc69e9d4073",
      "tree": "edcd00b15d95aee101dd85574d1ce91b3cb35c0c",
      "parents": [
        "6a98f89c4ad645b04d6c80d3d7e260c59bf6f193"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Dec 05 10:48:42 2018 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Dec 05 11:35:29 2018 +0000"
      },
      "message": "Simplify MakeElfFileForJIT\n\nWe only ever pass single method info to the method and\nI don\u0027t plan to use the method for anything more complex.\n\nThe JIT-related methods also know the relevant ElfTypes\nat compile time, so some of the helpers are not needed.\n\nTest: ./art/test.py -b -r -t 137\nChange-Id: Ie7815a6427ac05be15a79adeb05dccc9150441d2\n"
    },
    {
      "commit": "19acc61673c0a70ce1b1d054f2c5ed654efb7ea1",
      "tree": "dcbbd4dd38fab65e887a120fd7c64859585321ec",
      "parents": [
        "94d4f5fa020561a1f828828dce1edf8fb5d4ab5c",
        "7a85e70b2bf646d1d7a226fbb4e7fafb66871dd5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 05 09:52:12 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 05 09:52:12 2018 +0000"
      },
      "message": "Merge \"Reduce core image to 6 modules.\""
    },
    {
      "commit": "519c1c7bb05af22cca3a21cfc78afce5bf9c300c",
      "tree": "efc6f5bd69f708a345d1fed80ff9c379519383a4",
      "parents": [
        "94d4f5fa020561a1f828828dce1edf8fb5d4ab5c"
      ],
      "author": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Fri Nov 09 17:10:47 2018 -0800"
      },
      "committer": {
        "name": "Lokesh Gidra",
        "email": "lokeshgidra@google.com",
        "time": "Wed Dec 05 01:08:43 2018 -0800"
      },
      "message": "Cleanup marking logic for non-moving objects\n\nThe marking logic for non-moving and large objects currently grays the\nread barrier state and sets the mark bitmap together. This causes the\nfollowing complexities:\n1) Setting the mark bitmap has to be done atomically as application\nthreads also set the mark bitmap.\n2) It requires using a separate false gray stack to handle cases where\ndue to concurrent execution one thread succeeds in graying the object\neven after the object has been already marked.\n\nThis can be simplified if non-moving/large objects are treated just like\nthe unevac-space objects are. Marking the object involves testing\nwhether the object is already marked in the bitmap or not. If not, then\ngraying the read barrier state and pushing to the mark stack.\nEventually, GC thread sets the mark bit non-atomically while processing\nthe reference.\n\nBug: 119273672\nBug: 112720851\nBug: 119629540\nTest: art/test/testrunner/testrunner.py --64\nChange-Id: I7050d545d59d5d8b1c90813a982e6f464b15d5e3\n"
    },
    {
      "commit": "c6068c7f07785f326090f2c3dc0d5679adbfcc69",
      "tree": "e0d729e4c73cecb87413341a7c6f3fd0ce876cf5",
      "parents": [
        "ee45798b02c3a9fffa9c4b5c1fe0fe03a423df66"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Nov 13 16:00:58 2018 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Dec 04 14:08:55 2018 -0800"
      },
      "message": "Parallel image decompression\n\nAdd a runtime thread pool to facilitate parallel app image loading.\n\nUse the thread pool to decompress the image, this results in a ~1%\napp startup speedup.\n\nTest: test-art-host\nTest: manual\nBug: 116052292\n\nChange-Id: If35f71ff632ac58e67d11eed4b5f5b19656cc301\n"
    },
    {
      "commit": "3be7afe5f1550e11fe69459c6b0f15322d94dd06",
      "tree": "e842855e1f6ffbafe5a27dbf0e8cb8ccda988ce8",
      "parents": [
        "94d4f5fa020561a1f828828dce1edf8fb5d4ab5c"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Dec 04 19:35:03 2018 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Dec 04 19:44:55 2018 +0000"
      },
      "message": "Add `ld.config.txt` file to Android Runtime APEX packages.\n\nThis file is required when the Runtime APEX directories are part of\nBionic search paths.\n\nThe `ld.config.txt` file added by this change is currently empty.\nFollow-up commits will add actual content to it.\n\nTest: Device boot test with Android Runtime APEX.\nTest: Device boot test without Android Runtime APEX.\nTest: cts-tradefed run cts --m vm-tests-tf\nBug: 113373927\nBug: 119949783\nChange-Id: I3df75b1460a43b410663ad816b5e01b9846b3fcb\n"
    },
    {
      "commit": "2d7329b5379a739751448ee93ae7c52d15d0c07b",
      "tree": "76de7c6bd8350792661789ecae4a4943eb36b65c",
      "parents": [
        "6a98f89c4ad645b04d6c80d3d7e260c59bf6f193"
      ],
      "author": {
        "name": "Albert Mingkun Yang",
        "email": "albertnetymk@google.com",
        "time": "Fri Nov 30 19:58:18 2018 +0000"
      },
      "committer": {
        "name": "Albert Mingkun Yang",
        "email": "albertnetymk@google.com",
        "time": "Tue Dec 04 19:31:28 2018 +0000"
      },
      "message": "ART: add weighted allocated bytes metrics\n\n`process_cpu_start_time_` is moved from `art::Runtime` to `art::gc:Heap`\nso that it could be reset when the app starts (current process is forked\nfrom Zygote).\n\n`process_cpu_end_time_` is removed from `art::Runtime` because it\u0027s only\nused when the runtime is about to shutdown, so it suffices to capture it\nin a local variable.\n\nTest: Run art with -XX:DumpGCPerformanceOnShutdown on some benchmarks.\nBug: 112187497\nChange-Id: I154fdb6acdf4e0c21dff835807bd4e2cf311e3d1\n"
    },
    {
      "commit": "94d4f5fa020561a1f828828dce1edf8fb5d4ab5c",
      "tree": "cd73a2bee4f82e61790750cfa7106bd89dd5161c",
      "parents": [
        "6a98f89c4ad645b04d6c80d3d7e260c59bf6f193",
        "e059238fbc2ca3806d20895bd87d1e3ebfe0d4ee"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Dec 04 18:35:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 04 18:35:04 2018 +0000"
      },
      "message": "Merge \"Make test 924 more consistent.\""
    },
    {
      "commit": "7a85e70b2bf646d1d7a226fbb4e7fafb66871dd5",
      "tree": "790ee4c1cee812535c856a08355c50c2032c5cd4",
      "parents": [
        "6a98f89c4ad645b04d6c80d3d7e260c59bf6f193"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 03 18:47:23 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Dec 04 17:17:19 2018 +0000"
      },
      "message": "Reduce core image to 6 modules.\n\nThis was\n    Revert^2 \"Reduce core image to core-{oj,libart,simple}.\"\nbut we\u0027re now keeping three additional modules, namely\nconscrypt, okhttp and bouncycastle. And we fix the boot\nclass path used by vogar with the companion change\n    https://android-review.googlesource.com/840810 .\n\nThis reverts commit 00fe35e4021e9a8679eca3ffaede48fd89b56258.\n\nChange-Id: I6137edd91c03c17be50de200267eb9adc971e8fb\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nTest: Pixel 3 XL boots.\nTest: m test-art-target-gtest\nTest: testrunner.py --target --optimizing\nTest: art/tools/run-libcore-tests.sh --mode\u003ddevice --variant\u003dX64\nBug: 119868597\n"
    },
    {
      "commit": "1fad850a8094ab8d9eb35283b787fa781370c31b",
      "tree": "e67b56f8cd410e9b52be19fddff61ad1ab8fc535",
      "parents": [
        "d378a567a435a80be9ab7eb8bfe0359c1240c0ff"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Dec 04 15:53:44 2018 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Dec 04 16:01:50 2018 +0000"
      },
      "message": "Cleanup symbol add method in ElfBuilder.\n\nUse deque to avoid reallocating the cached symbols.\n\nWe never generate absolute symbols because gdb don\u0027t like them.\n\nAdd helper method to add symbols as Elf_Sym.\n\nTest: build.oat is unchanged.\nChange-Id: Id8289a71a23cf602f3f9e3e2c2a26277faf937a9\n"
    },
    {
      "commit": "6a98f89c4ad645b04d6c80d3d7e260c59bf6f193",
      "tree": "698a7c0a9a04a0abf6fe10793525ce861b1510ae",
      "parents": [
        "807e4b30b3384e5b23da0c54710be78f17fc6345",
        "997b3dc77a3e6ae2108250808d411dc5ff0916aa"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 04 14:59:27 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 04 14:59:27 2018 +0000"
      },
      "message": "Merge \"C++17 is the default now.\""
    },
    {
      "commit": "807e4b30b3384e5b23da0c54710be78f17fc6345",
      "tree": "cb000ac70bffe89a907e1b63f0b58db3d8b6c4b7",
      "parents": [
        "147b5b1ab58abcc25b4c2b489ee9952d0ce70c69",
        "26c43778589d1c7598cbe6203b6545c9d3ab220a"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Dec 04 12:39:16 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 04 12:39:16 2018 +0000"
      },
      "message": "Merge \"Add support for ANDROID_RUNTIME_ROOT variable\""
    },
    {
      "commit": "147b5b1ab58abcc25b4c2b489ee9952d0ce70c69",
      "tree": "8b75bd479e793d4c9ffd8994a3a089c78c1f598e",
      "parents": [
        "95eeb3958cd93a4f270cd29ec5b18d2d9d245083",
        "aa6f48362b3258a5df5e527987ffe7e068eb4a79"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 04 10:58:22 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 04 10:58:22 2018 +0000"
      },
      "message": "Merge \"ART: ARM64: Pass ISA features to VIXL macroassembler.\""
    },
    {
      "commit": "95eeb3958cd93a4f270cd29ec5b18d2d9d245083",
      "tree": "15b697cc811f8c3ef4bf99be48f8cf59ea9d52c2",
      "parents": [
        "f6f43d842dffd11d2472e2c3397d017ff7399b18",
        "1a6586327d9de6374f9e7ca98d071f2943b03c99"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Dec 04 10:11:43 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 04 10:11:43 2018 +0000"
      },
      "message": "Merge \"Keep pointer to original DexFile during JVMTI redefine for hiddenapi\""
    },
    {
      "commit": "f6f43d842dffd11d2472e2c3397d017ff7399b18",
      "tree": "deda2e653bcfefc9a901bd89226c231a29a4975d",
      "parents": [
        "ee45798b02c3a9fffa9c4b5c1fe0fe03a423df66",
        "80d16289df2ec243737063e4f9d092ac3a7cbb10"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Dec 04 10:07:59 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 04 10:07:59 2018 +0000"
      },
      "message": "Merge \"hiddenapi: Introduce greylist-max-p\""
    },
    {
      "commit": "997b3dc77a3e6ae2108250808d411dc5ff0916aa",
      "tree": "151ba882da8c15d5b597fcd9d115ee38ac1c140c",
      "parents": [
        "9f27ffa9031431267ae59ee3469c853355811916"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 03 22:07:43 2018 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 03 22:07:43 2018 -0800"
      },
      "message": "C++17 is the default now.\n\nTest: builds\nChange-Id: I4a9741ae2ccf48d9db7aa7dd42ab66f9750f165d\n"
    },
    {
      "commit": "1a6586327d9de6374f9e7ca98d071f2943b03c99",
      "tree": "1d118af8f32855ef0036080d5e8a560f14e5e482",
      "parents": [
        "d378a567a435a80be9ab7eb8bfe0359c1240c0ff"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Sat Dec 01 17:54:26 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Dec 03 20:19:40 2018 +0000"
      },
      "message": "Keep pointer to original DexFile during JVMTI redefine for hiddenapi\n\nJVMTI redefine overwrites the pointer to the class\u0027 DexFile which\nprevents access checks from reading the hiddenapi flags store. Store\nthe pointer in ClassExt together with the original ClassDef index\nto preserve the access to flags store. Because method/field indices\nare still lost, the corresponding dex member is found using string\ncomparison of member\u0027s name and type.\n\nBug: 119688837\nTest: 999-redefine-hiddenapi\nChange-Id: Ifdf35668e838869a971233bbaae61851014658b1\n"
    },
    {
      "commit": "26c43778589d1c7598cbe6203b6545c9d3ab220a",
      "tree": "474167d306678366b1c90c7a9e6f824308ec7f7a",
      "parents": [
        "c89a28730fb8dff57c6cb5b18295fec45fe85d09"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Nov 23 17:56:43 2018 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Dec 03 20:05:09 2018 +0000"
      },
      "message": "Add support for ANDROID_RUNTIME_ROOT variable\n\nThis commit introduces the ANDROID_RUNTIME_ROOT environment\nvariable in preparation for its use within the runtime module.\n\nAs a module, ART must no longer use the Android-wide\nANDROID_ROOT environment variable as the base of default\npaths for module content. ANDROID_RUNTIME_ROOT will take over\nthe responsibility. It remains a variable to unify host\nand device treatment.\n\nSome test methods (SetUpAndroidData, TearDownAndroidData\nSetUpAndroidRoot) have been renamed to clarify their purpose.\n\nBug: 119935277\nTest: build / treehugger\nChange-Id: I7c7de52911cbfa56cef90270425ed369176c4767\n"
    },
    {
      "commit": "3a16a8f56e989a13419abb554a6f14a9a35570b7",
      "tree": "e64002a4adf1d3fc56880276dfbdb95016a9b0bc",
      "parents": [
        "aa6f48362b3258a5df5e527987ffe7e068eb4a79"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Thu Nov 22 16:47:16 2018 +0000"
      },
      "committer": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Mon Dec 03 18:49:10 2018 +0000"
      },
      "message": "RFC: ART: ARM64: Support SDOT/UDOT instructions.\n\nSupport generation of Armv8.4-A dot product instructions.\n\nTest: 684-checker-simd-dotprod.\nTest: test-art-host, test-art-target.\nChange-Id: Ia5ea8b59644fddb7db9bf22c4f9c24e43529e4bf\n"
    },
    {
      "commit": "ee45798b02c3a9fffa9c4b5c1fe0fe03a423df66",
      "tree": "61054ce8dae4b30654d41a1ba2f1394ef1c28484",
      "parents": [
        "9f27ffa9031431267ae59ee3469c853355811916",
        "00fe35e4021e9a8679eca3ffaede48fd89b56258"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 03 18:44:49 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 03 18:44:49 2018 +0000"
      },
      "message": "Merge \"Revert \"Reduce core image to core-{oj,libart,simple}.\"\""
    },
    {
      "commit": "00fe35e4021e9a8679eca3ffaede48fd89b56258",
      "tree": "7db00623bf74e8f37a87fcc653c37191b6d37024",
      "parents": [
        "ec91d48cade73c54f7a03c5d53d863bc2490976e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 03 18:43:54 2018 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 03 18:43:54 2018 +0000"
      },
      "message": "Revert \"Reduce core image to core-{oj,libart,simple}.\"\n\nThis reverts commit ec91d48cade73c54f7a03c5d53d863bc2490976e.\n\nReason for revert: Breaks libcore tests.\n\nChange-Id: I0ea55f74635332177eadd9a69fb831e7f5dc16c7\n"
    },
    {
      "commit": "aa6f48362b3258a5df5e527987ffe7e068eb4a79",
      "tree": "0fa8cfbebb77d2e7796084721c836b44114bdc97",
      "parents": [
        "8bda21f1d8bbc1060bf693f5d1666d3396d1cb69"
      ],
      "author": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Wed Nov 21 18:57:54 2018 +0000"
      },
      "committer": {
        "name": "Artem Serov",
        "email": "artem.serov@linaro.org",
        "time": "Mon Dec 03 18:43:48 2018 +0000"
      },
      "message": "ART: ARM64: Pass ISA features to VIXL macroassembler.\n\nVIXL macroassembler should be initialized properly\nto support Armv8.X features in order to emit corresponding\ninstructions.\n\nTest: codegen_test.cc, relative_patcher_arm64_test.\nTest: test-art-host, test-art-target.\nChange-Id: I2f9e155c28b4d2252a3cfb19717f5d25824d5e11\n"
    },
    {
      "commit": "6693742a2842ece89e90d1fd8e412c2c9d62cd22",
      "tree": "30d8e1e584f5785f82589d3ed6b930fa20f65327",
      "parents": [
        "9f27ffa9031431267ae59ee3469c853355811916"
      ],
      "author": {
        "name": "Albert Mingkun Yang",
        "email": "albertnetymk@google.com",
        "time": "Fri Nov 30 17:52:01 2018 +0000"
      },
      "committer": {
        "name": "Albert Mingkun Yang",
        "email": "albertnetymk@google.com",
        "time": "Mon Dec 03 16:21:30 2018 +0000"
      },
      "message": "ART: use freed_bytes in reclaimed_bytes_ratio calculation\n\nThis commit uses actual bytes reclaimed in the current GC cycle instead\nof difference of num_bytes_allocated_ before and after GC cycle for\nreclaimed_bytes_ratio calculation. The latter could be affected by\nmutators running concurrently to GC cycle.\n\nTest: Run art with -XX:DumpGCPerformanceOnShutdown on some benchmarks.\nBug: 112187497\nChange-Id: Icc845566bfe14706b0a4a60ee33b64a4f5e66942\n"
    },
    {
      "commit": "9f27ffa9031431267ae59ee3469c853355811916",
      "tree": "475181ba87667fd2cc73e4864c7a0038e6a36c98",
      "parents": [
        "e239cdc2239b69199d2eab4b2943636be8ceb2ba",
        "9dd5ba3e242c63a252bbd39adf1aa80259009b55"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Dec 03 15:13:44 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 03 15:13:44 2018 +0000"
      },
      "message": "Merge \"ART: add GC throughput measured in bytes per CPU time\""
    },
    {
      "commit": "e239cdc2239b69199d2eab4b2943636be8ceb2ba",
      "tree": "4f53232e73c9feaf60c0dcf123068875afd26a9e",
      "parents": [
        "8bda21f1d8bbc1060bf693f5d1666d3396d1cb69",
        "ec91d48cade73c54f7a03c5d53d863bc2490976e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 03 14:50:46 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 03 14:50:46 2018 +0000"
      },
      "message": "Merge \"Reduce core image to core-{oj,libart,simple}.\""
    },
    {
      "commit": "8bda21f1d8bbc1060bf693f5d1666d3396d1cb69",
      "tree": "fa2079b2f58bf8b4e7c70685339ad14e38c05a62",
      "parents": [
        "e99dadae5a7f83eb1bc8456d4444c9197c9e7a14",
        "0776942115cdf9610ad06cc673feebceb8de3c30"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 03 08:30:38 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 03 08:30:38 2018 +0000"
      },
      "message": "Merge \"Fix ahat dependencies.\""
    },
    {
      "commit": "e99dadae5a7f83eb1bc8456d4444c9197c9e7a14",
      "tree": "bf5204a74b088e8995db4ee36b4cd3ddc98678b4",
      "parents": [
        "d378a567a435a80be9ab7eb8bfe0359c1240c0ff",
        "e16727388a0a2aedae530f686c0fd95cd2bbb80f"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Dec 02 18:54:26 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Dec 02 18:54:26 2018 +0000"
      },
      "message": "Merge \"Revert^2 \"Support shared libraries in CreateContextFromClassLoader.\"\""
    }
  ],
  "next": "e059238fbc2ca3806d20895bd87d1e3ebfe0d4ee"
}
