)]}'
{
  "log": [
    {
      "commit": "af1a686e8138da4aeb6991bd978a8e00d2575d4e",
      "tree": "cf5a308e5a03c369f9d0d5c28c70ca07085e299a",
      "parents": [
        "29e13122aa43f3c8fef9ed749b8fb35d17adf90c",
        "9879d0eac8fe2aae19ca6a4a2a83222d6383afc2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 30 17:53:45 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 30 17:53:45 2017 +0000"
      },
      "message": "Merge \"Basic SIMD reduction support.\""
    },
    {
      "commit": "29e13122aa43f3c8fef9ed749b8fb35d17adf90c",
      "tree": "f77a1322d80b16b52e44bc242c82a46b150083ca",
      "parents": [
        "d2198243234d6820b9bdf2ac4f7276fe8149d51f",
        "7cfc6598fc1a73b3a9bef44d7e654c4f172be1b8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 30 16:50:01 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 30 16:50:01 2017 +0000"
      },
      "message": "Merge \"Skip tests 1923 and 1924 on ASAN 64\""
    },
    {
      "commit": "9879d0eac8fe2aae19ca6a4a2a83222d6383afc2",
      "tree": "c75ab69be15630f86824bb202577eaa1ff91c4ee",
      "parents": [
        "60f734443d54d48fad86dce6d80d8cef22a134d0"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Tue Aug 15 10:51:25 2017 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Aug 30 09:10:40 2017 -0700"
      },
      "message": "Basic SIMD reduction support.\n\nRationale:\nEnables vectorization of x +\u003d .... for very basic (simple, same-type)\nconstructs. Paves the way for more complex (narrower and/or mixed-type)\nconstructs, which will be handled by the next CL.\n\nTest: test-art-host test-art-target\n\nBug: 64091002\n\nChange-Id: I7880c135aee3ed0a39da9ae5b468cbf80e613766\n"
    },
    {
      "commit": "d2198243234d6820b9bdf2ac4f7276fe8149d51f",
      "tree": "698b56566edbefc68e1947bc624d99206c8efdd8",
      "parents": [
        "80be041454871a9b72c39790a10954595d721a63",
        "bf3243b6150337d47b8238b484858062d7d1c1e6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 30 14:59:16 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 30 14:59:16 2017 +0000"
      },
      "message": "Merge \"ART: Describe static fields in GraphVisualizer.\""
    },
    {
      "commit": "7cfc6598fc1a73b3a9bef44d7e654c4f172be1b8",
      "tree": "400b4ba488348cdc5703894b780792fbc83e9d11",
      "parents": [
        "80be041454871a9b72c39790a10954595d721a63"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Aug 30 07:39:45 2017 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Aug 30 07:39:45 2017 -0700"
      },
      "message": "Skip tests 1923 and 1924 on ASAN 64\n\nThey fail due to stack overflow.\n\nBug: 65189092\nTest: build\nChange-Id: Ib47c3a83763907fdf929add10a9ea9780b2f903a\n"
    },
    {
      "commit": "80be041454871a9b72c39790a10954595d721a63",
      "tree": "19e23b45ff88c0b9639b873eba959c1cfec5e34a",
      "parents": [
        "8ef4b6121ea496d38c0b8aeebad3f1227f819b17",
        "5122e6ba34d46851cd89f2ad55bf6bb067e038d6"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 30 13:47:46 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 30 13:47:46 2017 +0000"
      },
      "message": "Merge \"ART: Remove ArtMethod::dex_cache_resolved_methods_.\""
    },
    {
      "commit": "bf3243b6150337d47b8238b484858062d7d1c1e6",
      "tree": "b8697eb5e235f86cf1c6c5798d254b49d2425b4c",
      "parents": [
        "60f734443d54d48fad86dce6d80d8cef22a134d0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 30 14:06:54 2017 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 30 14:18:36 2017 +0100"
      },
      "message": "ART: Describe static fields in GraphVisualizer.\n\nTest: Rely on TreeHugger.\nChange-Id: I3388a469a96c665abc51abe2cf7d2b2004db7d78\n"
    },
    {
      "commit": "8ef4b6121ea496d38c0b8aeebad3f1227f819b17",
      "tree": "37847d1e1637ecf43cc11017c03f6cd626769311",
      "parents": [
        "8ee58600c368b7b00e54aff09c575d4e2904316e",
        "07c7028e518b98d3267a77dfe0d149db1adbe858"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 30 09:49:52 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 30 09:49:52 2017 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Revert \"Allow deoptimization when returning from a runtime method.\"\"\"\""
    },
    {
      "commit": "8ee58600c368b7b00e54aff09c575d4e2904316e",
      "tree": "bc1e0cdda54e4c2230efd7f95490c7ef125540cc",
      "parents": [
        "4ec99d1e710649fb56f03d216cb6a5d69e7ecd7d",
        "1819e4174bda5eb540886669beee043095955fb7"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 30 09:09:46 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 30 09:09:46 2017 +0000"
      },
      "message": "Merge \"ARM: Clean up LocationSummary creation for Long intrinsics.\""
    },
    {
      "commit": "07c7028e518b98d3267a77dfe0d149db1adbe858",
      "tree": "71fbc9572541cdf08c21c88e3a1d5ff92f1d9885",
      "parents": [
        "047abb20d02546d3dd6e8630befc31e5568fa90e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Aug 30 08:09:42 2017 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Aug 30 08:09:42 2017 +0000"
      },
      "message": "Revert \"Revert \"Revert \"Allow deoptimization when returning from a runtime method.\"\"\"\n\nBug: 33616143\n\ndeopt string test still failing on occasion.\n\nThis reverts commit 047abb20d02546d3dd6e8630befc31e5568fa90e.\n\nChange-Id: I89fc28696290da52317d0e3dd07ecf0d1bdac823\n"
    },
    {
      "commit": "4ec99d1e710649fb56f03d216cb6a5d69e7ecd7d",
      "tree": "222a4a9677d0355cc82abedf591cd3e399eead11",
      "parents": [
        "8877f4cc9a0dcfd08eef259bafea7e5b08fd1fc7",
        "35f1d087ecccbb80df75f89890e9da1f2c59053b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 30 01:14:16 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 30 01:14:16 2017 +0000"
      },
      "message": "Merge \"test: Add JNI test to check for \u003cclinit\u003e method lookup\""
    },
    {
      "commit": "8877f4cc9a0dcfd08eef259bafea7e5b08fd1fc7",
      "tree": "9c4ae2153c70c0089e2ceda3a1816df658d7232d",
      "parents": [
        "31a8a8988d8461dd88fe2071732f84107bc68a97",
        "e814f9d09c0fb1b678e610780d11ce3577db3599"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 29 23:58:56 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 29 23:58:56 2017 +0000"
      },
      "message": "Merge \"JVMTI NotifyFramePop support\""
    },
    {
      "commit": "35f1d087ecccbb80df75f89890e9da1f2c59053b",
      "tree": "0a173343c2bc629512f9a13625507a404e3fcaf1",
      "parents": [
        "0b5cb35e40901303a4d4283722025d20f2e68e17"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Aug 29 13:50:13 2017 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Aug 29 16:21:36 2017 -0700"
      },
      "message": "test: Add JNI test to check for \u003cclinit\u003e method lookup\n\nBug: 65059445\nChange-Id: I03cd36466cf1edd5c64607542185e2cfd8b47ba5\n"
    },
    {
      "commit": "31a8a8988d8461dd88fe2071732f84107bc68a97",
      "tree": "2eb311a83cb101620c0acc08901e114d8a5835e3",
      "parents": [
        "8920835161a359ce45250d04890bb054a3832977",
        "150d25df5d75d55735b0ec49305784e5dc83cce6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 29 22:13:33 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 29 22:13:33 2017 +0000"
      },
      "message": "Merge \"Enable dex madvise hints for low ram devices\""
    },
    {
      "commit": "e814f9d09c0fb1b678e610780d11ce3577db3599",
      "tree": "fd0aeecb079c0e2383d73907410c831f3e172779",
      "parents": [
        "02cb397857c979dffae95e2db2678a72ec407cf0"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Jul 31 16:14:39 2017 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Tue Aug 29 14:52:11 2017 -0700"
      },
      "message": "JVMTI NotifyFramePop support\n\nAdds support for the JVMTI can_generate_frame_pop_events capability.\nThis includes the NotifyFramePop function and the FramePop event.\n\nWe mark the interpreter shadowframes directly to get the events. This\nrelies on the fact that we never replace extant shadow-frames on the\ninterpreter stack to ensure that we can distinguish which jvmti-envs\nrequested the frame pops.\n\nTest: ./test.py --host -j50\nBug: 34414072\nBug: 62821960\nBug: 65129403\n\nChange-Id: I6e79e39f62fdf79268540c5c1be6311df704cff7\n"
    },
    {
      "commit": "150d25df5d75d55735b0ec49305784e5dc83cce6",
      "tree": "2eb311a83cb101620c0acc08901e114d8a5835e3",
      "parents": [
        "8920835161a359ce45250d04890bb054a3832977"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Aug 28 09:52:55 2017 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Aug 29 13:17:09 2017 -0700"
      },
      "message": "Enable dex madvise hints for low ram devices\n\nEnable layout based madvise hints for low ram devices.\n\nReduces flash reads by 40% for AUPT use cases on low ram devices.\n\nTest: build and flash\nBug: 63178181\n\n(cherry picked from commit 63199d75a146cbcac1cbcac944cf054524ca8848)\n\nChange-Id: Ica0abc10b8356fbd7ab38a71df91c2da74bf505b\n"
    },
    {
      "commit": "8920835161a359ce45250d04890bb054a3832977",
      "tree": "9dae098363aab38bf331009cd0c3f6179f49465f",
      "parents": [
        "60f734443d54d48fad86dce6d80d8cef22a134d0",
        "fef2884b18bcc01cc40edb2ae809d42b5a510c33"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Tue Aug 29 18:55:36 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 29 18:55:36 2017 +0000"
      },
      "message": "Merge \"Simplify CreateReferenceInfoForReferenceType() in load-store-analysis\""
    },
    {
      "commit": "1819e4174bda5eb540886669beee043095955fb7",
      "tree": "7dd01861daebe8afaa9c3613c01e6aa6e1117b24",
      "parents": [
        "49376a9d4483f073aa1fe2b30806e5b31a14a034"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 29 17:02:56 2017 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 29 17:17:54 2017 +0100"
      },
      "message": "ARM: Clean up LocationSummary creation for Long intrinsics.\n\nTest: Rely on TreeHugger.\nChange-Id: I99373fac545b9a82ec96662ff5a5882444091642\n"
    },
    {
      "commit": "60f734443d54d48fad86dce6d80d8cef22a134d0",
      "tree": "c7ed7e8cb7439a8e689e399e34559aa46a97cdbd",
      "parents": [
        "78e1e045dbdcbad89ed178f921ce68ef0520480f",
        "984519c67073b304c0e8bde1728de89d6fef98c1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 29 16:08:39 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 29 16:08:39 2017 +0000"
      },
      "message": "Merge \"ARM: Improve String.equals() intrinsic for const strings.\""
    },
    {
      "commit": "78e1e045dbdcbad89ed178f921ce68ef0520480f",
      "tree": "f59d5ad9ee65548ee1bdeb1bb55a8208ea3e1f1e",
      "parents": [
        "bdd827280a787c359961caf990f4a2c6e57810c1",
        "4fae4fb8b379442a470695dc72af3372fceb92cd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 29 16:08:35 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 29 16:08:35 2017 +0000"
      },
      "message": "Merge \"ARM64: Remove duplicate helper for intrinsic locations.\""
    },
    {
      "commit": "bdd827280a787c359961caf990f4a2c6e57810c1",
      "tree": "a7996faea88cba2e3ee6f464a68bddf997e6ce46",
      "parents": [
        "49376a9d4483f073aa1fe2b30806e5b31a14a034",
        "8d31b9f7f36a4668d6fa2a64ea87bdb4b96a9e3e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 29 16:01:13 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 29 16:01:13 2017 +0000"
      },
      "message": "Merge \"Added option to use dx in dexfuzz testing as well.\""
    },
    {
      "commit": "49376a9d4483f073aa1fe2b30806e5b31a14a034",
      "tree": "7f7d5bd13d4c167a709ebbcc3eaaebce7a841b11",
      "parents": [
        "02cb397857c979dffae95e2db2678a72ec407cf0",
        "27292e64b312007cd301fed8aa96ed7c0215b231"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 29 15:44:07 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 29 15:44:07 2017 +0000"
      },
      "message": "Merge \"ARM: Implement one-bit intrinsics.\""
    },
    {
      "commit": "4fae4fb8b379442a470695dc72af3372fceb92cd",
      "tree": "0f0ace479842b1b97e1dbff25f98bc451618904c",
      "parents": [
        "02cb397857c979dffae95e2db2678a72ec407cf0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 29 12:00:09 2017 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 29 12:00:09 2017 +0100"
      },
      "message": "ARM64: Remove duplicate helper for intrinsic locations.\n\nTest: Rely on TreeHugger.\nChange-Id: Ib5e80aa3dee78b0d1f65694de01303f214d32881\n"
    },
    {
      "commit": "27292e64b312007cd301fed8aa96ed7c0215b231",
      "tree": "4d653ff959b7f2179bb7d93c479cfc063661afab",
      "parents": [
        "86d1db15332571f21bd588efed0de3384269a1c5"
      ],
      "author": {
        "name": "Petre-Ionut Tudor",
        "email": "petre-ionut.tudor@linaro.org",
        "time": "Fri Aug 04 16:06:45 2017 +0100"
      },
      "committer": {
        "name": "Petre-Ionut Tudor",
        "email": "petre-ionut.tudor@linaro.org",
        "time": "Tue Aug 29 11:47:47 2017 +0100"
      },
      "message": "ARM: Implement one-bit intrinsics.\n\nImplement intrinsics for Integer and Long OneBit methods\nfor aarch32.\n\nTest: 568-checker-onebit, test-art-target, test-art-host.\nChange-Id: I34b878f9883569cfef10dfecd8cb99d7e452277b\n"
    },
    {
      "commit": "5122e6ba34d46851cd89f2ad55bf6bb067e038d6",
      "tree": "e96ba37b6451be7a06d930b0274251cac35ce05e",
      "parents": [
        "02cb397857c979dffae95e2db2678a72ec407cf0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Aug 17 16:10:09 2017 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 29 11:29:31 2017 +0100"
      },
      "message": "ART: Remove ArtMethod::dex_cache_resolved_methods_.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nTest: testrunner.py --target on Nexus 6P\nTest: Repeat the above tests with ART_HEAP_POISONING\u003dtrue\nTest: Build aosp_mips64-eng\nChange-Id: I9cd0b8aa5001542b0863cccfca4f9c1cd4d25396\n"
    },
    {
      "commit": "984519c67073b304c0e8bde1728de89d6fef98c1",
      "tree": "c1efdab0c409d97b95002fe9a696a00e3c05cc1c",
      "parents": [
        "02cb397857c979dffae95e2db2678a72ec407cf0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 23 10:45:29 2017 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 29 10:28:30 2017 +0100"
      },
      "message": "ARM: Improve String.equals() intrinsic for const strings.\n\nAnd add tests for the relevant string lengths to 021-string2\nand remove obsolete inlining-prevention code from that test.\nAlso a minor fix of the cutoff check for arm64.\n\nThis is a follow-up to the ARM64 change\n    https://android-review.googlesource.com/336648 .\n\naosp_angler-userdebug:\n  before:\n    arm boot*.oat: 34153044\n    arm boot*.oat/no string compression: 34107776\n  after:\n    arm boot*.oat: 34132740 (−20304)\n    arm boot*.oat/no string compression: 34099508 (−8268)\n\nThe string compression code size difference drops from\n45268 to 33232.\n\nTest: m test-art-target on Nexus 6P\nTest: m test-art-target on Nexus 6P with string compression disabled.\nBug: 31040547\nChange-Id: I4ec73d444d9f56aaf8aa08369c830f398df2168a\n"
    },
    {
      "commit": "fef2884b18bcc01cc40edb2ae809d42b5a510c33",
      "tree": "8649630bb875a85aeb0086fafc25fcf43fbc703c",
      "parents": [
        "02cb397857c979dffae95e2db2678a72ec407cf0"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Mon Aug 28 15:20:57 2017 -0700"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Mon Aug 28 16:33:04 2017 -0700"
      },
      "message": "Simplify CreateReferenceInfoForReferenceType() in load-store-analysis\n\nWe now do CreateReferenceInfoForReferenceType() in VisitInstruction()\nwhich catches all cases where a reference value is created.\n\nTest: run-test on hosts\nChange-Id: I14ce59ba44558e3e800fc2543f4e190cbb2fd75e\n"
    },
    {
      "commit": "8d31b9f7f36a4668d6fa2a64ea87bdb4b96a9e3e",
      "tree": "75e8f2f579936567f63dea3df5a2080f8bd527b0",
      "parents": [
        "70f94cace70be42861ba0a433cfe4bdf6c892f7c"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Mon Aug 28 09:26:54 2017 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Mon Aug 28 13:02:55 2017 -0700"
      },
      "message": "Added option to use dx in dexfuzz testing as well.\n\nRationale:\nMoving away from jack, we need all our fuzzing tools\nto be able to use alternative compilation paths.\n\nBUG: 19637031\n\nTest: nightly fuzzing (Aart\u0027s cron job for now)\nChange-Id: I92b13e46ed692d7813c072b576d8a3267ff36dd5\n"
    },
    {
      "commit": "02cb397857c979dffae95e2db2678a72ec407cf0",
      "tree": "61d5102c24412f9057a9b45dbfb14605268e692e",
      "parents": [
        "0b5cb35e40901303a4d4283722025d20f2e68e17",
        "4ec507da329e2ca148e01f19306b12e8a95571bc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 28 18:21:21 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 28 18:21:21 2017 +0000"
      },
      "message": "Merge \"Only MADV_RANDOM for low RAM devices\""
    },
    {
      "commit": "4ec507da329e2ca148e01f19306b12e8a95571bc",
      "tree": "4a234065794ad56652314578fae08329f11e42e0",
      "parents": [
        "5575513f1529ea43371a6d4d9a495b57e7d68409"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Aug 15 15:21:40 2017 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Aug 28 09:49:02 2017 -0700"
      },
      "message": "Only MADV_RANDOM for low RAM devices\n\nAdded logic to do MADV_RANDOM only for low ram devices since this\nhurts performance on high end devices.\n\nTest: build and flash\nBug: 63178181\n\n(cherry picked from commit 72662a63a7fe2ff2e096017628af1a89fdd7a5ca)\n\nChange-Id: I8f73a9b3d0133963fb709b1fa6491931f535a1b5\n"
    },
    {
      "commit": "0b5cb35e40901303a4d4283722025d20f2e68e17",
      "tree": "1fc1d1de751e8587218c79291e09bdbfc4ab19df",
      "parents": [
        "5575513f1529ea43371a6d4d9a495b57e7d68409",
        "047abb20d02546d3dd6e8630befc31e5568fa90e"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Mon Aug 28 16:30:48 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 28 16:30:48 2017 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Allow deoptimization when returning from a runtime method.\"\"\""
    },
    {
      "commit": "5575513f1529ea43371a6d4d9a495b57e7d68409",
      "tree": "b00118e894b439919ed3d96c68889a8282963cad",
      "parents": [
        "7f57e05355a26018901a230c97a2be11e67074ff",
        "88e1ddd4078c0aa1305e1f50d7bf330062f4defe"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Aug 26 01:07:46 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Aug 26 01:07:46 2017 +0000"
      },
      "message": "Merge \"Enable JVMTI GetOwnedMonitorInfo and GetOwnedMonitorStackDepthInfo\""
    },
    {
      "commit": "7f57e05355a26018901a230c97a2be11e67074ff",
      "tree": "640bcc23753564f6354ef441064b73bb948a8fd9",
      "parents": [
        "70f94cace70be42861ba0a433cfe4bdf6c892f7c",
        "641a473912b3bcaaff2c71070611490b7c547cfc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 25 23:49:50 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 25 23:49:50 2017 +0000"
      },
      "message": "Merge \"ART: Fix reference-related warnings\""
    },
    {
      "commit": "70f94cace70be42861ba0a433cfe4bdf6c892f7c",
      "tree": "e61eb298593641b1a068e55a795b2e13abdcbdb8",
      "parents": [
        "33dbce4fbc9d0a22b164ce5679de072a287cd25a",
        "5555dd1df3c7f3aaea548c3b657b9325538e9780"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 25 18:05:42 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 25 18:05:42 2017 +0000"
      },
      "message": "Merge changes Ifa0a68f1,I1f7d2260,Ie5d9cc57\n\n* changes:\n  ART: Fix inefficent find/rfind\n  ART: Avoid implicit conversion warning\n  ART: Fix macro parentheses warnings\n"
    },
    {
      "commit": "641a473912b3bcaaff2c71070611490b7c547cfc",
      "tree": "67bf5b2eaaeaf19c6cebac29984b49c19f172f9b",
      "parents": [
        "5555dd1df3c7f3aaea548c3b657b9325538e9780"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 24 13:21:35 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Aug 25 08:59:29 2017 -0700"
      },
      "message": "ART: Fix reference-related warnings\n\nMake some parameters and locals references to avoid unnecessary\ncopies.\n\nBug: 32619234\nTest: m test-art-host\nChange-Id: Idfed600c7c5492a80f72f51424253bcbea824a94\n"
    },
    {
      "commit": "5555dd1df3c7f3aaea548c3b657b9325538e9780",
      "tree": "41dc0a668aa007540ba9b576e7ece6474019735a",
      "parents": [
        "9e1fb35145bc3fdb36169f6b6717f981d2d102b1"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 24 13:50:21 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Aug 25 08:58:26 2017 -0700"
      },
      "message": "ART: Fix inefficent find/rfind\n\nUse character instead of string versions where possible.\n\nBug: 32619234\nTest: m test-art-host\nChange-Id: Ifa0a68f17cf9fac5a8c15a6a1f1d085f0c8dcdd7\n"
    },
    {
      "commit": "9e1fb35145bc3fdb36169f6b6717f981d2d102b1",
      "tree": "8a90da3d84f0d6cc8e507b5b8766c60757e0f5f6",
      "parents": [
        "49fc60e14e9de5302d0c7c60dabb5c57f335620f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 24 13:22:36 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Aug 25 08:57:18 2017 -0700"
      },
      "message": "ART: Avoid implicit conversion warning\n\nAdd NOLINT to experimental_flags.h, as the conversion is intended.\n\nBug: 32619234\nTest: m\nChange-Id: I1f7d2260a84c113b627e70240ae7ca22bdd1331f\n"
    },
    {
      "commit": "33dbce4fbc9d0a22b164ce5679de072a287cd25a",
      "tree": "0dd41b1e59b2d14a0e1e0499602c2d1491bd4e54",
      "parents": [
        "db65a35f703132ee02790d6fa04bcf9513d7da79",
        "fcecaebd2a99cffb2ced1662735317cd414017b1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 25 15:09:02 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 25 15:09:02 2017 +0000"
      },
      "message": "Merge \"ART: Use JniAbort instead of JniAbortF\""
    },
    {
      "commit": "49fc60e14e9de5302d0c7c60dabb5c57f335620f",
      "tree": "37dbf5caa1603f77a3605298201568d2c5ba964c",
      "parents": [
        "db65a35f703132ee02790d6fa04bcf9513d7da79"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 24 13:19:59 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Aug 25 07:40:39 2017 -0700"
      },
      "message": "ART: Fix macro parentheses warnings\n\nChange code for types. Add NOLINT where there\u0027s no better way.\n\nBug: 32619234\nTest: m\nChange-Id: Ie5d9cc576b72c4a1bb1d9e4b439333702800abb9\n"
    },
    {
      "commit": "fcecaebd2a99cffb2ced1662735317cd414017b1",
      "tree": "6650941fd3baf8dde0f80076d9d45d36dc0baa38",
      "parents": [
        "1a22746909c2801d7043300611200cfec17df9fb"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 24 18:04:23 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 24 18:04:23 2017 -0700"
      },
      "message": "ART: Use JniAbort instead of JniAbortF\n\nUse JniAbort where possible to avoid a frame on the stack when\naborting.\n\nTest: m test-art-host\nChange-Id: I5efb99288b62b521c140ae285d959e68ee8f9c5f\n"
    },
    {
      "commit": "88e1ddd4078c0aa1305e1f50d7bf330062f4defe",
      "tree": "aa779320c587f83d5b86e3f24e572bf9aa76d493",
      "parents": [
        "db65a35f703132ee02790d6fa04bcf9513d7da79"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Aug 21 13:09:55 2017 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Aug 24 16:31:00 2017 -0700"
      },
      "message": "Enable JVMTI GetOwnedMonitorInfo and GetOwnedMonitorStackDepthInfo\n\nThis enables the can_get_owned_monitor_info and\ncan_get_owned_monitor_stack_depth_info JVMTI capabilities and\nimplements all associated behaviors and functions.\n\nTest: ./test.py --host -j50\nBug: 34415266\nBug: 62821960\n\nChange-Id: Ia88d042259d5b15a4718f0b7698df7e7add87f1d\n"
    },
    {
      "commit": "db65a35f703132ee02790d6fa04bcf9513d7da79",
      "tree": "fa6292b44ab88e65bcf3a0c79a81c2d410d7ef87",
      "parents": [
        "bf7e6caea5b28cbb0c9333946d28f2637f1eed29",
        "68c48f065895ecd907e353a9ec28e1e23331fb3a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 24 22:49:04 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 24 22:49:04 2017 +0000"
      },
      "message": "Merge \"Dup file descriptor to prevent double close in oat writer.\""
    },
    {
      "commit": "047abb20d02546d3dd6e8630befc31e5568fa90e",
      "tree": "dfe08cef1f53a7559f792221e3e06dccbe704380",
      "parents": [
        "95d9bdd36b7ae6682f8602292fd547a0faa73829"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Wed Aug 23 15:26:57 2017 -0700"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Aug 24 14:36:21 2017 -0700"
      },
      "message": "Revert \"Revert \"Allow deoptimization when returning from a runtime method.\"\"\n\nThis reverts commit 2b87ae0073256e909e15f464300912552e58ee48.\n\nFor an invocation runtime method such as quick-to-interpreter bridge,\nadd a special stack walk to get the shorty for the invoked method.\n\nTest: run-test/gtest on both host and target, and 597-deopt-runtime-method.\nBug: 33616143\n\nChange-Id: I53ae93880f62c95dcf48005239b925d7f7b11eb6\n"
    },
    {
      "commit": "68c48f065895ecd907e353a9ec28e1e23331fb3a",
      "tree": "70aedb8cfed646d5aea322b13f5e3607be88e7ed",
      "parents": [
        "3ed4a4018ad11ea292cd1e04b0dfe005195d1e3c"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Aug 24 11:36:24 2017 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Thu Aug 24 14:08:48 2017 -0700"
      },
      "message": "Dup file descriptor to prevent double close in oat writer.\n\nBug: 36404686\nTest: art --profile --verbose -Xcompiler-option\n--compiler-filter\u003dspeed-profile -cp benchmarks.dex\nbenchmarks.CaffeineLoop.java.CaffeineLoop\n\nChange-Id: I4f43627a331b51a3f3a878a75694664c31a0c8b0\n"
    },
    {
      "commit": "bf7e6caea5b28cbb0c9333946d28f2637f1eed29",
      "tree": "cc7c33d31e508c931cb010c564fa75bf1aa264ed",
      "parents": [
        "3ed4a4018ad11ea292cd1e04b0dfe005195d1e3c",
        "23aa74818272a9d659414536324ae9133ecb8743"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 24 20:34:25 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 24 20:34:25 2017 +0000"
      },
      "message": "Merge \"Fix issue with RawMonitors around thread suspension.\""
    },
    {
      "commit": "23aa74818272a9d659414536324ae9133ecb8743",
      "tree": "cc7c33d31e508c931cb010c564fa75bf1aa264ed",
      "parents": [
        "3ed4a4018ad11ea292cd1e04b0dfe005195d1e3c"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Aug 16 10:01:13 2017 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Aug 24 11:37:24 2017 -0700"
      },
      "message": "Fix issue with RawMonitors around thread suspension.\n\nInvestigation of real-world JVMTI agents revealed that some rely on\nthe RawMonitorEnter function acting as a Java suspend point. If it\nfails to act as one the agent could end up deadlocked.\n\nTest: ./test.py --host -j50\nBug: 62821960\nBug: 34415266\n\nChange-Id: I3daf5c49c1c9870e1f69eebfd4c6f2ad15224510\n"
    },
    {
      "commit": "3ed4a4018ad11ea292cd1e04b0dfe005195d1e3c",
      "tree": "5b74f3191cf4f4470faf7dab814eb798372f5ad4",
      "parents": [
        "d98350db5c8b1ffc4e63132a40da7943a3dd0ca6",
        "da483164bac6a630bcdbdd020ca5dec7b131daae"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 24 17:37:04 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 24 17:37:04 2017 +0000"
      },
      "message": "Merge \"Implement OneBit intrinsics for arm64.\""
    },
    {
      "commit": "d98350db5c8b1ffc4e63132a40da7943a3dd0ca6",
      "tree": "1cfd2cb6a363940ac764157e1a438ff46173fc7b",
      "parents": [
        "4c154d593a488e47df635d3558b087c7d0e050c1",
        "6e1607e247d979a1671a1fd5a98de3f1031fe719"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Aug 24 16:44:19 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 24 16:44:19 2017 +0000"
      },
      "message": "Merge \"Rename instrumentation ExceptionCaught to ExceptionThrown\""
    },
    {
      "commit": "4c154d593a488e47df635d3558b087c7d0e050c1",
      "tree": "20c07f69cf6084799565ff81ee2c6f1b046ecaaf",
      "parents": [
        "1a22746909c2801d7043300611200cfec17df9fb",
        "2c30e4a2a2bd73c3e9d327d4b5d059b75cc0f798"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 24 16:05:49 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 24 16:05:49 2017 +0000"
      },
      "message": "Merge changes Ic2da319f,I9e90029d\n\n* changes:\n  ART: Remove art and art/runtime include_dir directives\n  ART: Move cmdline parser to header library\n"
    },
    {
      "commit": "da483164bac6a630bcdbdd020ca5dec7b131daae",
      "tree": "9490be50c37b617e18c2cce61544ff95f24ee0c2",
      "parents": [
        "86d1db15332571f21bd588efed0de3384269a1c5"
      ],
      "author": {
        "name": "Petre-Ionut Tudor",
        "email": "petre-ionut.tudor@linaro.org",
        "time": "Mon Aug 14 13:54:31 2017 +0100"
      },
      "committer": {
        "name": "Petre-Ionut Tudor",
        "email": "petre-ionut.tudor@linaro.org",
        "time": "Thu Aug 24 13:48:30 2017 +0100"
      },
      "message": "Implement OneBit intrinsics for arm64.\n\nImplemement intrinsics for highestOneBit and lowestOneBit for\njava.lang.Integer and java.lang.Long.\n\nTest: 568-checker-onebit, test_art_target, test_art_host.\nChange-Id: I9d2bd04cb28b739c29811c73939fdbc25007f15a\n"
    },
    {
      "commit": "1a22746909c2801d7043300611200cfec17df9fb",
      "tree": "aa24d85e137e3029a38c03088a287e4b45a3b560",
      "parents": [
        "c1238d8be9a8cec4d62cc89c7604dc3272c4a461",
        "23b752b2496536d39b5132ded2c64f48b2891a0d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 24 12:17:40 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 24 12:17:40 2017 +0000"
      },
      "message": "Merge \"Remove obsolete code paths from the ARM code generator\""
    },
    {
      "commit": "c1238d8be9a8cec4d62cc89c7604dc3272c4a461",
      "tree": "79fe76ee1163547242ed89d04991a335bcc4f739",
      "parents": [
        "3bdf3f24939f4f0ba36738b68d08b4bd4c8e32e3",
        "c5e0d3fb4bce1490dcdb65b1d858b1c955bf71c5"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 24 10:51:21 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 24 10:51:21 2017 +0000"
      },
      "message": "Merge \"compiler_driver: treat java/lang/invoke as others\""
    },
    {
      "commit": "c5e0d3fb4bce1490dcdb65b1d858b1c955bf71c5",
      "tree": "79fe76ee1163547242ed89d04991a335bcc4f739",
      "parents": [
        "3bdf3f24939f4f0ba36738b68d08b4bd4c8e32e3"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Aug 22 19:00:04 2017 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu Aug 24 09:52:20 2017 +0100"
      },
      "message": "compiler_driver: treat java/lang/invoke as others\n\nReverts commit e3eae5e41502c85ba0b4ef88340c10bb53795a47.\n\nRemoves exemption for java/lang/invoke/* from verification\nDCHECK. No longer required with invoke-polymorphic support.\n\nBug: 32496585\nTest: art/test.py --host -j32\nChange-Id: Ie73274b723febfcffb687e879a80ffdb680f9491\n"
    },
    {
      "commit": "3bdf3f24939f4f0ba36738b68d08b4bd4c8e32e3",
      "tree": "8042ebb6c5074d04435faa61cc1dc7f88c83678d",
      "parents": [
        "6ca093387115d65e7963eef83e9e3c4b5908017c",
        "27bd4dd81962b0e59df9318ae8efc83df99ebe0a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 24 01:16:34 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 24 01:16:34 2017 +0000"
      },
      "message": "Merge \"ART: Use platform_include header library\""
    },
    {
      "commit": "6ca093387115d65e7963eef83e9e3c4b5908017c",
      "tree": "9a3f3d05cea82c2746166868f6bebd2075d3f652",
      "parents": [
        "95d9bdd36b7ae6682f8602292fd547a0faa73829",
        "12fadcd25e30c832b055d0ce37ad11e85a1829c2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 23 23:20:47 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 23 23:20:47 2017 +0000"
      },
      "message": "Merge \"ART: Rerun verifier in verbose mode on boot cp failure\""
    },
    {
      "commit": "2c30e4a2a2bd73c3e9d327d4b5d059b75cc0f798",
      "tree": "698286ee61f457069b5a53ca6869319b8d9e5acb",
      "parents": [
        "3157fc26d96951ff4acfb4feb4597e74a92da2a7"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Aug 23 11:31:32 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Aug 23 16:06:00 2017 -0700"
      },
      "message": "ART: Remove art and art/runtime include_dir directives\n\nRemove some overly broad or unnecessary include directives. Fix up\ncode.\n\nTest: mmma art\nChange-Id: Ic2da319f39102d59566e780f3e15fe007a3c36d6\n"
    },
    {
      "commit": "27bd4dd81962b0e59df9318ae8efc83df99ebe0a",
      "tree": "18ac04bc1d5ff9cf59fd08c353b8cf3d9e1eb6f2",
      "parents": [
        "2ee17e69110a9ef98ea8c94219c7da23b918ef3f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Aug 23 11:27:08 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Aug 23 16:06:00 2017 -0700"
      },
      "message": "ART: Use platform_include header library\n\nUse nativehelper\u0027s platform_include header library instead of a\ndirect include.\n\nTest: mmma art\nChange-Id: Ided44668b00c5822d2de803ac8058086cf70f2be\n"
    },
    {
      "commit": "3157fc26d96951ff4acfb4feb4597e74a92da2a7",
      "tree": "93c3a03a8eae4fc9f430531f25d8be3d4d8b5af7",
      "parents": [
        "27bd4dd81962b0e59df9318ae8efc83df99ebe0a"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Aug 23 09:43:46 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Aug 23 16:06:00 2017 -0700"
      },
      "message": "ART: Move cmdline parser to header library\n\nExpress the cmdline parser as a header library.\n\nTODO: Express the libart dependency correctly.\n\nTest: m\nChange-Id: I9e90029d047ab0d75a455a2361d5213a8fa6f361\n"
    },
    {
      "commit": "95d9bdd36b7ae6682f8602292fd547a0faa73829",
      "tree": "71fbc9572541cdf08c21c88e3a1d5ff92f1d9885",
      "parents": [
        "31d567972b507f66c7ab3a528de9c2144e3f5d2d",
        "617c9c502cb9f60dc55f8679e6de982732e95f3c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 23 22:25:32 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 23 22:25:32 2017 +0000"
      },
      "message": "Merge \"Support running jdwp tests on RI and with alternate JDWP\""
    },
    {
      "commit": "31d567972b507f66c7ab3a528de9c2144e3f5d2d",
      "tree": "c6e6903db6bf3b84d4bbbadb055a6ded1fc51ef7",
      "parents": [
        "2ee17e69110a9ef98ea8c94219c7da23b918ef3f",
        "15c9f3345f8ac2681f91a330fde99759619c64dd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 23 21:10:41 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 23 21:10:41 2017 +0000"
      },
      "message": "Merge \"art: Add a few more patterns to .gitignore\""
    },
    {
      "commit": "617c9c502cb9f60dc55f8679e6de982732e95f3c",
      "tree": "5dcc3ffbf044156721e20722d0c33b00b6d205fc",
      "parents": [
        "675c779cb046bca49229e1e5268d0eb622159214"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Aug 18 11:52:25 2017 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Aug 23 13:57:55 2017 -0700"
      },
      "message": "Support running jdwp tests on RI and with alternate JDWP\n\nChange the run-jdwp-tests.sh script so it can easily be used to run\nour apache-harmony jdwp tests against the RI and to run them with\nalternative JDWP implementations on all modes.\n\nTest: ./art/tools/run-jdwp-tests.sh --mode\u003dhost\nTest: ./art/tools/run-jdwp-tests.sh --mode\u003djvm\nTest: ./art/tools/run-jdwp-tests.sh \\\n        --mode\u003djvm \\\n        --jdwp-path /usr/lib/jvm/java-6-openjdk-amd64/jre/lib/amd64/libjdwp.so\nTest: ./art/tools/run-jdwp-tests.sh \\\n        --mode\u003dhost \\\n        --debug \\\n        --variant\u003dx64 \\\n        -Xplugin:$ANDROID_HOST_OUT/lib64/libopenjdkjvmtid.so \\\n        --jdwp-path /usr/lib/jvm/default-java/jre/lib/amd64/libjdwp.so\n\nBug: 62821960\n\nChange-Id: Ia28ba68232b6b9217f810cf0788355cf7f70b7ae\n"
    },
    {
      "commit": "12fadcd25e30c832b055d0ce37ad11e85a1829c2",
      "tree": "0270ba6d251ec44f5e11d910de6e4b1daece5438",
      "parents": [
        "2ee17e69110a9ef98ea8c94219c7da23b918ef3f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 03 05:06:28 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Aug 23 13:56:30 2017 -0700"
      },
      "message": "ART: Rerun verifier in verbose mode on boot cp failure\n\nWhen we fail to verify a boot classpath class during boot image\ncompilation, re-run the verifier in verbose mode to print soft failures\nbefore aborting.\n\nBug: 64290614\nTest: m test-art-host\nTest: manual\nChange-Id: I1c875ee4a5a73f80b7f8b75be35ed885bc0bf427\n"
    },
    {
      "commit": "6e1607e247d979a1671a1fd5a98de3f1031fe719",
      "tree": "1174cdcce601419dcd5d1563777f721477d5cb6a",
      "parents": [
        "2ee17e69110a9ef98ea8c94219c7da23b918ef3f"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Aug 23 10:06:18 2017 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Aug 23 13:15:17 2017 -0700"
      },
      "message": "Rename instrumentation ExceptionCaught to ExceptionThrown\n\nThe instrumentation ExceptionCaught event was badly named since it is\nactually sent at the time the exception is thrown and is sent even if\nthe exception is never actually caught. Rename it and associated\nmethods/fields to ExceptionThrown to more accurately reflect the\nevent\u0027s semantics.\n\nTest: ./test.py --host -j50\nChange-Id: I1e9c401ab619259b25928dbf19f62d3fa9573d47\n"
    },
    {
      "commit": "15c9f3345f8ac2681f91a330fde99759619c64dd",
      "tree": "c25701102d4d76692aa12b93fa645a928bf282c4",
      "parents": [
        "a11100ee3ae6ef6a9000dc924e9a607a18ac1a2a"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Aug 23 11:37:54 2017 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Aug 23 11:42:33 2017 -0700"
      },
      "message": "art: Add a few more patterns to .gitignore\n\nIgnore compiled python files, IDEA (intellij) projects, etc.\n\nChange-Id: I34d303d051c203ec910bf5753ccd916d71857cb2\n"
    },
    {
      "commit": "2ee17e69110a9ef98ea8c94219c7da23b918ef3f",
      "tree": "3b7401a6cc2f1e16ef238eccf69573537398de0a",
      "parents": [
        "cd63fc8a656a7548e97aac755dc9820d5bc11240",
        "2b87ae0073256e909e15f464300912552e58ee48"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 23 12:12:04 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 23 12:12:04 2017 +0000"
      },
      "message": "Merge changes I6407c9b4,I49d9da67\n\n* changes:\n  Revert \"Allow deoptimization when returning from a runtime method.\"\n  Revert \"Fix some issues for deoptimizing runtime methods.\"\n"
    },
    {
      "commit": "2b87ae0073256e909e15f464300912552e58ee48",
      "tree": "0b9db32799d6efa93d3db6dca5170d185627e138",
      "parents": [
        "fc63babf6be7bdd96be1492391594ad628f1fd3c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 23 10:16:26 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 23 10:16:47 2017 +0000"
      },
      "message": "Revert \"Allow deoptimization when returning from a runtime method.\"\n\nReason for revert:\n    Some tests failing even after a minor fix.\n\nThis reverts commit edeba10d523c3e283ab939a16c7203af32c7707e.\n\nChange-Id: I6407c9b489c016d19a12c28d1da0efa55ad554a7\n"
    },
    {
      "commit": "fc63babf6be7bdd96be1492391594ad628f1fd3c",
      "tree": "88f13395178e7a17979dcb0666c65c024732be6b",
      "parents": [
        "57b4e13d9528a3ebac05db280be1df92a261cf79"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 23 10:15:24 2017 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Aug 23 10:15:24 2017 +0000"
      },
      "message": "Revert \"Fix some issues for deoptimizing runtime methods.\"\n\nReason for revert:\n    Some tests still failing, reverting the original CL.\n\nThis reverts commit 57b4e13d9528a3ebac05db280be1df92a261cf79.\n\nChange-Id: I49d9da676be7a1994b39ea9046c8d62695ff8422\n"
    },
    {
      "commit": "cd63fc8a656a7548e97aac755dc9820d5bc11240",
      "tree": "16d2abc83b01044d1f5503051426268b1de81d93",
      "parents": [
        "8c399a5e3d344ee84944708bbcd0967d78b328df",
        "57b4e13d9528a3ebac05db280be1df92a261cf79"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Wed Aug 23 05:03:55 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 23 05:03:55 2017 +0000"
      },
      "message": "Merge \"Fix some issues for deoptimizing runtime methods.\""
    },
    {
      "commit": "57b4e13d9528a3ebac05db280be1df92a261cf79",
      "tree": "3eefd0cfb93bb1e9366c48e5511ecca4abedfd4e",
      "parents": [
        "edeba10d523c3e283ab939a16c7203af32c7707e"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Tue Aug 22 16:22:57 2017 -0700"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Tue Aug 22 16:36:42 2017 -0700"
      },
      "message": "Fix some issues for deoptimizing runtime methods.\n\nDon\u0027t dereference a null return value after deoptimizing a runtime\nmethod since we don\u0027t classify the return type of a runtime method.\nRight now we just re-execute idempotent runtime methods.\n\nBug: 33616143\nTest: host run-test\nChange-Id: Ifc81e0e466e46f1b39e632b6af0b5f330bce6413\n"
    },
    {
      "commit": "8c399a5e3d344ee84944708bbcd0967d78b328df",
      "tree": "1207aa6a38bbb33067ecd15d04b0059f18479be9",
      "parents": [
        "34acbf4525a686dec99216fc4b0b27a68b370a98",
        "1d8a9741d2979d09a21942fbf9107d212ce2511b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 22 20:51:40 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 22 20:51:40 2017 +0000"
      },
      "message": "Merge \"Fix interaction of VMInit and ThreadStart events.\""
    },
    {
      "commit": "34acbf4525a686dec99216fc4b0b27a68b370a98",
      "tree": "d5a669d04b7e115117569a14d499b96c274fd09b",
      "parents": [
        "39790226262cab08ee612054f0933044d82b354d",
        "0cd67eb174d6abec8e3100ec0883f7ae483802d5"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Aug 22 18:17:32 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 22 18:17:32 2017 +0000"
      },
      "message": "Merge \"Remove bits about kPoison in ObjPtr\u0027s documentation.\""
    },
    {
      "commit": "39790226262cab08ee612054f0933044d82b354d",
      "tree": "8515a101600c3cdedb51216cad8ebe449a28c22b",
      "parents": [
        "4d545f2e70f9bbd355ca364d5b940e51f37b20ba",
        "994cfdee26c19f6e5d423c6dbe5f237e13bf0c2b"
      ],
      "author": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Tue Aug 22 10:54:45 2017 -0700"
      },
      "committer": {
        "name": "Bill Yi",
        "email": "byi@google.com",
        "time": "Tue Aug 22 10:54:45 2017 -0700"
      },
      "message": "Merge remote-tracking branch \u0027goog/stage-aosp-master\u0027 into HEAD\n"
    },
    {
      "commit": "4d545f2e70f9bbd355ca364d5b940e51f37b20ba",
      "tree": "de4a0126035fd0653ddb813609b043fec32e75bf",
      "parents": [
        "437130bbee51ec467471ca7c745669b6855136d5",
        "ef7b9b810f66118aa37442b8bc87b83cf27c590c"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 22 17:52:42 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 22 17:52:42 2017 +0000"
      },
      "message": "Merge \"Shorten sleep for racy run-test 063.\""
    },
    {
      "commit": "437130bbee51ec467471ca7c745669b6855136d5",
      "tree": "d9502b65b469bf1923bfeb9f46e48c5b3e8545a3",
      "parents": [
        "b099f04068069c6c7d4a5a2407d532cf430d1a0d",
        "edeba10d523c3e283ab939a16c7203af32c7707e"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Tue Aug 22 16:46:27 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 22 16:46:27 2017 +0000"
      },
      "message": "Merge \"Allow deoptimization when returning from a runtime method.\""
    },
    {
      "commit": "b099f04068069c6c7d4a5a2407d532cf430d1a0d",
      "tree": "a6b82b5c7ce276e65e6cc9c794791cdd3981a3bd",
      "parents": [
        "04ae110f02cad76cfae97b6010f1f1dc64be7fcf",
        "379e57301a2a90ade18c36a1a4dfc90600716004"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Aug 22 16:40:14 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 22 16:40:14 2017 +0000"
      },
      "message": "Merge \"Increase sleep time in the main thread of test 067-preemptive-unpark.\""
    },
    {
      "commit": "0cd67eb174d6abec8e3100ec0883f7ae483802d5",
      "tree": "c10794cd5484333189f2fc2ad962afbfb201b925",
      "parents": [
        "04ae110f02cad76cfae97b6010f1f1dc64be7fcf"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Aug 22 16:49:34 2017 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Aug 22 16:49:34 2017 +0100"
      },
      "message": "Remove bits about kPoison in ObjPtr\u0027s documentation.\n\nFollow-up CL to https://android-review.googlesource.com/342532.\n\nTest: mmma art\nBug: 35644797\nChange-Id: I86c2b74bd25e7d38a684bcb527300fb7e6e5ab29\n"
    },
    {
      "commit": "ef7b9b810f66118aa37442b8bc87b83cf27c590c",
      "tree": "13fef324a88fe05b196d8b3fd97b390ef42d1b76",
      "parents": [
        "34484e42878e43aeccc0f21334729d3805e2e3ce"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Mon Aug 21 16:43:01 2017 -0700"
      },
      "committer": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Mon Aug 21 16:59:44 2017 -0700"
      },
      "message": "Shorten sleep for racy run-test 063.\n\nDidn\u0027t look closely enough to know exactly why this needs to be\nshortened, but I\u0027ve verified that it fixes the case where we run with:\n--interpreter, --optimizing, and --gcstress.\n\nBug: 2310700\nTest: ./art/test/testrunner/run_build_test_target.py -j110\nart-read-barrier-gcstress\n\nChange-Id: Ic82f1bbb178c0debdfafc260084e760df226e298\n"
    },
    {
      "commit": "edeba10d523c3e283ab939a16c7203af32c7707e",
      "tree": "88f13395178e7a17979dcb0666c65c024732be6b",
      "parents": [
        "c9d88538d73680563f7a6e73885acfff2c55ef58"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Wed Apr 12 13:43:15 2017 -0700"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Mon Aug 21 16:44:57 2017 -0700"
      },
      "message": "Allow deoptimization when returning from a runtime method.\n\nThis CL patches the return pc of a runtime method to allow the top\nJava frame to be deoptimized. This should fix the issue that debugger\ncannot break in a busy loop. It also means we can now do full async\ndeoptimization, if we want to enable it by letting environment keep\nregisters live.\n\nart_quick_instrumentation_exit and art_quick_deoptimize now need to save\nall registers since some compiler slow paths assume runtime methods save\neverything.\n\nSome special handling needs to be done to decide whether dex_pc should\nbe advanced when deoptimized back to interpreter.\n\nTest: run-test/gtest on both host and target, and 597-deopt-runtime-method.\nBug: 33616143\nChange-Id: I2e2c199998825afd5057f7deadfc8fa203ce1936\n"
    },
    {
      "commit": "994cfdee26c19f6e5d423c6dbe5f237e13bf0c2b",
      "tree": "6eed92dd1565bdb573eeb88faf11d04d0c3d96e0",
      "parents": [
        "22a4b0e483d02edd43d76efaa7a5f60a0d77e378",
        "04ae110f02cad76cfae97b6010f1f1dc64be7fcf"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Aug 21 20:08:24 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Aug 21 20:08:24 2017 +0000"
      },
      "message": "Merge \"Ensure GetPhase returns correct values.\"\nam: 04ae110f02\n\nChange-Id: I308b049a18e5cbe1dc6a49e5cd789d4768933200\n"
    },
    {
      "commit": "04ae110f02cad76cfae97b6010f1f1dc64be7fcf",
      "tree": "fec5b6a8b05cf7a53c7f9307883b1a1f031c1d05",
      "parents": [
        "34484e42878e43aeccc0f21334729d3805e2e3ce",
        "bf9e516f4964ee900d2996abaf60977c1c643aa3"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 21 19:56:38 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 21 19:56:38 2017 +0000"
      },
      "message": "Merge \"Ensure GetPhase returns correct values.\""
    },
    {
      "commit": "379e57301a2a90ade18c36a1a4dfc90600716004",
      "tree": "a3b538f11a52a5d4277e19b8c0d55e5aa8c2dcce",
      "parents": [
        "46a62897cee9e24188ca95eeb72ad76bf84e0aff"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Aug 21 19:26:22 2017 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Aug 21 19:26:22 2017 +0100"
      },
      "message": "Increase sleep time in the main thread of test 067-preemptive-unpark.\n\nGive a bit more time to the ParkTester thread to honor the\npark command.\n\nTest: art/test/testrunner/testrunner.py -t 067-preemptive-unpark\nBug: 22242462\nChange-Id: Iba33030e7537cb7cf3751bffc376a9509067b4c6\n"
    },
    {
      "commit": "1d8a9741d2979d09a21942fbf9107d212ce2511b",
      "tree": "d630dccfbe632247f04a0428f8a72766c3b673fe",
      "parents": [
        "bf9e516f4964ee900d2996abaf60977c1c643aa3"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Aug 17 11:12:06 2017 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Mon Aug 21 11:11:30 2017 -0700"
      },
      "message": "Fix interaction of VMInit and ThreadStart events.\n\nReal world agents require that one is able to create, and run, new\nthreads while the VMInit event is still being executed. Further, these\nrequire that ThreadStart events can occur concurrently with the VMInit\nevent. This CL enables this behavior and adds a test for the\ninteraction of these two events.\n\nTest: ./test.py --host -j50\nBug: 62821960\nBug: 34415266\n\nChange-Id: I305f1ce3f1df9bf5a7e33027e0724f5fbac5c0f1\n"
    },
    {
      "commit": "22a4b0e483d02edd43d76efaa7a5f60a0d77e378",
      "tree": "280a8cb760bd31f91b6bd4bd1b9ecf2bf0beffd6",
      "parents": [
        "57e3caefca5924c2b0eba049c8f55f0e886a11e6",
        "34484e42878e43aeccc0f21334729d3805e2e3ce"
      ],
      "author": {
        "name": "Alexey Frunze",
        "email": "Alexey.Frunze@imgtec.com",
        "time": "Mon Aug 21 11:18:32 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Aug 21 11:18:32 2017 +0000"
      },
      "message": "Merge \"MIPS: Follow-up to \"Add two special runtime methods\"\"\nam: 34484e4287\n\nChange-Id: Ib0d5b8493890baf6c82c5ce4b146981006c3a841\n"
    },
    {
      "commit": "34484e42878e43aeccc0f21334729d3805e2e3ce",
      "tree": "18ec55679c22c7d3b4fe56d04eba29ba37a0df06",
      "parents": [
        "ae53f10531e559fbbdbe390316b092c6a9c5df39",
        "19428ad0cc3494714470328fb6c74fa3e92a187b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 21 11:09:28 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 21 11:09:28 2017 +0000"
      },
      "message": "Merge \"MIPS: Follow-up to \"Add two special runtime methods\"\""
    },
    {
      "commit": "23b752b2496536d39b5132ded2c64f48b2891a0d",
      "tree": "c047c3091af3a36ab18b269f7b1a422c36a8613a",
      "parents": [
        "ae53f10531e559fbbdbe390316b092c6a9c5df39"
      ],
      "author": {
        "name": "Anton Kirilov",
        "email": "anton.kirilov@linaro.org",
        "time": "Thu Jul 20 14:40:44 2017 +0100"
      },
      "committer": {
        "name": "Anton Kirilov",
        "email": "anton.kirilov@linaro.org",
        "time": "Mon Aug 21 11:50:24 2017 +0100"
      },
      "message": "Remove obsolete code paths from the ARM code generator\n\nAfter the last changes to the ARM code generator, several code paths\nthat handle some HCondition corner cases are rarely executed and are,\nstrictly speaking, unnecessary because the rest of the compiler can do\ntheir job with minimal modifications (and even generate better code),\nbut have been kept in order to minimize the differences with the\nprevious ARM code generator. Now that the latter has been removed, the\nobsolete code paths can be deleted as well (practically without any\nchange in behaviour).\n\nFurthermore, this commit contains a preliminary improved fix for the\nissue checked by the 657-branches test. The proper fix, however, should\nbe in the instruction simplifier or another compiler pass before code\ngeneration.\n\nTest: 657-branches\nTest: test-art-target\nChange-Id: I7d785a1607bc99bff0bfc33050b567a9cf6925c9\n"
    },
    {
      "commit": "57e3caefca5924c2b0eba049c8f55f0e886a11e6",
      "tree": "f24a0d7c30dcf941b91212b4f52a849f48b30964",
      "parents": [
        "582759abbd70bde47d6ee3382ce05fac44c13a6e",
        "ae53f10531e559fbbdbe390316b092c6a9c5df39"
      ],
      "author": {
        "name": "Alexey Frunze",
        "email": "Alexey.Frunze@imgtec.com",
        "time": "Sat Aug 19 11:56:36 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Aug 19 11:56:36 2017 +0000"
      },
      "message": "Merge \"MIPS32: Allow some patched instructions in delay slots\"\nam: ae53f10531\n\nChange-Id: Iecd5dcd408d6738aca15073507673b57ef32d012\n"
    },
    {
      "commit": "ae53f10531e559fbbdbe390316b092c6a9c5df39",
      "tree": "14abcc3ef1b8232c662a095736707765b2359ad5",
      "parents": [
        "b28118c74a61b8d1ff9432e753f1f11a72ce049c",
        "a663d9d5b32a525794a2b98fa43da54dd7c79e3b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Aug 19 11:52:43 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Aug 19 11:52:43 2017 +0000"
      },
      "message": "Merge \"MIPS32: Allow some patched instructions in delay slots\""
    },
    {
      "commit": "a663d9d5b32a525794a2b98fa43da54dd7c79e3b",
      "tree": "88c643ca5ebfb0dfe11f45a9b232f9a2592fb043",
      "parents": [
        "b9463674919ba91fe131e65785ad67b4202e86b9"
      ],
      "author": {
        "name": "Alexey Frunze",
        "email": "Alexey.Frunze@imgtec.com",
        "time": "Mon Jul 31 18:43:18 2017 -0700"
      },
      "committer": {
        "name": "Alexey Frunze",
        "email": "Alexey.Frunze@imgtec.com",
        "time": "Fri Aug 18 15:29:31 2017 -0700"
      },
      "message": "MIPS32: Allow some patched instructions in delay slots\n\nTest: test-art-host-gtest\nTest: booted MIPS64 (with 2nd arch MIPS32R6) in QEMU\nTest: test-art-target-gtest32\nTest: testrunner.py --target --optimizing --32\nTest: same tests as above on CI20\nTest: booted MIPS32R2 in QEMU\n\nChange-Id: I7e1ba59993008014d0115ae20c56e0a71fef0fb0\n"
    },
    {
      "commit": "582759abbd70bde47d6ee3382ce05fac44c13a6e",
      "tree": "f648c7f62afa19f723de34053c4e774729ca56c7",
      "parents": [
        "7e5c917aee251c2c660163695f98058f3343eda7",
        "b28118c74a61b8d1ff9432e753f1f11a72ce049c"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Aug 18 20:17:48 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 18 20:17:48 2017 +0000"
      },
      "message": "Merge \"Call madvise hints for image dex files\"\nam: b28118c74a\n\nChange-Id: I770cdaa4d54f93f9de27657d4c9f841f120cd5b9\n"
    },
    {
      "commit": "b28118c74a61b8d1ff9432e753f1f11a72ce049c",
      "tree": "a1349fa9d461515d231478df0118e1443e178988",
      "parents": [
        "c9d88538d73680563f7a6e73885acfff2c55ef58",
        "be8303d3e7afb5a9088b69858cbcf40cf8737d1a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 18 20:10:18 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 18 20:10:18 2017 +0000"
      },
      "message": "Merge \"Call madvise hints for image dex files\""
    },
    {
      "commit": "7e5c917aee251c2c660163695f98058f3343eda7",
      "tree": "334f67f6f3c84cd9ee1421a1400e9028c65d0210",
      "parents": [
        "4d5b4d7c477232704ecb38b1ed6dae3a70c9b5fe",
        "c9d88538d73680563f7a6e73885acfff2c55ef58"
      ],
      "author": {
        "name": "Jeff Hao",
        "email": "jeffhao@google.com",
        "time": "Fri Aug 18 17:55:05 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 18 17:55:05 2017 +0000"
      },
      "message": "Merge \"Extend sleep for racy run-test 063.\"\nam: c9d88538d7\n\nChange-Id: I61eddc71da8c81023a809972a0fba98af5d0c4fa\n"
    },
    {
      "commit": "be8303d3e7afb5a9088b69858cbcf40cf8737d1a",
      "tree": "a1349fa9d461515d231478df0118e1443e178988",
      "parents": [
        "c9d88538d73680563f7a6e73885acfff2c55ef58"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Aug 17 17:39:39 2017 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Aug 18 10:51:59 2017 -0700"
      },
      "message": "Call madvise hints for image dex files\n\nAfter opening image spaces, perform madvise hints for the\ncorresponding dex files.\n\nMoved kMadviseDexFileAccesses to oat_file.cc to not have this enabled\nyet.\n\nBug: 63178181\nTest: make and flash\n\n(cherry picked from commit 3efecdef520e80cd79f34549c4ba3a77042d0d92)\n\nChange-Id: If91537e098b159d00354551ce6400a806549b2ca\n"
    },
    {
      "commit": "c9d88538d73680563f7a6e73885acfff2c55ef58",
      "tree": "0b9db32799d6efa93d3db6dca5170d185627e138",
      "parents": [
        "46a62897cee9e24188ca95eeb72ad76bf84e0aff",
        "584a2db56ff61de458ca28c28fff1b3cc2d692c6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 18 17:47:55 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 18 17:47:55 2017 +0000"
      },
      "message": "Merge \"Extend sleep for racy run-test 063.\""
    },
    {
      "commit": "4d5b4d7c477232704ecb38b1ed6dae3a70c9b5fe",
      "tree": "553f3230e1238b424b5d9bdf87b6593c4c3e7a5f",
      "parents": [
        "a19140e9336d917589a25d347e596e3f828dafbe",
        "46a62897cee9e24188ca95eeb72ad76bf84e0aff"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Aug 18 15:34:57 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 18 15:34:57 2017 +0000"
      },
      "message": "Merge \"Add an operation using a semaphore to test 004-ThreadStress.\"\nam: 46a62897ce\n\nChange-Id: I6e2080d5da3200b2e5025d04e472d66c894823ea\n"
    },
    {
      "commit": "46a62897cee9e24188ca95eeb72ad76bf84e0aff",
      "tree": "d9355ea05e6108445bc8fe4bc40209ceadbf88d9",
      "parents": [
        "5011149cbb1dddf7161ef294b8ed265862ae6d91",
        "0c806b16847dbd5813595adc9be09c623f912690"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Aug 18 15:25:11 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 18 15:25:11 2017 +0000"
      },
      "message": "Merge \"Add an operation using a semaphore to test 004-ThreadStress.\""
    },
    {
      "commit": "0c806b16847dbd5813595adc9be09c623f912690",
      "tree": "5d427ae5c8e932b55d13f676b72ae685876149e8",
      "parents": [
        "f0c66eb04db3c9fc513f50dfaad1385cf703820e"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Aug 15 15:09:55 2017 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Aug 18 13:38:44 2017 +0100"
      },
      "message": "Add an operation using a semaphore to test 004-ThreadStress.\n\nAdd a new QueuedWait operation requiring the acquisition of\na permit from a java.util.concurrent.Semaphore, to exercise\njava.util.concurrent.locks.AbstractQueuedSynchronizer (used\nin the implementation of java.util.concurrent.Semaphore) in\n004-ThreadStress.\n\nAlso add missing command-line options and documentation for\nexisting operations.\n\nTest: art/test/testrunner/testrunner.py -t 004-ThreadStress\nBug: 63822989\nChange-Id: I99e55969a0df6565a4900ea3c14bf55a616c46a3\n"
    },
    {
      "commit": "a19140e9336d917589a25d347e596e3f828dafbe",
      "tree": "46243f3ea24de4be25c5aa24649b8a015c041b7a",
      "parents": [
        "9af5b85b6a5d4f46709c05c2615046749922aadb",
        "5011149cbb1dddf7161ef294b8ed265862ae6d91"
      ],
      "author": {
        "name": "Goran Jakovljevic",
        "email": "Goran.Jakovljevic@imgtec.com",
        "time": "Fri Aug 18 12:14:13 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 18 12:14:13 2017 +0000"
      },
      "message": "Merge \"MIPS64: Implement HSelect\"\nam: 5011149cbb\n\nChange-Id: I2d4cb5d05f86abdb933941e4530f98062a01bd3b\n"
    },
    {
      "commit": "5011149cbb1dddf7161ef294b8ed265862ae6d91",
      "tree": "e420ba6336d69308e73ead7ff7984d4c08e7bcf8",
      "parents": [
        "65ee0f086581a8fbaa18473e8bac7ff9372cff0a",
        "2dec927e60395210946e5b9dbaa03111dad2466a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 18 11:59:14 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 18 11:59:14 2017 +0000"
      },
      "message": "Merge \"MIPS64: Implement HSelect\""
    },
    {
      "commit": "9af5b85b6a5d4f46709c05c2615046749922aadb",
      "tree": "16ae34c8b73a138d7a91651078f5c35264848f24",
      "parents": [
        "622533bacfd7655bf36c4929fcd3aab7df474780",
        "65ee0f086581a8fbaa18473e8bac7ff9372cff0a"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Fri Aug 18 08:19:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 18 08:19:00 2017 +0000"
      },
      "message": "Merge changes I2b8d8bc9,Iad2890b3\nam: 65ee0f0865\n\nChange-Id: I1d6697de3824076b0d0c9dcbaa7c8b4f6766d739\n"
    },
    {
      "commit": "65ee0f086581a8fbaa18473e8bac7ff9372cff0a",
      "tree": "6d12a9e9a0b74e59bf260a63e1140d2ff05f7afc",
      "parents": [
        "ad008d58ed0d2e12acf20a1900f5e45d215da775",
        "e017aa32ce25b360b5c3a77f7e2d3addb89281a8"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Fri Aug 18 08:10:50 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 18 08:10:50 2017 +0000"
      },
      "message": "Merge changes I2b8d8bc9,Iad2890b3\n\n* changes:\n  ahat: show sample path through strong references.\n  ahat: build ahat-test-dump correctly with javac\n"
    }
  ],
  "next": "622533bacfd7655bf36c4929fcd3aab7df474780"
}
