)]}'
{
  "log": [
    {
      "commit": "0cf8d9c08bb77b0f527121b83e6a9dbb36d602f3",
      "tree": "dcdc448217614142e5327ca7a823e59030ae15ed",
      "parents": [
        "3f3201a89ec19257b3bc93c25b20abdcfe61f3e4"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Aug 10 14:05:54 2016 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Aug 10 14:05:54 2016 -0700"
      },
      "message": "Full enable new round implementation on x86/x86_64\n\nRationale:\nRunning JIT on Fugu does not always provide a constant area.\nIn such cases, we need to construct FP constants through stack.\nThis only applies to x86.\n\nTest: 580-checker-round\n\nBUG\u003d26327751\n\nChange-Id: I7e2c80dafbafbe647cfe9ecb039920bb534c666a\n"
    },
    {
      "commit": "3f3201a89ec19257b3bc93c25b20abdcfe61f3e4",
      "tree": "9d18b32abde95e8ef0bee877462930b8a4ecc551",
      "parents": [
        "c1f9241b98b9763e039ef1827d606250788f851e",
        "9a37efc6e1a8dd9fe6978f209fb493510267c528"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 09 16:17:30 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 09 16:17:30 2016 +0000"
      },
      "message": "Merge \"Clean up VLOG(oat) in OatFileAssistant.\""
    },
    {
      "commit": "c1f9241b98b9763e039ef1827d606250788f851e",
      "tree": "047005adf345138529552fe48048f003b77f4a90",
      "parents": [
        "d59b196d6df01814f3c490fa025b242b04b74ff8",
        "2e42cf12e7bd62c5455a9c5ac0fc072de0f31884"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 09 16:10:22 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 09 16:10:22 2016 +0000"
      },
      "message": "Merge \"MIPS64: Properly preserve $gp in art_quick_test_suspend\""
    },
    {
      "commit": "d59b196d6df01814f3c490fa025b242b04b74ff8",
      "tree": "b4b554b353adf2ea77cd6f43a0eaddbfd3fc79a0",
      "parents": [
        "c8ba678762430abd4169b0416d51129f7397915a",
        "b64decdc7361c6c93bd91fdd016a50971c8e537a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 09 14:31:56 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 09 14:31:56 2016 +0000"
      },
      "message": "Merge \"Fix setting FdFile::ReadOnlyMode() flag\""
    },
    {
      "commit": "2e42cf12e7bd62c5455a9c5ac0fc072de0f31884",
      "tree": "f96f8455575b02f5617572668338c9dda8926821",
      "parents": [
        "c8ba678762430abd4169b0416d51129f7397915a"
      ],
      "author": {
        "name": "Goran Jakovljevic",
        "email": "Goran.Jakovljevic@imgtec.com",
        "time": "Tue Aug 09 15:15:39 2016 +0200"
      },
      "committer": {
        "name": "Goran Jakovljevic",
        "email": "Goran.Jakovljevic@imgtec.com",
        "time": "Tue Aug 09 16:01:54 2016 +0200"
      },
      "message": "MIPS64: Properly preserve $gp in art_quick_test_suspend\n\n$gp register was restored in RESTORE_SAVE_EVERYTHING_CALLEE_SAVE_FRAME\nwith value from $t8, but $t8 has been clobbered in the meantime.\n\nCalculation of $gp is done as a part of the macro\nSETUP_SAVE_EVERYTHING_CALLEE_SAVE_FRAME. This allows us to use version\nof .cpsetup where $gp is preserved on the stack, instead in another\nregister.\n\nThis fixes over 60 ART tests.\n\nAdditionally this suppresses assembler warnings for MIPS32 and MIPS64:\n    Warning: used $at without \".set noat\"\n\nTest: mma test-art-target-run-test on QEMU\n\nChange-Id: Ic92680c3cb2a4405353b3640c836e92c0231bd15\n"
    },
    {
      "commit": "b64decdc7361c6c93bd91fdd016a50971c8e537a",
      "tree": "66ce484619cabb75ccbc39e09a1f6a9307b21734",
      "parents": [
        "51616fb233df2760fd6002a02dce692f24b93fb6"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Aug 09 12:10:56 2016 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Aug 09 14:33:39 2016 +0100"
      },
      "message": "Fix setting FdFile::ReadOnlyMode() flag\n\nThe Unix flag O_RDONLY is defined as zero and hence its presence\ncannot be tested with \u0027(flags \u0026 O_RDONLY) !\u003d 0\u0027. This used to be\nbroken in FdFlag when setting its internal `read_only_mode_` flag.\n\nTest: m test-art-host-gtest-fd_file_test\nChange-Id: Ib48abfc908c7032f031450a1574130e06f6c3bab\n"
    },
    {
      "commit": "c8ba678762430abd4169b0416d51129f7397915a",
      "tree": "58a04d05fb1c7597b37838680f63f0d06ee2c1dd",
      "parents": [
        "5c6233c00f1f50e8539fdfffd06c31359eac8b89",
        "5cbe65d3c9b4e7d89c35ba47e2bff7d8aa0dc250"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Tue Aug 09 08:55:34 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 09 08:55:35 2016 +0000"
      },
      "message": "Merge \"Use Thread.dispatchUncaughtException() rather than duplicating logic.\""
    },
    {
      "commit": "9a37efc6e1a8dd9fe6978f209fb493510267c528",
      "tree": "a8170051fe0e4ab9db0d2b629a11586cc64541ad",
      "parents": [
        "fe5c430e6ef71e8f8932ece9631a4e9bfc8b7916"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Fri Aug 05 16:32:55 2016 -0700"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Mon Aug 08 16:09:39 2016 -0700"
      },
      "message": "Clean up VLOG(oat) in OatFileAssistant.\n\nRefactor GetOatDexFile to have an error message out parameter.\n\nChange-Id: I6b933f1fcfc9726c051a9d9678d92587cc02501e\nTest: OatFileAssistantTest with and without -verbose:oat logging turned on.\nTest: m test-art-host\n"
    },
    {
      "commit": "5c6233c00f1f50e8539fdfffd06c31359eac8b89",
      "tree": "5f97706ccaaccbd1b63b7d2af05e88ed0cc38d52",
      "parents": [
        "7ab52cd6c0df319bdc4211fa2c1a2be82c0a4fc7",
        "42103c6daa606d4e1753ef567836ef556be51cdc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 08 22:54:28 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 22:54:29 2016 +0000"
      },
      "message": "Merge \"Fix missing spaces in checker tests\""
    },
    {
      "commit": "42103c6daa606d4e1753ef567836ef556be51cdc",
      "tree": "e5c93a757c42b405f5c790de04184dbeeaacd6dd",
      "parents": [
        "c0362b5f93a2d5d34f8a660804920dbb236ad625"
      ],
      "author": {
        "name": "Wojciech Staszkiewicz",
        "email": "staszkiewicz@google.com",
        "time": "Mon Aug 08 14:35:30 2016 -0700"
      },
      "committer": {
        "name": "Wojciech Staszkiewicz",
        "email": "staszkiewicz@google.com",
        "time": "Mon Aug 08 14:38:06 2016 -0700"
      },
      "message": "Fix missing spaces in checker tests\n\nThis fixes missing spaces in few checker tests.\n\nChange-Id: Id2e7ee4da0077dfd6676526cbd203a98e2bfd7ee\n"
    },
    {
      "commit": "7ab52cd6c0df319bdc4211fa2c1a2be82c0a4fc7",
      "tree": "c1a77fa7b4932c70ce67541de0890b23c66b35b0",
      "parents": [
        "c0362b5f93a2d5d34f8a660804920dbb236ad625",
        "fcccbafa61fcab8950f8ca9b6d380e44cb5fac7d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 08 21:35:04 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 21:35:04 2016 +0000"
      },
      "message": "Merge \"ART: Improve addr2line\""
    },
    {
      "commit": "c0362b5f93a2d5d34f8a660804920dbb236ad625",
      "tree": "bc093f1e8a85c0d5201cbf541489a0ff5da33026",
      "parents": [
        "af2962caff1a13ef3a9b3deb3f2e1c9bbdc5aed3",
        "9954e3b2fe94bf46100183e39478bc57b3a212a1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 08 19:39:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 19:39:51 2016 +0000"
      },
      "message": "Merge \"ART: Extract JNI macro assembler for x86\""
    },
    {
      "commit": "af2962caff1a13ef3a9b3deb3f2e1c9bbdc5aed3",
      "tree": "147b8b9c74241b734111634b9f1add9fbd30c256",
      "parents": [
        "2f8d19f299274ffe6279044d885d10fa14cf127d",
        "1ace16bfe8727430809f1e83745e13c52f9610cd"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 08 19:38:53 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 19:38:53 2016 +0000"
      },
      "message": "Merge \"ART: Extract JNI macro assembler for x86-64\""
    },
    {
      "commit": "2f8d19f299274ffe6279044d885d10fa14cf127d",
      "tree": "9a8456bfebcfcc04e43568d33d7698895aa64722",
      "parents": [
        "61cd79bdea19f2ad4d4d1435c58e86406fd20911",
        "5319d3cca5a9b8e9e3f59421818272b966575172"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 08 19:23:30 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 19:23:30 2016 +0000"
      },
      "message": "Merge \"Implement running user defined list of passes\""
    },
    {
      "commit": "1ace16bfe8727430809f1e83745e13c52f9610cd",
      "tree": "02f785b32920a10907753b8154f7b2f2232483de",
      "parents": [
        "95a976a3d1842384ed71bcc6e6449de95ec69961"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Aug 05 09:01:50 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Aug 08 11:44:25 2016 -0700"
      },
      "message": "ART: Extract JNI macro assembler for x86-64\n\nExtract the JNI assembler parts from the regular assembler.\n\nTest: m test-art-host\nChange-Id: I291fb76ad9232123b4c1992488ee81fec3c1db47\n"
    },
    {
      "commit": "9954e3b2fe94bf46100183e39478bc57b3a212a1",
      "tree": "97b4b7a3fb16ee0aa7fe1f1e0e5d7680540063c1",
      "parents": [
        "95a976a3d1842384ed71bcc6e6449de95ec69961"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Aug 05 20:34:39 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Aug 08 11:43:16 2016 -0700"
      },
      "message": "ART: Extract JNI macro assembler for x86\n\nExtract the JNI assembler parts from the regular assembler.\n\nChange-Id: I0b47af03ca12798f58dafec716a529eb0edf9649\nTest: m test-art-host\n"
    },
    {
      "commit": "5319d3cca5a9b8e9e3f59421818272b966575172",
      "tree": "a90bd83b7e69bbff0be601088bb1c764125d8cf6",
      "parents": [
        "9cff32df754c428ef69ddb61e7600abfd4c75266"
      ],
      "author": {
        "name": "Wojciech Staszkiewicz",
        "email": "staszkiewicz@google.com",
        "time": "Mon Aug 01 17:48:59 2016 -0700"
      },
      "committer": {
        "name": "Wojciech Staszkiewicz",
        "email": "staszkiewicz@google.com",
        "time": "Mon Aug 08 11:24:26 2016 -0700"
      },
      "message": "Implement running user defined list of passes\n\nThis change introduces new dex2oat switch --run-passes\u003d. This switch\naccepts path to a text file with names of passes to run.\nCompiler will run optimization passes specified in the file rather\nthen the default ones.\n\nThere is no verification implemented on the compiler side. It is user\u0027s\nresponsibility to provide a list of passes that leads to successful\ngeneration of correct code. Care should be taken to prepare a list\nthat satisfies all dependencies between optimizations.\n\nWe only take control of the optional optimizations. Codegen (builder),\nand all passes required for register allocation will run unaffected\nby this mechanism.\n\nChange-Id: Ic3694e53515fefcc5ce6f28d9371776b5afcbb4f\n"
    },
    {
      "commit": "61cd79bdea19f2ad4d4d1435c58e86406fd20911",
      "tree": "147a1a653f91fa5c8a1f7406e5d9c28f64342f0e",
      "parents": [
        "9cff32df754c428ef69ddb61e7600abfd4c75266",
        "fbcc83049fb2574830328f778544e0455ca2f66f"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Aug 08 18:17:16 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 18:17:17 2016 +0000"
      },
      "message": "Merge \"ARM/ARM64: Improve Mterp */lit8 assembly.\""
    },
    {
      "commit": "9cff32df754c428ef69ddb61e7600abfd4c75266",
      "tree": "c86f95dd24fee1c0adca63e4a6408706faf14b05",
      "parents": [
        "61d4850eba204709bf290049883f88112cc90721",
        "69272db247cfb99a9060f849762aa6ce3959788e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 08 16:17:11 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 16:17:11 2016 +0000"
      },
      "message": "Merge \"ahat: Target Java 1.7.\""
    },
    {
      "commit": "61d4850eba204709bf290049883f88112cc90721",
      "tree": "07068cf7afeb5c8f3d4ff5bfe2eef326eeed4b29",
      "parents": [
        "1f69674a36616e53491aa50e8dc910346c877832",
        "6ae7f3a4541e70f04243a6fe469aa3bd51e16d79"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Aug 08 15:31:00 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 15:31:00 2016 +0000"
      },
      "message": "Merge \"Revert \"ARM64 asm for region space array allocation\"\""
    },
    {
      "commit": "6ae7f3a4541e70f04243a6fe469aa3bd51e16d79",
      "tree": "db05e699a9929d11ff47a2b19845a921e360b5ff",
      "parents": [
        "f686c3feabe3519bedd1f3001e5dd598f46946ef"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Aug 08 14:41:32 2016 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Aug 08 14:41:32 2016 +0000"
      },
      "message": "Revert \"ARM64 asm for region space array allocation\"\n\nThis change breaks many tests on the ARM64 concurrent\ncollector configuration.\n\nBug: 30162165\nBug: 12687968\n\nThis reverts commit f686c3feabe3519bedd1f3001e5dd598f46946ef.\n\nChange-Id: I5d7ef5fa2ffb6a8d9a4d3adbcc14854efa257313\n"
    },
    {
      "commit": "1f69674a36616e53491aa50e8dc910346c877832",
      "tree": "ed5b224c4e61dda816d2d897d491a9e26a2949f8",
      "parents": [
        "542c6df66919995da028fc9be99eee8d78197159",
        "b3ec089cb338312362627cef5ca6cd313fd56fb4"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Mon Aug 08 14:32:40 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 14:32:40 2016 +0000"
      },
      "message": "Merge \"Support Mockito in art buildbot tests\""
    },
    {
      "commit": "b3ec089cb338312362627cef5ca6cd313fd56fb4",
      "tree": "f71797230c2a77883a316ea4b4d543b903c68d2d",
      "parents": [
        "c10ad423024432df36f6360eafca8332d07b946a"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Aug 03 16:13:04 2016 +0100"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Mon Aug 08 15:02:22 2016 +0100"
      },
      "message": "Support Mockito in art buildbot tests\n\nTest: art/tools/buildbot-build.sh --host -j60 \u0026\u0026 \\\nart/tools/run-libcore-tests.sh --mode\u003dhost --variant\u003dX32\n\nChange-Id: Ifa32927251fa944df7bf9704f8164083aeb557a1\n"
    },
    {
      "commit": "542c6df66919995da028fc9be99eee8d78197159",
      "tree": "126ae6821db6e3756bfd3dea4ca786e2b937aa07",
      "parents": [
        "51616fb233df2760fd6002a02dce692f24b93fb6",
        "05e5456bfb8dd12ec5a97ab6c3c7f14510e5b833"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Aug 08 12:23:26 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 12:23:27 2016 +0000"
      },
      "message": "Merge \"Remove OldSystemTest#test_load from known failures.\""
    },
    {
      "commit": "fbcc83049fb2574830328f778544e0455ca2f66f",
      "tree": "fb09240e9fe843eb06c2c52429c3335ac39d6e4c",
      "parents": [
        "51616fb233df2760fd6002a02dce692f24b93fb6"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Aug 08 12:08:06 2016 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Aug 08 13:04:53 2016 +0100"
      },
      "message": "ARM/ARM64: Improve Mterp */lit8 assembly.\n\nEmbed shifts in operations when possible. Use UBFX for shift\ndistance extraction - for ARM this saves an instruction, for\nARM64 this just improves readability as the reader doesn\u0027t\nneed to know that the higher bits are unused by shifts.\n\nTest: Run ART test suite on Nexus 9.\nChange-Id: I5666f3eaded618d3f6cb754c4a431fd9548e746d\n"
    },
    {
      "commit": "05e5456bfb8dd12ec5a97ab6c3c7f14510e5b833",
      "tree": "79cedd7359f8d8d3cd06ace1211b9e21ff9d9d24",
      "parents": [
        "9526d13c791b3c95ae3f22e0be4d695e8be5708c"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Aug 08 11:20:07 2016 +0100"
      },
      "committer": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Aug 08 11:53:21 2016 +0100"
      },
      "message": "Remove OldSystemTest#test_load from known failures.\n\nTest: libcore.java.lang.OldSystemTest\nBug: 26326992\nChange-Id: Ic77dab37c05044790278407867339a198e8be9a8\n"
    },
    {
      "commit": "51616fb233df2760fd6002a02dce692f24b93fb6",
      "tree": "61766bfa4bb53bf8f57a6c2645e81d375aa902bf",
      "parents": [
        "c10ad423024432df36f6360eafca8332d07b946a",
        "12ecf0800d465acdaa3deccd383ff8ed3428a183"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Aug 08 10:16:43 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Aug 08 10:16:43 2016 +0000"
      },
      "message": "Merge \"Enable IntermediateAddress for primitive arrays with read barriers.\""
    },
    {
      "commit": "12ecf0800d465acdaa3deccd383ff8ed3428a183",
      "tree": "229f7438b82c945f4b3221f6c1033eaf96a9a1c6",
      "parents": [
        "d16ae7fe70d74091778e5952b7920df14866287f"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Aug 08 10:18:37 2016 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Mon Aug 08 10:18:37 2016 +0100"
      },
      "message": "Enable IntermediateAddress for primitive arrays with read barriers.\n\nTest: ART host and target (ARM, ARM64) tests.\nBug: 26601270\nBug: 12687968\nChange-Id: I6736ba7b1809bece1bf3cd82c69e4f42a0d3c4a7\n"
    },
    {
      "commit": "c10ad423024432df36f6360eafca8332d07b946a",
      "tree": "6339cfbe3ac178500bf98ae4a3111c7707457fe8",
      "parents": [
        "1568ed9bd7e8fda112bc3afcf6d139637f2c65ce",
        "5dd44d0da7999ab62f09a1bf03345280811736d4"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Aug 06 02:56:01 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Aug 06 02:56:02 2016 +0000"
      },
      "message": "Merge \"ART: Factor out native stack dumping\""
    },
    {
      "commit": "1568ed9bd7e8fda112bc3afcf6d139637f2c65ce",
      "tree": "84f69ce45c614a0c015109cfa655f298a6463e3b",
      "parents": [
        "95a976a3d1842384ed71bcc6e6449de95ec69961",
        "2cd05b7d9976c0c7fa74d58cb1608c809e5c37d3"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Aug 06 02:41:24 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Aug 06 02:41:24 2016 +0000"
      },
      "message": "Merge \"Add a register allocation strategy compiler option\""
    },
    {
      "commit": "95a976a3d1842384ed71bcc6e6449de95ec69961",
      "tree": "6a587cf0f0d680708cf725da9ae0b0bfd5ce01c5",
      "parents": [
        "3321f598f8d0b96a7c97e9d01a000c6e59c4562c",
        "3b165bc53c2f063e3a9c644d0edc7bc30c634884"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Aug 06 01:49:59 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Aug 06 01:49:59 2016 +0000"
      },
      "message": "Merge \"ART: Extract macro assembler\""
    },
    {
      "commit": "3321f598f8d0b96a7c97e9d01a000c6e59c4562c",
      "tree": "d7cd59b532f66ac64482f52a66848f921acc83bc",
      "parents": [
        "11a59a48474caa818ddf344575aa6afc51f45590",
        "2ac06bc507d3e8bc0cf2a6274780f9b5d336cb4b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Aug 06 01:41:44 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Aug 06 01:41:45 2016 +0000"
      },
      "message": "Merge \"Test all register allocators in regalloc gtest\""
    },
    {
      "commit": "2cd05b7d9976c0c7fa74d58cb1608c809e5c37d3",
      "tree": "5cb7751e491aeae7357ed357f2a52702bf16854a",
      "parents": [
        "11a59a48474caa818ddf344575aa6afc51f45590"
      ],
      "author": {
        "name": "Matthew Gharrity",
        "email": "gharrma@google.com",
        "time": "Wed Aug 03 16:57:37 2016 -0700"
      },
      "committer": {
        "name": "Matthew Gharrity",
        "email": "gharrma@google.com",
        "time": "Sat Aug 06 01:21:14 2016 +0000"
      },
      "message": "Add a register allocation strategy compiler option\n\nTest: manually, on device.\n\nChange-Id: If007a1657dd5769ddef03691e0a19dbbe6ba1a29\n"
    },
    {
      "commit": "3b165bc53c2f063e3a9c644d0edc7bc30c634884",
      "tree": "a408bcb65e848d76a22fcd0367a96ed2630a50b8",
      "parents": [
        "11a59a48474caa818ddf344575aa6afc51f45590"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Aug 01 22:07:04 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Aug 05 17:57:26 2016 -0700"
      },
      "message": "ART: Extract macro assembler\n\nExtract macro assembler functionality used by the JNI compiler from\nthe assembler interface. Templatize the new interface so that\ntype safety ensures correct usage.\n\nChange-Id: Idb9f56e5b87e43ee6a7378853d8a9f01abe156b2\nTest: m test-art-host\n"
    },
    {
      "commit": "69272db247cfb99a9060f849762aa6ce3959788e",
      "tree": "e255a6aa7cac2be9b59848aed7b9d546857826a5",
      "parents": [
        "11a59a48474caa818ddf344575aa6afc51f45590"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Fri Aug 05 16:26:57 2016 -0700"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Fri Aug 05 16:35:55 2016 -0700"
      },
      "message": "ahat: Target Java 1.7.\n\nSo that users can run ahat with Java 7 without getting unsupported\nmajor/minor version errors.\n\nChange-Id: I76faab19bc1b14c76d5fd6b3ba19fcb07855dfd9\nTest: m ahat-test\nTest: /usr/local/buildtools/java/jdk7/bin/java -jar ahat.jar\nTest: /usr/local/buildtools/java/jdk8/bin/java -jar ahat.jar\nBug: 28303627\n"
    },
    {
      "commit": "11a59a48474caa818ddf344575aa6afc51f45590",
      "tree": "d5230fb121016015263b6b255d3e6c2308bde269",
      "parents": [
        "c7c6a74dfb4fb2b3f854704a0d0309fefca7d898",
        "d9ffd0dd7266f6a5e76f29d98dbe1a04f64cbb9b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 05 21:31:10 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 05 21:31:10 2016 +0000"
      },
      "message": "Merge \"Implement a graph coloring register allocator\""
    },
    {
      "commit": "2ac06bc507d3e8bc0cf2a6274780f9b5d336cb4b",
      "tree": "116eeceb2a2d8273accc9c83432dec4db18a0c0a",
      "parents": [
        "d9ffd0dd7266f6a5e76f29d98dbe1a04f64cbb9b"
      ],
      "author": {
        "name": "Matthew Gharrity",
        "email": "gharrma@google.com",
        "time": "Fri Aug 05 09:34:52 2016 -0700"
      },
      "committer": {
        "name": "Matthew Gharrity",
        "email": "gharrma@google.com",
        "time": "Fri Aug 05 14:10:27 2016 -0700"
      },
      "message": "Test all register allocators in regalloc gtest\n\nPreviously, the gtest only exercised the default register allocator.\nNote that the line count is high due mostly to whitespace changes.\n\nTest: m test-art-host-gtest-register_allocator_test\n\nChange-Id: I783edf98ae11d605d4f69834866c387abb71d34f\n"
    },
    {
      "commit": "d9ffd0dd7266f6a5e76f29d98dbe1a04f64cbb9b",
      "tree": "7589320b18206648538734493fe5590023fecf5c",
      "parents": [
        "fe5c430e6ef71e8f8932ece9631a4e9bfc8b7916"
      ],
      "author": {
        "name": "Matthew Gharrity",
        "email": "gharrma@google.com",
        "time": "Wed Jun 22 10:27:55 2016 -0700"
      },
      "committer": {
        "name": "Matthew Gharrity",
        "email": "gharrma@google.com",
        "time": "Fri Aug 05 13:24:41 2016 -0700"
      },
      "message": "Implement a graph coloring register allocator\n\nTest: m test-art-host\n\nChange-Id: I8c0d77f339ab02b33588a54b96ecce5c8322cfce\n"
    },
    {
      "commit": "c7c6a74dfb4fb2b3f854704a0d0309fefca7d898",
      "tree": "64193a1feb77d468158fb6b482850df5fc4bc4fa",
      "parents": [
        "fe5c430e6ef71e8f8932ece9631a4e9bfc8b7916",
        "f686c3feabe3519bedd1f3001e5dd598f46946ef"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Aug 05 19:57:26 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 05 19:57:27 2016 +0000"
      },
      "message": "Merge \"ARM64 asm for region space array allocation\""
    },
    {
      "commit": "f686c3feabe3519bedd1f3001e5dd598f46946ef",
      "tree": "234494fbb4fcf640df4676659d6cf6f987e0d3ab",
      "parents": [
        "20b975cc5c5a1f4e6f0a8e525b5d2e63abc413df"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Aug 04 11:08:26 2016 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Aug 05 10:42:03 2016 -0700"
      },
      "message": "ARM64 asm for region space array allocation\n\nWrote region space tlab array and array resolved allocators in\nassembly code. The speedup is a combined increase from checking the\nmark bit and having an assembly fast path.\n\nAdded resolved, initialized entrypoints for object region TLAB\nallocator.\n\nN6P (960000 mhz) EEAC benchmark (average of 50 samples):\nCC 1442.309524 -\u003e 1314 (10% improvement)\nCMS: 1382.32\n\nRead barrier slow paths reaching C++ code go from 5M to 2.5M.\n\nBug: 30162165\nBug: 12687968\n\nTest: With CC: N6P boot, run EAAC, test-art-target\n\nChange-Id: I51515b11ef3f795f57eb72fe0f5759618fef5084\n"
    },
    {
      "commit": "fe5c430e6ef71e8f8932ece9631a4e9bfc8b7916",
      "tree": "b561375b3a793ae3deb3c4cc1601a50ad818b6e3",
      "parents": [
        "9526d13c791b3c95ae3f22e0be4d695e8be5708c",
        "166aaee6aa39c20c87113b3fcf0dcd81e0a934cb"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Aug 05 16:27:46 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 05 16:27:47 2016 +0000"
      },
      "message": "Merge \"ART: Fix type parameter in tests\""
    },
    {
      "commit": "fcccbafa61fcab8950f8ca9b6d380e44cb5fac7d",
      "tree": "c576849c7b8d2714a237b7613c50e33eff8cbacb",
      "parents": [
        "5dd44d0da7999ab62f09a1bf03345280811736d4"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Aug 02 17:20:03 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 04 20:13:52 2016 -0700"
      },
      "message": "ART: Improve addr2line\n\nChange addr2line handling: use the tool in \"server\" mode of\noperation, keeping a connection open for the same file. This\nreduces the time of a dump of sleeping 001-HelloWorld from fifteen\nto ten seconds.\n\nBug: 30351473\nTest: m test-art-host\nTest: manual host testing with a test that times out\nChange-Id: Idbe424f85c566f5bb39d12644ce104fff54a2146\n"
    },
    {
      "commit": "5dd44d0da7999ab62f09a1bf03345280811736d4",
      "tree": "18dc0029caf5791b0bf831dcc6e38f623fe14eb4",
      "parents": [
        "20b975cc5c5a1f4e6f0a8e525b5d2e63abc413df"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Aug 02 17:20:03 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 04 18:19:02 2016 -0700"
      },
      "message": "ART: Factor out native stack dumping\n\nMove DumpNativeStack and DumpKernelStack into a new file to keep\nconcerns separated. Clean up the file.\n\nIn preparation for modifications to how we use addr2line.\n\nBug: 30351473\nTest: m test-art-host\nTest: manual host testing with a test that times out\nChange-Id: I02d5645952fe94fd8e73bcf0522721547f6cef66\n"
    },
    {
      "commit": "9526d13c791b3c95ae3f22e0be4d695e8be5708c",
      "tree": "072f25eace49bb34285c9b4a8de384582f134fbf",
      "parents": [
        "ac152079c6ec514a4c0c03d2d0246fd4dec82d11",
        "7ad310dabb9c9b60f35f72c7b0736da602e7541a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 04 22:20:33 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 22:20:34 2016 +0000"
      },
      "message": "Merge \"Temporary disable new round implementation on x86/x86_64\""
    },
    {
      "commit": "ac152079c6ec514a4c0c03d2d0246fd4dec82d11",
      "tree": "bda2a4f773b0c96f11eff9e97d74865bb33522eb",
      "parents": [
        "20b975cc5c5a1f4e6f0a8e525b5d2e63abc413df",
        "806f0122e923581f559043e82cf958bab5defc87"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 04 22:05:54 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 22:05:54 2016 +0000"
      },
      "message": "Merge \"Add support for CallKind::kCallOnMainAndSlowPath\""
    },
    {
      "commit": "7ad310dabb9c9b60f35f72c7b0736da602e7541a",
      "tree": "3241de5f450b17fcae1a7dd074cd9ece1c73e454",
      "parents": [
        "20b975cc5c5a1f4e6f0a8e525b5d2e63abc413df"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Aug 04 14:28:21 2016 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Aug 04 14:28:21 2016 -0700"
      },
      "message": "Temporary disable new round implementation on x86/x86_64\n\nRationale:\nFUGU is not happy\n\nTest: 580-checker-round\n\nBUG\u003d26327751\n\nChange-Id: If0ddea47a88e14b86d37080b8a18a6f8defcc8e6\n"
    },
    {
      "commit": "20b975cc5c5a1f4e6f0a8e525b5d2e63abc413df",
      "tree": "db05e699a9929d11ff47a2b19845a921e360b5ff",
      "parents": [
        "d7aebae33edb14d4b016ac4d0b48e0dd0919785b",
        "eba7e5201f29bf73fcb57aa16c24413f42c65d45"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 04 20:34:57 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 20:34:58 2016 +0000"
      },
      "message": "Merge \"ART: Fix Mac-specific things in x86-64 assembly\""
    },
    {
      "commit": "d7aebae33edb14d4b016ac4d0b48e0dd0919785b",
      "tree": "0740fcc3259bdcd6c7886c3ff0d93795b1b9522c",
      "parents": [
        "960bd196fa9b767250e584f09e81eec3f5d23e8b",
        "349f388b8c75c674f3337e6474affb2bff91d507"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 04 20:32:52 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 20:32:52 2016 +0000"
      },
      "message": "Merge \"Implement single-/double-precision round intrinsic in x86_64\""
    },
    {
      "commit": "960bd196fa9b767250e584f09e81eec3f5d23e8b",
      "tree": "e6e527979a689b64fe6f44eb44177fd1a55f618c",
      "parents": [
        "25dd953085f0c35a395bde468251c2b13e944282",
        "da820e97bbe7f0a2f06060d8766bc03341904f40"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 04 20:05:17 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 20:05:17 2016 +0000"
      },
      "message": "Merge \"Clean up use of art::Exec versus execv.\""
    },
    {
      "commit": "349f388b8c75c674f3337e6474affb2bff91d507",
      "tree": "0f8f37d538b83c78cecbbbbf439cdfcfeed8dc33",
      "parents": [
        "25dd953085f0c35a395bde468251c2b13e944282"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Tue Aug 02 15:40:56 2016 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Aug 04 12:39:15 2016 -0700"
      },
      "message": "Implement single-/double-precision round intrinsic in x86_64\n\nRationale:\nX86_64 does not provide a direct instruction for the\nrequired rounding and NaN and large positive numbers\nmust be dealt with too. This CL generates code that\ncorrectly implements SP and DP round.\n\nTest: 580-checker-round\n\nBUG\u003d26327751\n\nChange-Id: Ia7518e2c30afafba4e037e2d0c21e0ce926f0425\n"
    },
    {
      "commit": "eba7e5201f29bf73fcb57aa16c24413f42c65d45",
      "tree": "c54aa85817a48e4a7cf8f1489ec6f8005dfe8dd1",
      "parents": [
        "1a2e5e67bc6fd9df4154f0add1d1163af6aa9bf2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 04 11:16:52 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Aug 04 12:26:43 2016 -0700"
      },
      "message": "ART: Fix Mac-specific things in x86-64 assembly\n\nWe incorrectly used double-underscore on x86-64 as VAR (used by\ntrampoline macros) introduced an additional underscore. Add CALLVAR\njust as on x86.\n\nBug: 30212852\nChange-Id: I2a95dd736453160769ea1a8b24c66f1738049ccb\nTest: m test-art-host (Linux)\nTest: builds on Mac\n"
    },
    {
      "commit": "da820e97bbe7f0a2f06060d8766bc03341904f40",
      "tree": "503af340d1550c84e36069a62e3af34262152907",
      "parents": [
        "965c0b9f98a4acbec7be148291196e30784bba2d"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Thu Aug 04 09:41:55 2016 -0700"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Thu Aug 04 12:13:00 2016 -0700"
      },
      "message": "Clean up use of art::Exec versus execv.\n\nBug: b/30143290\nChange-Id: I41dcaad39beea857bb606d39c1f15ba1da963e46\nTest: test-art-host-gtest-oatdump_test\n"
    },
    {
      "commit": "25dd953085f0c35a395bde468251c2b13e944282",
      "tree": "ca3c937de9a3a96238542eab64518015186f1dd3",
      "parents": [
        "1a2e5e67bc6fd9df4154f0add1d1163af6aa9bf2",
        "2c9f495e8f8c1b367662a5a7a32d216b70d3bb18"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Aug 04 17:53:49 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 17:53:50 2016 +0000"
      },
      "message": "Merge \"Implement single-precision round intrinsic in x86\""
    },
    {
      "commit": "2c9f495e8f8c1b367662a5a7a32d216b70d3bb18",
      "tree": "69da2e9c6d337fe22273ae8bb2c417fb7177ce75",
      "parents": [
        "89bd8358c0a69e8cd6456d81d88ef366e261f732"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Mon Aug 01 16:52:27 2016 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Aug 04 09:53:03 2016 -0700"
      },
      "message": "Implement single-precision round intrinsic in x86\n\nRationale:\nX86 does not provide a direct instruction for the\nrequired rounding and NaN and large positive numbers\nmust be dealt with too. This CL generates code that\ncorrectly implements SP round in a reasonably\nefficient manner (I hope....)\n\nTest: 580-checker-round\n\nBUG\u003d26327751\n\nChange-Id: Ic5f4d9cff9c27c855a8ad577c51ed3ed37fb60cd\n"
    },
    {
      "commit": "1a2e5e67bc6fd9df4154f0add1d1163af6aa9bf2",
      "tree": "ace009be8b3d29fa54dff3c833aa4c2f67e6ba2f",
      "parents": [
        "e250cb82e55e47009fdddbebaec9c3f09b36a41b",
        "3a656e183ab3131d4a0e1fa79acc79e8da762508"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 04 16:46:17 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 16:46:17 2016 +0000"
      },
      "message": "Merge \"Thumb2: Clean up 16-bit LDR/STR detection.\""
    },
    {
      "commit": "e250cb82e55e47009fdddbebaec9c3f09b36a41b",
      "tree": "d8247bfddb7021cc6248a2db85ee7eef6d43b0fb",
      "parents": [
        "965c0b9f98a4acbec7be148291196e30784bba2d",
        "603b7caa6309c9ade9254d8bc36f52082887b88d"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Aug 04 15:55:03 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 15:55:04 2016 +0000"
      },
      "message": "Merge \"x86/x86-64: Fix suspend entrypoint assembly for Mac build.\""
    },
    {
      "commit": "3a656e183ab3131d4a0e1fa79acc79e8da762508",
      "tree": "fa68a3b838778c89cbcd3c6f234513edbb43312e",
      "parents": [
        "3d6094531e3790b25c43e59fd6cd0b6b99d3447c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 02 14:57:56 2016 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Aug 04 16:52:11 2016 +0100"
      },
      "message": "Thumb2: Clean up 16-bit LDR/STR detection.\n\nThe 16-bit LDR/STR sp, #N can be used for N \u003d (imm8 \u003c\u003c 2)\nbut it was previously used only for N \u003c 128. This cleans up\nthe 16-bit instruction availability calculation for this\ncase as well as for byte and half word loads and stores.\nHowever, only the LDR/STR sp, #N has impact on the code we\ncurrently generate in Optimizing.\n\nReduces aosp_hammerhead-userdebug boot.oat by 108KiB.\n\nTest: Run ART test suite on Nexus 5.\nChange-Id: Ie06d130a48efad10c23f8ff2596a51efd98d0761\n"
    },
    {
      "commit": "603b7caa6309c9ade9254d8bc36f52082887b88d",
      "tree": "d8247bfddb7021cc6248a2db85ee7eef6d43b0fb",
      "parents": [
        "965c0b9f98a4acbec7be148291196e30784bba2d"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Aug 04 16:46:51 2016 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Aug 04 16:46:51 2016 +0100"
      },
      "message": "x86/x86-64: Fix suspend entrypoint assembly for Mac build.\n\nBug: 30212852\nChange-Id: I89f1003e73ac42c0e8d63d0fe2f2af4f24c0733d\n"
    },
    {
      "commit": "965c0b9f98a4acbec7be148291196e30784bba2d",
      "tree": "c9b53c36226535f2941d47a1ea222da114266680",
      "parents": [
        "2e98023165349ab91855555f63fed8dad3c471fe",
        "952dbb19cd094b8bfb01dbb33e0878db429e499a"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Aug 04 14:44:10 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 14:44:10 2016 +0000"
      },
      "message": "Merge \"Change suspend entrypoint to save all registers.\""
    },
    {
      "commit": "952dbb19cd094b8bfb01dbb33e0878db429e499a",
      "tree": "82932c2b00245042e2c129f3d4133f6431657da3",
      "parents": [
        "df638c66d1f385d4e217b2ab22c5e48a7eefdef4"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jul 28 12:01:51 2016 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Aug 04 14:51:52 2016 +0100"
      },
      "message": "Change suspend entrypoint to save all registers.\n\nWe avoid the need to save/restore registers in slow paths\nand get significant code size savings. On Nexus 9, AOSP:\n  - 32-bit boot.oat: -1.4MiB (-1.9%)\n  - 64-bit boot.oat: -2.0MiB (-2.3%)\n  - other 32-bit oat files in dalvik-cache: -200KiB (-1.7%)\n  - other 64-bit oat files in dalvik-cache: -2.3MiB (-2.1%)\n\nTest: Run ART test suite on host and Nexus 9 with gc stress.\nBug: 30212852\nChange-Id: I7015afc1e7d30341618c9200a3dc9ae277afd134\n"
    },
    {
      "commit": "2e98023165349ab91855555f63fed8dad3c471fe",
      "tree": "3dbd8569bfffecd6742d28ec71445100d50eac48",
      "parents": [
        "a11f7f55cfc43858687a4b2747db7de7a2179e4b",
        "4f35c7d45953a631b3078b1c8def0d6e380182e6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 04 13:44:17 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 13:44:17 2016 +0000"
      },
      "message": "Merge \"Update known buildbot failures for ProcessBuilderTest\""
    },
    {
      "commit": "4f35c7d45953a631b3078b1c8def0d6e380182e6",
      "tree": "299af6e200d1766c0f7ff191c4f47985bec6c965",
      "parents": [
        "d16ae7fe70d74091778e5952b7920df14866287f"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Aug 03 19:12:37 2016 +0100"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Thu Aug 04 13:52:36 2016 +0100"
      },
      "message": "Update known buildbot failures for ProcessBuilderTest\n\nAlso updated the comment string based on our latest understanding.\nThis is a native crash. Both of the affected tests as well as the\nother tests in ProcessBuilderTest run \u0027sh\u0027 as a child process.\nOnly one of the tests that are affected to far accesses /proc/,\nwhich had previously been suspected as related to the cause.\n\nThe statement that this is a native crash is based on there not\nbeing a relevant stacktrace in logcat.\n\nA \u0027sh\u0027 related native crash failure occurs in the logs but that\nis not specific to these tests so it\u0027s not clear if it is related.\nIf not, it\u0027s not clear why the additional native crash doesn\u0027t\nshow up in the logs.\n\nTest: Nothing\n\nBug: 30657148\n\nChange-Id: I8347edab3cacd060baf1087a1939926f70fdd349\n"
    },
    {
      "commit": "5cbe65d3c9b4e7d89c35ba47e2bff7d8aa0dc250",
      "tree": "6aff8b4fd46f736fbec18970932116403ebedfdd",
      "parents": [
        "0078d61a9c4c7f407eb9a5928f5ae83c404b5972"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Fri Jul 22 18:37:59 2016 +0100"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Thu Aug 04 12:24:00 2016 +0100"
      },
      "message": "Use Thread.dispatchUncaughtException() rather than duplicating logic.\n\nPreviously, the runtime duplicated the logic in Thread\u0027s methods\ndispatchUncaughtException() and getUncaughtExceptionHandler().\nSince we\u0027re modifying this logic to ensure that uncaught\nexceptions are logged, this CL changes the runtime to call\ndispatchUncaughtException instead. This also has the benefit\nthat we can remove Thread.UncaughtExceptionHandler from the\nlist of well known classes.\n\nTest: art/tools/run-libcore-tests.sh --mode\u003dhost --variant\u003dX32\nBug: 29624607\nChange-Id: Id7161d841d64ff9d8f2a7ec1c8c0c5c911ff0b64\n"
    },
    {
      "commit": "a11f7f55cfc43858687a4b2747db7de7a2179e4b",
      "tree": "2238d2d0f57253230b74d6d513ad075b7d50de84",
      "parents": [
        "0078d61a9c4c7f407eb9a5928f5ae83c404b5972",
        "bbd5a4ef2e8ab858076e8bc266fdc7f4bea5d450"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Thu Aug 04 10:51:13 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 10:51:14 2016 +0000"
      },
      "message": "Merge \"Note known failures for TCP_USER_TIMEOUT tests on host\""
    },
    {
      "commit": "0078d61a9c4c7f407eb9a5928f5ae83c404b5972",
      "tree": "27b9be10816c6e43314967eed7ccaa1c130a4d55",
      "parents": [
        "cc5d5f9eeef2c2b6ad66ce0c96f8435703008d31",
        "bc5016565a55df1fe160a9af37e03d27aab92ac2"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Aug 04 09:18:08 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 09:18:08 2016 +0000"
      },
      "message": "Merge \"libcore_failures: Remove obsolete entries.\""
    },
    {
      "commit": "bc5016565a55df1fe160a9af37e03d27aab92ac2",
      "tree": "51da70fb89e23174bc9b734d70662ef676e2691c",
      "parents": [
        "c984725d0035e1925371757c38fed339b409e525"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Aug 03 10:13:22 2016 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Aug 04 10:14:20 2016 +0100"
      },
      "message": "libcore_failures: Remove obsolete entries.\n\nThese tests were failing with the OpenJDK switch, but have since\nbeen fixed.\n\nbug: 26326992\ntest: art/tools/run-libcore-tests.sh --mode\u003dhost --variant\u003dX32\nChange-Id: I9210d3fd428e0e462d95c2a620fe014e26bb942c\n"
    },
    {
      "commit": "cc5d5f9eeef2c2b6ad66ce0c96f8435703008d31",
      "tree": "573ff358268737523f47f3cc3f6fcba42d1b4d0c",
      "parents": [
        "2c6cd5b9b906fc97b383eb6f7bbc5b7d4da9596d",
        "d6a595baf0f389a7eb29fa3d94390c18a29c28da"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Aug 04 03:35:08 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Aug 04 03:35:09 2016 +0000"
      },
      "message": "Merge \"Fix CC table lookup tests\""
    },
    {
      "commit": "d6a595baf0f389a7eb29fa3d94390c18a29c28da",
      "tree": "573ff358268737523f47f3cc3f6fcba42d1b4d0c",
      "parents": [
        "2c6cd5b9b906fc97b383eb6f7bbc5b7d4da9596d"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Aug 03 18:51:34 2016 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Aug 03 19:44:10 2016 -0700"
      },
      "message": "Fix CC table lookup tests\n\nOnly set the mark bits for baker barrier, not sure why this\ndoesn\u0027t work for table lookup barrier yet.\n\nBug: 30162165\n\nTest: test-art-host with CC table lookup\n\nChange-Id: I4309ac22bfc0f8a5c9bf081365e3e38da43eee30\n"
    },
    {
      "commit": "2c6cd5b9b906fc97b383eb6f7bbc5b7d4da9596d",
      "tree": "91fe0af6dda07ec8af552e0e04d5ea9b2eee87d2",
      "parents": [
        "8426a909ec4f732d508016b5953f904f2200513b",
        "36a270ae4f288e49493432b7128f899ad579849e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 03 23:40:55 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 03 23:40:56 2016 +0000"
      },
      "message": "Merge \"Change one read barrier bit to mark bit\""
    },
    {
      "commit": "36a270ae4f288e49493432b7128f899ad579849e",
      "tree": "99f134bbfe111b1c42b1b0c19d8b65175a3e6fc8",
      "parents": [
        "89bd8358c0a69e8cd6456d81d88ef366e261f732"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jul 28 18:08:51 2016 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Aug 03 15:46:18 2016 -0700"
      },
      "message": "Change one read barrier bit to mark bit\n\nOptimization to help slow path performance. When the GC marks an\nobject through the read barrier slow path. The GC sets the mark bit\nin the lock word of that reference. This bit is checked from the\nassembly entrypoint the common case is that it is set. If the bit is\nset, the read barrier knows the object is already marked and there is\nno work to do.\n\nTo prevent dirty pages in zygote and image, the bit is set by the\nimage writer and zygote space creation.\n\nEAAC score (lower is better):\nN9: 777 -\u003e 700 (average 31 of runs)\nN6P (960000 mhz): 1737.48 -\u003e 1442.31 (average of 25 runs)\n\nBug: 30162165\nBug: 12687968\n\nTest: N9, N6P booting, test-art-host, test-art-target all with CC\n\nChange-Id: Iae0cacfae221e33151d3c0ab65338d1c822ab63d\n"
    },
    {
      "commit": "8426a909ec4f732d508016b5953f904f2200513b",
      "tree": "fd20f54e9ee79783931ede3e05b3fb9760a1a94c",
      "parents": [
        "89bd8358c0a69e8cd6456d81d88ef366e261f732",
        "702e641f83fb36f6f094e2e7d8e8eea5cdcddd2e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 03 22:21:08 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 03 22:21:08 2016 +0000"
      },
      "message": "Merge \"Use ArrayInstance.getLength method.\""
    },
    {
      "commit": "89bd8358c0a69e8cd6456d81d88ef366e261f732",
      "tree": "e024d9507acadbc0ea1c142a83e9a3221baf7718",
      "parents": [
        "01b7982a45fe53218d432ed1e8172d9d032d93ab",
        "b2b753c85433d81bcf44ad35b7b053d8fc753148"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Aug 03 17:56:02 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 03 17:56:03 2016 +0000"
      },
      "message": "Merge \"ARM64: Use the zero register in the parallel-move resolver.\""
    },
    {
      "commit": "bbd5a4ef2e8ab858076e8bc266fdc7f4bea5d450",
      "tree": "f389c63b25ce7d4bcc26bc8849eb920fe16eb562",
      "parents": [
        "d16ae7fe70d74091778e5952b7920df14866287f"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Aug 03 18:33:33 2016 +0100"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Aug 03 18:33:38 2016 +0100"
      },
      "message": "Note known failures for TCP_USER_TIMEOUT tests on host\n\nTCP_USER_TIMEOUT is not currently defined on the prebuilt tcp.h (at least\nnot on x86-64), so its value at the non-native level remains 0, breaking\ntests that rely on it.\n\nDevices kernels and bionic support it, therefore these tests are only\nexpected to break on host.\n\nTest: Nothing. Buildbot will let us know soon enough if the expected\n      failures do not match reality.\n\nBug: 30402085\nChange-Id: Iacaf63ab341c6e4a41c7d21fb3064d58ada94800\n"
    },
    {
      "commit": "01b7982a45fe53218d432ed1e8172d9d032d93ab",
      "tree": "fd525b7867e2179a8d6fe668ddd82c8fa990d2f4",
      "parents": [
        "399e332bd4b0d9927601ff673071c336f5b5cc11",
        "d81c0f8a7c8d6853edda01bceeae85ef831118fb"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 03 17:08:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 03 17:08:51 2016 +0000"
      },
      "message": "Merge \"Fix constant type\""
    },
    {
      "commit": "399e332bd4b0d9927601ff673071c336f5b5cc11",
      "tree": "ed74110c5fda31042db98b559d6a4b4b20d4a883",
      "parents": [
        "ae9408f46a6a0bc2bf82611da67fc7256de1f5f4",
        "a7426c6a9ceeec193f6d886df7d0dcb3018f919d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Aug 03 17:03:25 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 03 17:03:25 2016 +0000"
      },
      "message": "Merge \"Fix an assertion in the non-Baker read barrier ARM64 slow path.\""
    },
    {
      "commit": "702e641f83fb36f6f094e2e7d8e8eea5cdcddd2e",
      "tree": "20cd0f969e6c49846a475f998f598d3065b8612b",
      "parents": [
        "b7e921c90540e87f73a14a232435b752ab12e906"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Aug 03 09:26:35 2016 -0700"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Aug 03 09:26:35 2016 -0700"
      },
      "message": "Use ArrayInstance.getLength method.\n\nNow that perflib provides it as a better way to get the length of an\narray instance.\n\nChange-Id: I6bf8bb5541229e16f36fa8ede0a07cd0eb7b931d\nTest: m ahat-test\nBug: 30481345\n"
    },
    {
      "commit": "d81c0f8a7c8d6853edda01bceeae85ef831118fb",
      "tree": "d207638c2c8580c9d2781bbbfadceca8b55b240d",
      "parents": [
        "53d9a24c77b0f00fd1936d957cebb6792fa17bdf"
      ],
      "author": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Wed Aug 03 09:05:20 2016 -0700"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Wed Aug 03 16:15:19 2016 +0000"
      },
      "message": "Fix constant type\n\nRemove the unnecessary cast to long for DCHECK, a nit that was omitted\nfrom the last CL, https://android-review.googlesource.com/#/c/248243/.\n\nBug: b/28856653\nTest: test-art-host-gtest-dex_file_test\nChange-Id: I8ca18d19cbac61e40ddfbe32729aef5c20347174\n"
    },
    {
      "commit": "ae9408f46a6a0bc2bf82611da67fc7256de1f5f4",
      "tree": "391f5a269d8294f3296d4aa713cab9621bc34120",
      "parents": [
        "53d9a24c77b0f00fd1936d957cebb6792fa17bdf",
        "6fb925604414640682bd6f05a90dc7ccbca79d94"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Aug 03 16:09:45 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 03 16:09:45 2016 +0000"
      },
      "message": "Merge \"ART: Extend run-test timeout logging time\""
    },
    {
      "commit": "53d9a24c77b0f00fd1936d957cebb6792fa17bdf",
      "tree": "a75e4d6b77716c6a795900299000c42869f70e30",
      "parents": [
        "d16ae7fe70d74091778e5952b7920df14866287f",
        "d55f4ab2e119395bbae92488707929b8075c126b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Aug 03 15:21:40 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Aug 03 15:21:40 2016 +0000"
      },
      "message": "Merge \"Scope the compilation and Create the ProfilingInfo in the loop.\""
    },
    {
      "commit": "a7426c6a9ceeec193f6d886df7d0dcb3018f919d",
      "tree": "51e3513626ec0faf4ed648032e498bbd5e9c40d9",
      "parents": [
        "d16ae7fe70d74091778e5952b7920df14866287f"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Aug 03 15:02:10 2016 +0100"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Aug 03 15:05:43 2016 +0100"
      },
      "message": "Fix an assertion in the non-Baker read barrier ARM64 slow path.\n\nTest: m ART_USE_READ_BARRIER\u003dtrue ART_READ_BARRIER_TYPE\u003dTABLELOOKUP test-art-target (ARM64).\nBug: 30563701\nChange-Id: Ib7969bd78e9c14cc2be9d5527d80385486b4f409\n"
    },
    {
      "commit": "b2b753c85433d81bcf44ad35b7b053d8fc753148",
      "tree": "a10d2fd40109c5ca4a31e78a1de9cc3b83d2ca18",
      "parents": [
        "d16ae7fe70d74091778e5952b7920df14866287f"
      ],
      "author": {
        "name": "Alexandre Rames",
        "email": "alexandre.rames@linaro.org",
        "time": "Tue Aug 02 13:45:28 2016 +0100"
      },
      "committer": {
        "name": "Alexandre Rames",
        "email": "alexandre.rames@linaro.org",
        "time": "Wed Aug 03 09:24:31 2016 +0100"
      },
      "message": "ARM64: Use the zero register in the parallel-move resolver.\n\nWhen moving zero to a stack slot, this will change\n\n    mov temp, #0\n    str temp, [...]\n\ninto\n\n    str zr, [...]\n\nChange-Id: I2211b00d70f3fa0a02e781c90198757290b2bf89\n"
    },
    {
      "commit": "d16ae7fe70d74091778e5952b7920df14866287f",
      "tree": "abb3aa17279c6a9edc9dd1c0691738a7f7c69a10",
      "parents": [
        "b7e921c90540e87f73a14a232435b752ab12e906",
        "cd16d0aa7e30115323caf040a11b4605f1acfea3"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 02 22:41:39 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 02 22:41:39 2016 +0000"
      },
      "message": "Merge \"Return error directly when uncompressed length is 0\""
    },
    {
      "commit": "cd16d0aa7e30115323caf040a11b4605f1acfea3",
      "tree": "a9a2495f5a50a1a0a514420fdfceb6ab5c6e47fc",
      "parents": [
        "c984725d0035e1925371757c38fed339b409e525"
      ],
      "author": {
        "name": "ganxiaolin",
        "email": "ganxiaolin@xiaomi.com",
        "time": "Mon Jul 18 11:21:44 2016 +0800"
      },
      "committer": {
        "name": "David Sehr",
        "email": "sehr@google.com",
        "time": "Tue Aug 02 14:46:45 2016 -0700"
      },
      "message": "Return error directly when uncompressed length is 0\n\nIf uncompressed length is 0, in function MemMap::MapAnonymous, it will generate a MemMap instance whose base_begin is nullptr.\nThen, when OpenMemory, it will create a DexFile instance.\nAt DexFile::DexFile constructor, header_ is asigned to 0, then header_-\u003estring_ids_off_ will cause crash.\n\nBug: b/28856653\nTest: test-art-host-gtest-dex_file_test\nSigned-off-by: ganxiaolin \u003cganxiaolin@xiaomi.com\u003e\nChange-Id: Id37f7629f4646cbc385ef054cb83b15be4c59b00\n"
    },
    {
      "commit": "d55f4ab2e119395bbae92488707929b8075c126b",
      "tree": "4d9f823fb03f07e7172e0aae05c1820d33ef8e20",
      "parents": [
        "8055598c8dd4f3cd4d8490b5fc576161467f8bcb"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Aug 02 18:49:25 2016 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Aug 02 22:21:52 2016 +0100"
      },
      "message": "Scope the compilation and Create the ProfilingInfo in the loop.\n\nWe need to release the mutator lock to avoid being in a deadlock.\n\nAlso allocating the profiling just before compiling in the unlickely\nevent that it got collected after releasing the mutator lock.\n\nbug:30351473\nChange-Id: I98dba646536d857152949b92f6c69ff9a03cf783\n"
    },
    {
      "commit": "b7e921c90540e87f73a14a232435b752ab12e906",
      "tree": "646c456b9952580c35e5bd0c5a32e24031c2afe7",
      "parents": [
        "524a76c93347d7c23ad75b58eec997219b352ead",
        "c2c52a18a210b3c3c2a2a4345019b9d961a29f49"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Aug 02 20:18:27 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 02 20:18:28 2016 +0000"
      },
      "message": "Merge \"Improve the graph visualizer\u0027s output for constant locations.\""
    },
    {
      "commit": "524a76c93347d7c23ad75b58eec997219b352ead",
      "tree": "e429889eb682be16f382c1534a6b0d298eba9155",
      "parents": [
        "8055598c8dd4f3cd4d8490b5fc576161467f8bcb",
        "087930f2be5a628c65db280a73fecf468899d983"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Aug 02 20:06:39 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 02 20:06:39 2016 +0000"
      },
      "message": "Merge \"ARM64: Make the VIXL macro assembler part of ART ARM64\u0027s assembler.\""
    },
    {
      "commit": "6fb925604414640682bd6f05a90dc7ccbca79d94",
      "tree": "77dfea3be49a345abd1ee4e58fc006ad22b9fa8a",
      "parents": [
        "c984725d0035e1925371757c38fed339b409e525"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Aug 01 21:53:57 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Aug 02 10:45:53 2016 -0700"
      },
      "message": "ART: Extend run-test timeout logging time\n\nDouble the time a test is allowed to attempt logging after it\ntimed out to two minutes.\n\nAlso change from using nested timeouts to using \"-k\" in general,\nnot just for host dex2oat.\n\nBug: 30351473\nTest: m test-art-host\nChange-Id: I134c7b220f69eaab7ea430a5c7ce45d77b091996\n"
    },
    {
      "commit": "8055598c8dd4f3cd4d8490b5fc576161467f8bcb",
      "tree": "65cef2adb9bba5783ae03802b6e828dd95db39ac",
      "parents": [
        "35bb22f05cad11cba1e660b589bd17bb14b9eace",
        "7fb2c2ca27be67d711055ab4a35bd4ea22e8978a"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Aug 02 17:41:59 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 02 17:41:59 2016 +0000"
      },
      "message": "Merge \"Split art-run-tests between building and packaging\""
    },
    {
      "commit": "35bb22f05cad11cba1e660b589bd17bb14b9eace",
      "tree": "223e616c0af47be5dcfc86c38a15c4dad8cc5902",
      "parents": [
        "aa21d0ecbb9c0d81055cc73497856df460196dc9",
        "0c737df58fd4796df6c79837f409c40595168db5"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 02 16:59:35 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 02 16:59:35 2016 +0000"
      },
      "message": "Merge \"Align method code rather than method header in oat files.\""
    },
    {
      "commit": "aa21d0ecbb9c0d81055cc73497856df460196dc9",
      "tree": "d3da5e9bc5f30b7cfbac1c0783a46ac2c2eeb399",
      "parents": [
        "c984725d0035e1925371757c38fed339b409e525",
        "d993327afa51a9ac216da0e5a5eba455aa79a6c9"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Aug 02 16:52:14 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 02 16:52:14 2016 +0000"
      },
      "message": "Merge \"ART: Fix Mips Thread offset checks\""
    },
    {
      "commit": "087930f2be5a628c65db280a73fecf468899d983",
      "tree": "d7fbf94ce260ddbb722a3731fe393bc9ef6e1bbc",
      "parents": [
        "3d6094531e3790b25c43e59fd6cd0b6b99d3447c"
      ],
      "author": {
        "name": "Alexandre Rames",
        "email": "alexandre.rames@linaro.org",
        "time": "Tue Aug 02 13:45:28 2016 +0100"
      },
      "committer": {
        "name": "Alexandre Rames",
        "email": "alexandre.rames@linaro.org",
        "time": "Tue Aug 02 15:47:28 2016 +0000"
      },
      "message": "ARM64: Make the VIXL macro assembler part of ART ARM64\u0027s assembler.\n\nThis avoids a dynamic allocation of the VIXL macro assembler.\n\nChange-Id: I4cd62678d0978f1ad6f32ea0ce7279e09152be38\n"
    },
    {
      "commit": "d993327afa51a9ac216da0e5a5eba455aa79a6c9",
      "tree": "d3da5e9bc5f30b7cfbac1c0783a46ac2c2eeb399",
      "parents": [
        "c984725d0035e1925371757c38fed339b409e525"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Aug 02 08:44:20 2016 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Aug 02 08:45:00 2016 -0700"
      },
      "message": "ART: Fix Mips Thread offset checks\n\nFollow-up to commit 542451cc546779f5c67840e105c51205a1b0a8fd.\n\nBug: 30373134\nTest: m test-art-host\nChange-Id: I1d0202896e683cb20db30e8aac1c5ebcacc96467\n"
    },
    {
      "commit": "c2c52a18a210b3c3c2a2a4345019b9d961a29f49",
      "tree": "47b4e7923ba4fcf83367a699f90a53d5abb61ee7",
      "parents": [
        "3d6094531e3790b25c43e59fd6cd0b6b99d3447c"
      ],
      "author": {
        "name": "Alexandre Rames",
        "email": "alexandre.rames@linaro.org",
        "time": "Tue Aug 02 13:45:28 2016 +0100"
      },
      "committer": {
        "name": "Alexandre Rames",
        "email": "alexandre.rames@linaro.org",
        "time": "Tue Aug 02 13:45:58 2016 +0100"
      },
      "message": "Improve the graph visualizer\u0027s output for constant locations.\n\nChange-Id: I423fb378ee61fb53c3b328fc74f4e95cdef0992a\n"
    },
    {
      "commit": "c984725d0035e1925371757c38fed339b409e525",
      "tree": "65f85a1eb310071a430271e63bf43ae1b9102829",
      "parents": [
        "3719016185859778fa562d02140d04004c21d9a7",
        "52e665084f46b5ba77a2a14d41110807539c41bc"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Aug 02 12:36:14 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 02 12:36:14 2016 +0000"
      },
      "message": "Merge \"DexFile: Add basic support for v38 dex files.\""
    },
    {
      "commit": "3719016185859778fa562d02140d04004c21d9a7",
      "tree": "30a2401e0576370bff32375fc87856739559379e",
      "parents": [
        "3d6094531e3790b25c43e59fd6cd0b6b99d3447c",
        "37dd80d701fc5f55ed5a88ce2a495bf6eeb4a321"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 02 12:31:10 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 02 12:31:10 2016 +0000"
      },
      "message": "Merge \"ARM: Embed 0.0 in VCMP.\""
    },
    {
      "commit": "37dd80d701fc5f55ed5a88ce2a495bf6eeb4a321",
      "tree": "2129c5f6fb822e0ca5c5671494c35aaadd78ef9c",
      "parents": [
        "6e5e3b2e914cf4bdc5f17a6011fc2b1937eb9641"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Aug 01 17:41:45 2016 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 02 11:21:49 2016 +0100"
      },
      "message": "ARM: Embed 0.0 in VCMP.\n\nTest: Run ART test suite on Nexus 5.\nChange-Id: I5cbbd98c4d64a4d9213e27adcae929ead5099a39\n"
    },
    {
      "commit": "0c737df58fd4796df6c79837f409c40595168db5",
      "tree": "50c70641b06c1f15e84209e92cf6c983bfddcce3",
      "parents": [
        "6e5e3b2e914cf4bdc5f17a6011fc2b1937eb9641"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Aug 01 16:33:16 2016 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Aug 02 10:28:45 2016 +0100"
      },
      "message": "Align method code rather than method header in oat files.\n\nThis has always been the intent. For example, the function\nname CompiledMethod::AlignCode() shows this intent.\n\nTest: Run ART test suite on host and Nexus 9.\nChange-Id: I11ae8963fc537fee853fe82e3aca22e77907eae7\n"
    },
    {
      "commit": "52e665084f46b5ba77a2a14d41110807539c41bc",
      "tree": "f6b323cd02eb5fee25db71ebb3b3b9f31136620e",
      "parents": [
        "3d6094531e3790b25c43e59fd6cd0b6b99d3447c"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Aug 01 14:20:31 2016 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Aug 02 08:31:04 2016 +0000"
      },
      "message": "DexFile: Add basic support for v38 dex files.\n\nMakes sure they aren\u0027t rejected, essentially. Also adds positive\nand negative test cases in dex_file_test.\n\nbug: 30550796\nChange-Id: I8c95055a22f8a1435868c8bf3497f9641b7bb900\ntest: make test-art-host\n"
    },
    {
      "commit": "3d6094531e3790b25c43e59fd6cd0b6b99d3447c",
      "tree": "22f88d55fda3f363590bfc04d225840e7f4480fe",
      "parents": [
        "ba65cc4a71273904294245cb37ce70e5bce797e3",
        "bd48b3490a35480ad54586a4d8c7529e0a9a8c84"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Aug 02 08:09:35 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 02 08:09:35 2016 +0000"
      },
      "message": "Merge \"dex_instruction: remove unused parameter from instruction definitions.\""
    },
    {
      "commit": "bd48b3490a35480ad54586a4d8c7529e0a9a8c84",
      "tree": "22f88d55fda3f363590bfc04d225840e7f4480fe",
      "parents": [
        "ba65cc4a71273904294245cb37ce70e5bce797e3"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Aug 01 17:32:37 2016 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Aug 02 08:09:19 2016 +0000"
      },
      "message": "dex_instruction: remove unused parameter from instruction definitions.\n\nbug: 30550796\ntest: make test-art-host\nChange-Id: Ib80a2d5c548578cefb0552b597e1d50b813ce8ef\n"
    }
  ],
  "next": "7fb2c2ca27be67d711055ab4a35bd4ea22e8978a"
}
