)]}'
{
  "log": [
    {
      "commit": "089ff4886aa9b5e7cec04d2ef5cdeb9d68e5dc43",
      "tree": "84ad42399e1055f3596d7df6f786d9f7b8605ee3",
      "parents": [
        "bd00c8226ebc28d2745ac4d0408b11c156771773",
        "7c1559a06041c9c299d5ab514d54b2102f204a84"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Dec 15 12:39:34 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 15 12:39:34 2015 +0000"
      },
      "message": "Merge \"x86 Baker\u0027s read barrier fast path implementation.\""
    },
    {
      "commit": "bd00c8226ebc28d2745ac4d0408b11c156771773",
      "tree": "5167879b54a40b2a017b4237c3d7e7556e199aa8",
      "parents": [
        "bf14c651080c31ae923ae1a75dbb82ace5adeee1",
        "0675becf83c2856e7a6a135eeb4e6714262c75e5"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Dec 15 12:20:13 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 15 12:20:13 2015 +0000"
      },
      "message": "Merge \"Lower jitthreshold for jit profile test.\""
    },
    {
      "commit": "bf14c651080c31ae923ae1a75dbb82ace5adeee1",
      "tree": "d3acacbf1cbf8e0c23aef7a1f5dbd4732f9fb155",
      "parents": [
        "3b0ec017185a6d694f5041e79cc7a85d51943cff",
        "18c12bb637d67f17abf6dc1e345a2ac7482cd057"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 15 12:14:14 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 15 12:14:14 2015 +0000"
      },
      "message": "Merge \"Fix --inline-max-code-units option.\""
    },
    {
      "commit": "18c12bb637d67f17abf6dc1e345a2ac7482cd057",
      "tree": "6a3bca3c9d0a351a9041ab1f60a2ef704156a474",
      "parents": [
        "7cd230c8f74a227ea04f1dd93c8d855aa81fc1fe"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 15 12:09:43 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 15 12:09:43 2015 +0000"
      },
      "message": "Fix --inline-max-code-units option.\n\nChange-Id: I73d99904a9eed69eb89efb6fb764db4a5d199f20\n"
    },
    {
      "commit": "0675becf83c2856e7a6a135eeb4e6714262c75e5",
      "tree": "754e50d04f712f4e81f4f147a2c4bbbf305e8033",
      "parents": [
        "34021dd9bf1f396f01f32bb1b6c100538018127c"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Dec 15 12:02:50 2015 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Dec 15 12:02:50 2015 +0000"
      },
      "message": "Lower jitthreshold for jit profile test.\n\nThe test still proves to be flacky on the build bots. Lowering the\nthreshold will trigger compilation earlier.\n\nChange-Id: Iacabf88d9fbd2a15fd3456f817402c9aaf3ec766\n"
    },
    {
      "commit": "3b0ec017185a6d694f5041e79cc7a85d51943cff",
      "tree": "d336c43523dad5b792045d6330c96cdf0d663073",
      "parents": [
        "7cd230c8f74a227ea04f1dd93c8d855aa81fc1fe",
        "e722d2921615102941ca4b6717c9d9e1edae1192"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 15 11:51:51 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 15 11:51:51 2015 +0000"
      },
      "message": "Merge \"Revert \"Make the JIT the default in ART.\"\""
    },
    {
      "commit": "e722d2921615102941ca4b6717c9d9e1edae1192",
      "tree": "b6cb4205b3c6065029085132125bf6e935d1f7a2",
      "parents": [
        "0a9b6826bc6e71d799eb3fe8829981597b890dee"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 15 11:51:37 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 15 11:51:37 2015 +0000"
      },
      "message": "Revert \"Make the JIT the default in ART.\"\n\nFew tests failing: oat_file_assistant_test and jit run tests.\n\nThis reverts commit 0a9b6826bc6e71d799eb3fe8829981597b890dee.\n\nChange-Id: Ibbf73c191d244ebb9517b6ae97971dd9a9d37d7c\n"
    },
    {
      "commit": "7c1559a06041c9c299d5ab514d54b2102f204a84",
      "tree": "c50b54bf82f457f44dbf0741947d836749d4a96a",
      "parents": [
        "7cd230c8f74a227ea04f1dd93c8d855aa81fc1fe"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Dec 15 10:55:36 2015 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Dec 15 11:45:56 2015 +0000"
      },
      "message": "x86 Baker\u0027s read barrier fast path implementation.\n\nIntroduce an x86 fast path implementation in Optimizing for\nBaker\u0027s read barriers (for both heap reference loads and GC\nroot loads).  The marking phase of the read barrier is\nperformed by a slow path, invoking a new runtime entry point\n(artReadBarrierMark).\n\nOther read barrier algorithms continue to use the original\nslow path based implementation, which has been renamed as\nGenerateReadBarrierSlow/GenerateReadBarrierForRootSlow.\n\nBug: 12687968\nChange-Id: Ie610c4befc19ff22378a8cba38b422dcacb54320\n"
    },
    {
      "commit": "7cd230c8f74a227ea04f1dd93c8d855aa81fc1fe",
      "tree": "db98199f0e5cfa0b76dce170fca8a45bc3e41bda",
      "parents": [
        "37fcf39935f24c1699cd6dacce47bbef70ca3b46",
        "0a9b6826bc6e71d799eb3fe8829981597b890dee"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Dec 15 09:38:55 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 15 09:38:55 2015 +0000"
      },
      "message": "Merge \"Make the JIT the default in ART.\""
    },
    {
      "commit": "37fcf39935f24c1699cd6dacce47bbef70ca3b46",
      "tree": "d336c43523dad5b792045d6330c96cdf0d663073",
      "parents": [
        "a8be6ae6fcf1c58c0c2067739352e16b92972c41",
        "50a2f8deb8982c11966764ada4c01df95d8310c5"
      ],
      "author": {
        "name": "Shinichiro Hamaji",
        "email": "hamaji@google.com",
        "time": "Tue Dec 15 04:42:20 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 15 04:42:20 2015 +0000"
      },
      "message": "Merge \"Get DCHECK back to EncodedStaticFieldValueIterator\""
    },
    {
      "commit": "a8be6ae6fcf1c58c0c2067739352e16b92972c41",
      "tree": "1fbd6a7f025412c636a96cc82f158513c0f3b125",
      "parents": [
        "395125122a57dd042a507fcf1520e123561d2043",
        "7f57579b473749ce9bb13fd4ca25ec0adbdf0ca0"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Dec 14 18:04:02 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 18:04:02 2015 +0000"
      },
      "message": "Merge \"Temporary disable linker-namespaces\""
    },
    {
      "commit": "395125122a57dd042a507fcf1520e123561d2043",
      "tree": "1df0e58e7cb598169c69631b5231ff581aea1b07",
      "parents": [
        "377cb3ba2e1cfe51967e5292268a9aae71ceca8c",
        "34021dd9bf1f396f01f32bb1b6c100538018127c"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 18:03:55 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 18:03:55 2015 +0000"
      },
      "message": "Merge \"Increase the sleep time in 554-jit-profile-file\""
    },
    {
      "commit": "34021dd9bf1f396f01f32bb1b6c100538018127c",
      "tree": "1df0e58e7cb598169c69631b5231ff581aea1b07",
      "parents": [
        "c44edf6528743139975bf33a9239c16f64ee956f"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 18:01:21 2015 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 18:03:20 2015 +0000"
      },
      "message": "Increase the sleep time in 554-jit-profile-file\n\nThe previous sleep time wasn\u0027t enough. Some tests failed because not\nall the methods managed to be compiled in time.\n\nChange-Id: I4d63b6c3602c72dfa608f62c55e0f484bbfcf900\n"
    },
    {
      "commit": "7f57579b473749ce9bb13fd4ca25ec0adbdf0ca0",
      "tree": "510362d679009c6f4067c2375636e1a191cb3434",
      "parents": [
        "377cb3ba2e1cfe51967e5292268a9aae71ceca8c"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Dec 14 09:57:56 2015 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Dec 14 09:59:31 2015 -0800"
      },
      "message": "Temporary disable linker-namespaces\n\nBug: http://b/26178910\nBug: http://b/26165097\nChange-Id: I858c70dc72ec164ea7a79ad625ddda91367dae06\n"
    },
    {
      "commit": "377cb3ba2e1cfe51967e5292268a9aae71ceca8c",
      "tree": "95c22194af5ea38a4fa5fc8bbe07ba60b6d0a021",
      "parents": [
        "b9d6996ed1efcfaa9582e9a217053aa53e8d1733",
        "c44edf6528743139975bf33a9239c16f64ee956f"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 16:48:10 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 16:48:10 2015 +0000"
      },
      "message": "Merge \"Disable 554-jit-profile-file for the READ_BARRIER mode.\""
    },
    {
      "commit": "c44edf6528743139975bf33a9239c16f64ee956f",
      "tree": "95c22194af5ea38a4fa5fc8bbe07ba60b6d0a021",
      "parents": [
        "b9d6996ed1efcfaa9582e9a217053aa53e8d1733"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 16:29:06 2015 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 16:29:06 2015 +0000"
      },
      "message": "Disable 554-jit-profile-file for the READ_BARRIER mode.\n\nChange-Id: I98f5c0aeb0d68b42a587b1f7261d3fe998ca7f8b\n"
    },
    {
      "commit": "b9d6996ed1efcfaa9582e9a217053aa53e8d1733",
      "tree": "f143ebee55df5c8d7f887b8a2bb2554c138d6e89",
      "parents": [
        "8cf97d729592774afa495717626ac4e4525a499f",
        "ef885cdfa8e3c61a67750110c1efcdd2559af1ec"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 15:15:08 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 15:15:08 2015 +0000"
      },
      "message": "Merge \"Print more info on why the code_cache test fails in 115-native-bridge.\""
    },
    {
      "commit": "8cf97d729592774afa495717626ac4e4525a499f",
      "tree": "0f00febf35d851fdd63a51c4ef7786f4f26c9f9b",
      "parents": [
        "84c3d48a6ce4d2c9396364973b3d7f43893ab468",
        "226501b317e148aa8a8983355e85acb59c1eee83"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 14:38:38 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 14:38:38 2015 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Enable profiled guided compilation in dex2oat\"\"\""
    },
    {
      "commit": "ef885cdfa8e3c61a67750110c1efcdd2559af1ec",
      "tree": "c6e8e4315fde240f1f071935776371f56602fe14",
      "parents": [
        "66278646b5b332142d1474703ac7d945dfbf7c78"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 14:35:17 2015 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 14 14:35:17 2015 +0000"
      },
      "message": "Print more info on why the code_cache test fails in 115-native-bridge.\n\nChange-Id: Ib30893e53a5ed616ae4f6b6bc4d657b0fca846c8\n"
    },
    {
      "commit": "84c3d48a6ce4d2c9396364973b3d7f43893ab468",
      "tree": "11b827c7638935b9199b5325ba0c85867d98f115",
      "parents": [
        "795accfff05abfb69f54003ee3f096ef3ff6f1e4",
        "e36ae9435da21542891ceeebb3328f5066c8301e"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Dec 14 14:28:32 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 14:28:32 2015 +0000"
      },
      "message": "Merge \"ART: Set RTI of Arm64IntermediateAddress\""
    },
    {
      "commit": "e36ae9435da21542891ceeebb3328f5066c8301e",
      "tree": "11b827c7638935b9199b5325ba0c85867d98f115",
      "parents": [
        "795accfff05abfb69f54003ee3f096ef3ff6f1e4"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Dec 14 14:25:44 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Dec 14 14:25:44 2015 +0000"
      },
      "message": "ART: Set RTI of Arm64IntermediateAddress\n\nFixes the arm64 build after I7a3aee1ff66c82d64b4846611c547af17e91d260.\n\nChange-Id: Ic2c72df59e0ddbdf2edc8519a6954d078a5ef596\n"
    },
    {
      "commit": "795accfff05abfb69f54003ee3f096ef3ff6f1e4",
      "tree": "9f4e4ffb5fae25c4f14059fd1d772726e9d96170",
      "parents": [
        "ceec5a3c81925cf80a18954b2e585316450c575c",
        "d9510dfc32349eeb4f2145c801f7ba1d5bccfb12"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Dec 14 13:38:20 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 13:38:20 2015 +0000"
      },
      "message": "Merge \"ART: Refactor SsaBuilder for more precise typing info\""
    },
    {
      "commit": "d9510dfc32349eeb4f2145c801f7ba1d5bccfb12",
      "tree": "9f4e4ffb5fae25c4f14059fd1d772726e9d96170",
      "parents": [
        "ceec5a3c81925cf80a18954b2e585316450c575c"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Wed Nov 04 23:30:22 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Dec 14 13:03:19 2015 +0000"
      },
      "message": "ART: Refactor SsaBuilder for more precise typing info\n\nThis patch refactors the SsaBuilder to do the following:\n\n1) All phis are constructed live and marked dead if not used or proved\nto be conflicting.\n\n2) Primitive type propagation, now not a separate pass, identifies\nconflicting types and marks corresponding phis dead.\n\n3) When compiling --debuggable, DeadPhiHandling used to revive phis\nwhich had only environmental uses but did not attempt to resolve\nconflicts. This pass was removed as obsolete and is now superseded\nby primitive type propagation (identifying conflicting phis) and\nSsaDeadPhiEliminiation (keeping phis live if debuggable + env use).\n\n4) Resolving conflicts requires correct primitive type information\non all instructions. This was not the case for ArrayGet instructions\nwhich can have ambiguous types in the bytecode. To this end,\nSsaBuilder now runs reference type propagation and types ArrayGets\nfrom the type of the input array.\n\n5) With RTP being run inside the SsaBuilder, it is not necessary to\nrun it as a separate optimization pass. Optimizations can now assume\nthat all instructions of type kPrimNot have reference type info after\nSsaBuilder (with the exception of NullConstant).\n\n6) Graph now contains a reference type to be assigned to NullConstant.\nAll reference type instructions therefore have RTI, as now enforced\nby the SsaChecker.\n\nBug: 24252151\nBug: 24252100\nBug: 22538329\nBug: 25786318\n\nChange-Id: I7a3aee1ff66c82d64b4846611c547af17e91d260\n"
    },
    {
      "commit": "ceec5a3c81925cf80a18954b2e585316450c575c",
      "tree": "7adeb32c1d2c3792f4b85d4fac4ffb4101bc732c",
      "parents": [
        "70c1a8fade2967453663d0ffed0f137f06555fff",
        "5d3fa25f0257a5fc4246c9a6a1c4844066a30ce1"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 14 11:54:45 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 11:54:45 2015 +0000"
      },
      "message": "Merge \"ART: Rename ROR test to a shorter name.\""
    },
    {
      "commit": "5d3fa25f0257a5fc4246c9a6a1c4844066a30ce1",
      "tree": "7adeb32c1d2c3792f4b85d4fac4ffb4101bc732c",
      "parents": [
        "70c1a8fade2967453663d0ffed0f137f06555fff"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 14 10:29:35 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 14 10:30:46 2015 +0000"
      },
      "message": "ART: Rename ROR test to a shorter name.\n\nKeeps the file names of test files within limits.\nThe new name is exactly as long as the next longest name.\n\nChange-Id: I4bbfd4cf2aa402a436ba9a5bc9589aa8710b9c15\n"
    },
    {
      "commit": "70c1a8fade2967453663d0ffed0f137f06555fff",
      "tree": "297ddee3c509bbb25fcc5d700a97b15d63296dae",
      "parents": [
        "4113b97bd738570fa28a450720cf14810a9f8292",
        "351dddf4025f07477161209e374741f089d97cb4"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Dec 14 10:24:12 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 14 10:24:12 2015 +0000"
      },
      "message": "Merge \"Optimizing: Clean up after HRor.\""
    },
    {
      "commit": "50a2f8deb8982c11966764ada4c01df95d8310c5",
      "tree": "a69035464f2106e2033dceeb6425865fd78d26f8",
      "parents": [
        "748047de833061466e230baf374480a147568f73"
      ],
      "author": {
        "name": "Shinichiro Hamaji",
        "email": "hamaji@google.com",
        "time": "Fri Dec 11 09:45:28 2015 +0900"
      },
      "committer": {
        "name": "Shinichiro Hamaji",
        "email": "hamaji@google.com",
        "time": "Mon Dec 14 15:43:49 2015 +0900"
      },
      "message": "Get DCHECK back to EncodedStaticFieldValueIterator\n\nThis is a follow-up of\nhttps://android-review.googlesource.com/#/c/185000/\n\nChange-Id: Ia7311ab948712324f92814e4d415a0a78d16bb84\n"
    },
    {
      "commit": "4113b97bd738570fa28a450720cf14810a9f8292",
      "tree": "a4187eee006988678604ea5c5f9067fe1ff6660e",
      "parents": [
        "2cab58141a357749ea7c8d15b94750ffa3706e51",
        "67ad20e2834ed2b821503d0d9ab1b3a34e55b7d4"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sat Dec 12 01:34:00 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Dec 12 01:34:00 2015 +0000"
      },
      "message": "Merge \"Address some comments in image writer\""
    },
    {
      "commit": "2cab58141a357749ea7c8d15b94750ffa3706e51",
      "tree": "6220e9330ff96ac4479adba7665e098289d4a6ce",
      "parents": [
        "98d46d2d287c8081995517770392a21b4d59d2e9",
        "5366f5cefd0a1570aa21b3e0df3f86cdbd139f6e"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Dec 11 22:23:52 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 22:23:52 2015 +0000"
      },
      "message": "Merge \"Fix call to LoadNativeLibrary\""
    },
    {
      "commit": "5366f5cefd0a1570aa21b3e0df3f86cdbd139f6e",
      "tree": "6220e9330ff96ac4479adba7665e098289d4a6ce",
      "parents": [
        "98d46d2d287c8081995517770392a21b4d59d2e9"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Dec 11 14:03:09 2015 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Dec 11 14:04:10 2015 -0800"
      },
      "message": "Fix call to LoadNativeLibrary\n\nChange-Id: Ie625cdbdf18374b2a8b0adc11758aac47e603625\n"
    },
    {
      "commit": "98d46d2d287c8081995517770392a21b4d59d2e9",
      "tree": "ed8a1ce97cca924207da598fe7333c4ae7083f77",
      "parents": [
        "277da370dd517af0d6a27bef3b86d5f259feda62",
        "f5a3099c509cf9b8a4ce9c3073a4db47e14a23bc"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Dec 11 20:30:30 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 20:30:30 2015 +0000"
      },
      "message": "Merge \"Use isolated namespaces for app native libs\""
    },
    {
      "commit": "277da370dd517af0d6a27bef3b86d5f259feda62",
      "tree": "dba76caacac993db6b93b0ec9714f708372c6274",
      "parents": [
        "66e43b115ed53512803403d25f88bb4a37590676",
        "97b113596576ee026c9d3e100e472e343bfda7fa"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 11 19:01:41 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 19:01:41 2015 +0000"
      },
      "message": "Merge \"ART: Weaken dex file verifier abstract check\""
    },
    {
      "commit": "97b113596576ee026c9d3e100e472e343bfda7fa",
      "tree": "11f1f64ab646077857a2153fee23a499359ca6af",
      "parents": [
        "748047de833061466e230baf374480a147568f73"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 10 16:23:41 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Dec 11 11:00:45 2015 -0800"
      },
      "message": "ART: Weaken dex file verifier abstract check\n\nWe decided to not reject dex files with non-abstract classes containing\nabstract methods (even though that\u0027s broken code). Just log a warning\ninstead.\n\nReported by Nikolay Serdjuk.\n\nBug: 26143249\nChange-Id: Iaf981dba70c7c4b9c844ad9f2806278072e3ed52\n"
    },
    {
      "commit": "226501b317e148aa8a8983355e85acb59c1eee83",
      "tree": "e580485b79123403b7436793e1fdea40cdb585ea",
      "parents": [
        "66278646b5b332142d1474703ac7d945dfbf7c78"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Dec 11 14:41:31 2015 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Dec 11 18:41:35 2015 +0000"
      },
      "message": "Revert \"Revert \"Enable profiled guided compilation in dex2oat\"\"\n\nThis reverts commit 2306ae0d412cc53cbf64877e4a8c37292dd907d8.\n\nChange-Id: I50640009c2fac88ea703812b76549a0e8a6d7584\n"
    },
    {
      "commit": "66e43b115ed53512803403d25f88bb4a37590676",
      "tree": "c3b242565fe79d1f28c10e31ad2e7b9c9f091350",
      "parents": [
        "58dcb021c3bd45718d0103844f4e6d55754e6501",
        "1f12e28d52dace9f6e5906b5b7c43793acbc7971"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Fri Dec 11 17:25:17 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 17:25:17 2015 +0000"
      },
      "message": "Merge \"Make \u0027dexdump2 -l xml\u0027 include whether each class is an interface.\""
    },
    {
      "commit": "351dddf4025f07477161209e374741f089d97cb4",
      "tree": "d35406fe1e975369acf8f103d0ad5e0cf2313431",
      "parents": [
        "58dcb021c3bd45718d0103844f4e6d55754e6501"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 11 16:34:46 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 11 16:54:42 2015 +0000"
      },
      "message": "Optimizing: Clean up after HRor.\n\nChange-Id: I96bd7fa2e8bdccb87a3380d063dad0dd57fed9d7\n"
    },
    {
      "commit": "58dcb021c3bd45718d0103844f4e6d55754e6501",
      "tree": "b5ca917081eff52a98331b1234335069ead8bede",
      "parents": [
        "66278646b5b332142d1474703ac7d945dfbf7c78",
        "40a04bf64e5837fa48aceaffe970c9984c94084a"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 11 16:14:56 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 16:14:56 2015 +0000"
      },
      "message": "Merge \"Replace rotate patterns and invokes with HRor IR.\""
    },
    {
      "commit": "40a04bf64e5837fa48aceaffe970c9984c94084a",
      "tree": "27aeff3b9492b396050155734d81aba3c57ffbb7",
      "parents": [
        "763fd2d3d131898cad6295a19ae9a30e22ce5f2a"
      ],
      "author": {
        "name": "Scott Wakeling",
        "email": "scott.wakeling@linaro.org",
        "time": "Fri Dec 11 09:50:36 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Dec 11 16:13:44 2015 +0000"
      },
      "message": "Replace rotate patterns and invokes with HRor IR.\n\nReplace constant and register version bitfield rotate patterns, and\nrotateRight/Left intrinsic invokes, with new HRor IR.\n\nWhere k is constant and r is a register, with the UShr and Shl on\neither side of a |, +, or ^, the following patterns are replaced:\n\n  x \u003e\u003e\u003e #k OP x \u003c\u003c #(reg_size - k)\n  x \u003e\u003e\u003e #k OP x \u003c\u003c #-k\n\n  x \u003e\u003e\u003e r OP x \u003c\u003c (#reg_size - r)\n  x \u003e\u003e\u003e (#reg_size - r) OP x \u003c\u003c r\n\n  x \u003e\u003e\u003e r OP x \u003c\u003c -r\n  x \u003e\u003e\u003e -r OP x \u003c\u003c r\n\nImplemented for ARM/ARM64 \u0026 X86/X86_64.\n\nTests changed to not be inlined to prevent optimization from folding\nthem out. Additional tests added for constant rotate amounts.\n\nChange-Id: I5847d104c0a0348e5792be6c5072ce5090ca2c34\n"
    },
    {
      "commit": "66278646b5b332142d1474703ac7d945dfbf7c78",
      "tree": "eedcbf057dabe78c46e63c645ff833a657a7187d",
      "parents": [
        "919b6d5fc9b18dd7c00f5fa8eb90411b2ca8998b",
        "2306ae0d412cc53cbf64877e4a8c37292dd907d8"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Dec 11 14:01:12 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 14:01:12 2015 +0000"
      },
      "message": "Merge \"Revert \"Enable profiled guided compilation in dex2oat\"\""
    },
    {
      "commit": "2306ae0d412cc53cbf64877e4a8c37292dd907d8",
      "tree": "fcda284846a6a468e39aec2783812d2d1129a35e",
      "parents": [
        "500c9be1f261a8a95ae7a25f4f8084f43207f313"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Dec 11 14:00:52 2015 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Dec 11 14:00:52 2015 +0000"
      },
      "message": "Revert \"Enable profiled guided compilation in dex2oat\"\n\nThe test still have some flakiness in it which didn\u0027t reproduce locally.\n\nThis reverts commit 500c9be1f261a8a95ae7a25f4f8084f43207f313.\n\nChange-Id: I132aff62bf03c2f926aafde6869707573bae9b36\n"
    },
    {
      "commit": "919b6d5fc9b18dd7c00f5fa8eb90411b2ca8998b",
      "tree": "045c87766e43d9f3e9ccc0b188b267aecbb0ddb7",
      "parents": [
        "7b000c9d9dd34f1857bcd561daf04742bbacdd76",
        "76e5eab8610dcded41455e3bc8131dc6d26b4929"
      ],
      "author": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Fri Dec 11 13:16:13 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 13:16:13 2015 +0000"
      },
      "message": "Merge \"Mark __jit_debug_register_code as a unique symbol\""
    },
    {
      "commit": "0a9b6826bc6e71d799eb3fe8829981597b890dee",
      "tree": "64bc484b9a4a556569f02895b685761248a0fb0d",
      "parents": [
        "bf479be3a9b25b2126d2c73a3267f18ee52811fb"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 11 12:14:17 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 11 12:14:17 2015 +0000"
      },
      "message": "Make the JIT the default in ART.\n\nAlso don\u0027t dex2oat an application by default when the JIT is enabled.\n\nChange-Id: I32673e80b966f24ca0f153a3e5b9aacaa1931107\n"
    },
    {
      "commit": "7b000c9d9dd34f1857bcd561daf04742bbacdd76",
      "tree": "83a54a794cb6b87910599d3b47a269cb1bdacd15",
      "parents": [
        "a79c717fd4de0d7361a51bee1e3cf4f2ff5f085a",
        "8c55712f2202782cfe02c5dda9b65ec410ea7475"
      ],
      "author": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Fri Dec 11 11:48:00 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 11:48:00 2015 +0000"
      },
      "message": "Merge \"Set DW_AT_comp_dir for each compile unit in dwarf\""
    },
    {
      "commit": "76e5eab8610dcded41455e3bc8131dc6d26b4929",
      "tree": "20de97e64863007e6be8683c6599c0a50ffaf9db",
      "parents": [
        "f9a9f2bba730a4f47aa84d2b97d3f52f6a73ac1f"
      ],
      "author": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Wed Sep 02 11:24:33 2015 +0100"
      },
      "committer": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Fri Dec 11 11:39:02 2015 +0000"
      },
      "message": "Mark __jit_debug_register_code as a unique symbol\n\nThis symbol is used to notify the debugger about JIT library load/unload\nevents. Because of ICF, several functions with the same body put to the\nsame adress by the linker what causes the debugger to get notifictaion\nabout JIT load/unload events in several case where it isn\u0027t really happened.\n\nThis change disable ICF for the __jit_debug_register_code symbol to prevent\nthis behavior with keeping the symbol unique in the object file.\n\nThis is the 3rd attemp to mark the __jit_debug_register_code symbol unique\nas the previous 2 failed because of some confilict with unrelated changes.\n\nTracking bug for making the same change for aarch64 after we switch to gold\nthere: b/26149442\n\nChange-Id: I6edc45f27d5e57a66fb9d98c32a081f711565810\n"
    },
    {
      "commit": "a79c717fd4de0d7361a51bee1e3cf4f2ff5f085a",
      "tree": "7a2a08b0be2a350c612d3afc23835a10580c80f6",
      "parents": [
        "bf479be3a9b25b2126d2c73a3267f18ee52811fb",
        "500c9be1f261a8a95ae7a25f4f8084f43207f313"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Dec 11 11:35:23 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 11:35:23 2015 +0000"
      },
      "message": "Merge \"Enable profiled guided compilation in dex2oat\""
    },
    {
      "commit": "bf479be3a9b25b2126d2c73a3267f18ee52811fb",
      "tree": "b6cb4205b3c6065029085132125bf6e935d1f7a2",
      "parents": [
        "376cbcc5163b3bb80811b9af6b67b6f8719db9f2",
        "917d01680714b2295f109f8fea0aa06764a30b70"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 11 09:32:54 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 09:32:54 2015 +0000"
      },
      "message": "Merge \"Don\u0027t generate a slow path for strings in the dex cache.\""
    },
    {
      "commit": "376cbcc5163b3bb80811b9af6b67b6f8719db9f2",
      "tree": "e7d9780e67772221de3063b48dc0972eed31aa7d",
      "parents": [
        "b4cc884dfe5bb9c1a36bdfbf6a0dfa183d8d321c",
        "a4f1220c1518074db18ca1044e9201492975750b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Dec 11 09:31:08 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 09:31:08 2015 +0000"
      },
      "message": "Merge \"Optimizing: Add direct calls to math intrinsics\""
    },
    {
      "commit": "b4cc884dfe5bb9c1a36bdfbf6a0dfa183d8d321c",
      "tree": "043036765426dd4842fbbe54c7c94c7c70d695fe",
      "parents": [
        "84623e18021451375248af7be44dd0717e681c1f",
        "7d2b04c227b73257d7c282ca9f7147418091e9f6"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Dec 11 04:01:40 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 04:01:40 2015 +0000"
      },
      "message": "Merge \"Skip DumpForSigQuit if debugger is active\""
    },
    {
      "commit": "7d2b04c227b73257d7c282ca9f7147418091e9f6",
      "tree": "3dd88f5b7def624238d06e21c751581650ce0410",
      "parents": [
        "748047de833061466e230baf374480a147568f73"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Dec 10 17:11:07 2015 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Dec 10 20:00:26 2015 -0800"
      },
      "message": "Skip DumpForSigQuit if debugger is active\n\nOtherwise, the SIGQUIT dumping may get blocked on the mutator lock\nand freeze the debugger.\n\nFuture work: Ideally we want to dump what we can instead of nothing.\n\nBug: 26118154\n\n(cherry picked from commit 0b8f1bfdfc721a41d98d13e12c4c67f62f698dfc)\n\nChange-Id: I28e5352dab3b8abce0b39850e3e58282ae454b51\n"
    },
    {
      "commit": "f5a3099c509cf9b8a4ce9c3073a4db47e14a23bc",
      "tree": "5f07f3ea531240643f4f637c9d3abbad6feafa52",
      "parents": [
        "748047de833061466e230baf374480a147568f73"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Nov 11 14:18:55 2015 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Dec 10 17:25:14 2015 -0800"
      },
      "message": "Use isolated namespaces for app native libs\n\nLinker namespaces provide necessary level\nof isolation for application native libraries.\n\nThe native libraries will no longer be able to\nmistakenly depend on platform private libraries\nlike /system/lib/libssl.so\n\nThis change creates one namespace for each instance\nof class-loader and uses it when loading native libraries.\n\nFor backwards compatibility with older apps we keep\nusing default namespace and LD_LIBRARY_PATH if target\nsdk version is \u003c\u003d 23. (currently set to 0 for testing)\n\nBug: http://b/22548808\nChange-Id: I64e97af7450fbf7e3740ccddda96bb2f7c52e03b\n"
    },
    {
      "commit": "84623e18021451375248af7be44dd0717e681c1f",
      "tree": "6c2643e60c5fda0d1c43c0f006a3d344dcd91b6d",
      "parents": [
        "748047de833061466e230baf374480a147568f73",
        "8ab1d645dfbc84e4b19c0db5e3a0d3081924dc0f"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Fri Dec 11 00:57:24 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 11 00:57:24 2015 +0000"
      },
      "message": "Merge \"For LSE, add a few non-aliasing cases due to pre-existence.\""
    },
    {
      "commit": "1f12e28d52dace9f6e5906b5b7c43793acbc7971",
      "tree": "18d090710026ee22c9dd3b7c3673fc842de9cb51",
      "parents": [
        "748047de833061466e230baf374480a147568f73"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Dec 10 16:49:47 2015 -0800"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Dec 10 16:54:29 2015 -0800"
      },
      "message": "Make \u0027dexdump2 -l xml\u0027 include whether each class is an interface.\n\nChange-Id: Id83ef52454596ab80b16042e58ff9d00bc5fb8ed\n"
    },
    {
      "commit": "8ab1d645dfbc84e4b19c0db5e3a0d3081924dc0f",
      "tree": "bcbdf43935238eeeff308919105891c1aa3f1ef5",
      "parents": [
        "840d22928c09bf373c8f559171fdba3f7448345e"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Dec 03 14:11:15 2015 -0800"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Dec 10 16:38:35 2015 -0800"
      },
      "message": "For LSE, add a few non-aliasing cases due to pre-existence.\n\nCreate reference info for a few instructions that can return a reference.\nSo they will be treated as not-aliasing with future allocations.\n\nChange-Id: Ided3db790b95f8d6f1468bbf4b7f3e6d71d81eb2\n"
    },
    {
      "commit": "748047de833061466e230baf374480a147568f73",
      "tree": "68f85fecbbc6c13ae4ac8d80768fae4f054a7ba0",
      "parents": [
        "1a74dc42099bd1ea4583edabef42b5a4d6f70389",
        "42ef8ab151a3d0cbb42cb43f6841c3708d65fca3"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 10 23:50:11 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 23:50:11 2015 +0000"
      },
      "message": "Merge \"ART: Stash a resolved method late in the verifier\""
    },
    {
      "commit": "1a74dc42099bd1ea4583edabef42b5a4d6f70389",
      "tree": "43701750599f099159e5abcdadab226846fb9b7c",
      "parents": [
        "170e01a6b59b3242a5afc76c3a03c00ce288150f",
        "82863f0ce9fa45f6b14d12c35a6a50e2772ab26a"
      ],
      "author": {
        "name": "Shinichiro Hamaji",
        "email": "hamaji@google.com",
        "time": "Thu Dec 10 23:45:02 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 23:45:02 2015 +0000"
      },
      "message": "Merge \"Output static field values in dexdump\""
    },
    {
      "commit": "42ef8ab151a3d0cbb42cb43f6841c3708d65fca3",
      "tree": "ba8eb3fdecd226a8c516a86ac418f73f6c0ff254",
      "parents": [
        "170e01a6b59b3242a5afc76c3a03c00ce288150f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 03 17:27:32 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 10 13:52:33 2015 -0800"
      },
      "message": "ART: Stash a resolved method late in the verifier\n\nInvoke-interface should only be called on an interface method.\nWe cannot move the check earlier, as there are other checks\nthat must be done that can fail a class hard. So postpone\na push to the dex cache.\n\nClean up the test a bit.\n\nAlso templatize ResolveMethod with a version always checking\nthe invoke type, and on a cache miss check whether type target\ntype is an interface when an interface invoke type was given.\n\nBug: 21869691\nChange-Id: I94cbb23339cbbb3cb6be9995775e4dcefacce7fd\n"
    },
    {
      "commit": "170e01a6b59b3242a5afc76c3a03c00ce288150f",
      "tree": "4ae775d15f51efb704ca5b00a2ee4b6fb6615812",
      "parents": [
        "34760f9a97e6a1733edfca1b13199f749106a30f",
        "c96205e03bd4f991ad1540df38f9f692ef211b22"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 10 21:28:58 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 21:28:58 2015 +0000"
      },
      "message": "Merge \"Revert \"ART: Check invoke-interface earlier in verifier\"\""
    },
    {
      "commit": "c96205e03bd4f991ad1540df38f9f692ef211b22",
      "tree": "4ae775d15f51efb704ca5b00a2ee4b6fb6615812",
      "parents": [
        "34760f9a97e6a1733edfca1b13199f749106a30f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 10 13:25:27 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 10 13:27:10 2015 -0800"
      },
      "message": "Revert \"ART: Check invoke-interface earlier in verifier\"\n\nThis reverts commit dae24142127c64551142a50423085aabdb0a6060.\n\nIt is important to check the name of the method being called.\n\nBug: 21869691\n"
    },
    {
      "commit": "67ad20e2834ed2b821503d0d9ab1b3a34e55b7d4",
      "tree": "594f0446ce4380a8a80a42bb7e718a67f4199b7c",
      "parents": [
        "840d22928c09bf373c8f559171fdba3f7448345e"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 09 15:41:09 2015 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Dec 10 13:07:23 2015 -0800"
      },
      "message": "Address some comments in image writer\n\nChange-Id: I74c3192d595dc8b86d6ce3e3ca3bb32cce61872c\n"
    },
    {
      "commit": "34760f9a97e6a1733edfca1b13199f749106a30f",
      "tree": "915f20fcccc2590f62c70b6e32ac0f56e30a50b5",
      "parents": [
        "a1b21219dbed80f8812611968b624ba8644781e3",
        "53e32d14d7a51198c6ef09120c15bafdd1d055c2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 10 20:50:26 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 20:50:26 2015 +0000"
      },
      "message": "Merge \"ART: Refactor verifier callbacks\""
    },
    {
      "commit": "a1b21219dbed80f8812611968b624ba8644781e3",
      "tree": "9c95ed16adc5695caf8150839b760b154873c328",
      "parents": [
        "840d22928c09bf373c8f559171fdba3f7448345e",
        "49b0f45d5a9023653ab00c355735910aa51ee0ba"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 10 20:29:25 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 20:29:25 2015 +0000"
      },
      "message": "Merge \"Refactor and clean up OatWriter and Dex2Oat.\""
    },
    {
      "commit": "49b0f45d5a9023653ab00c355735910aa51ee0ba",
      "tree": "655a013ab75ff1acbeae1e9113b1339f0fd14f2f",
      "parents": [
        "6d0aefdc1f536e093305e29770cf749acb3247e2"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 10 13:49:19 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Dec 10 19:42:52 2015 +0000"
      },
      "message": "Refactor and clean up OatWriter and Dex2Oat.\n\nThis is in preparation for early writing of dex files\nto oat file.\n\nChange-Id: I31195f3c94eb8ff676c600c60bd35ae531f457b4\n"
    },
    {
      "commit": "840d22928c09bf373c8f559171fdba3f7448345e",
      "tree": "4d5f7c1ab47ea6b8399d2112b69a818a0519b2de",
      "parents": [
        "836ee764c86892aff1dca6b0f8b27e32c7374cc7",
        "ceb07b3285eaab350a8cd12f7d74be3e40a255dd"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Dec 10 19:16:31 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 19:16:31 2015 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Add support for LZ4 compressed image files\"\"\""
    },
    {
      "commit": "ceb07b3285eaab350a8cd12f7d74be3e40a255dd",
      "tree": "4d5f7c1ab47ea6b8399d2112b69a818a0519b2de",
      "parents": [
        "836ee764c86892aff1dca6b0f8b27e32c7374cc7"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Dec 10 09:33:21 2015 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Dec 10 10:28:19 2015 -0800"
      },
      "message": "Revert \"Revert \"Add support for LZ4 compressed image files\"\"\n\nNeeded to call compiler_driver_-\u003eSetSupportBootImageFixup(false).\n\nBug: 22858531\n\nThis reverts commit 83d4d72aa0e4170209ab50c67ba22e46b71352c1.\n\nChange-Id: Iaed6a810a0c088f1f2c57cf2f12087f3978a3de1\n"
    },
    {
      "commit": "a4f1220c1518074db18ca1044e9201492975750b",
      "tree": "796f0dcd733ad5ffd7d8310af871f3e2c22ee0be",
      "parents": [
        "763fd2d3d131898cad6295a19ae9a30e22ce5f2a"
      ],
      "author": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Thu Aug 06 15:23:34 2015 -0400"
      },
      "committer": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Thu Dec 10 13:23:49 2015 -0500"
      },
      "message": "Optimizing: Add direct calls to math intrinsics\n\nSupport the double forms of:\n  cos, sin, acos, asin, atan, atan2, cbrt, cosh, exp, expm1,\n  hypot, log, log10, nextAfter, sinh, tan, tanh\n\nAdd these entries to the vector addressed off the thread pointer. Call\nthe libc routines directly, which means that we have to implement the\nnative ABI, not the ART one. For x86_64, that includes saving XMM12-15\nas the native ABI considers them caller-save, while the ART ABI\nconsiders them callee-save.  We save them by marking them as used by the\ncall to the math function.  For x86, this is not an issue, as all the XMM\nregisters are caller-save.\n\nOther architectures will call Java as before until they are ready to\nimplement the new intrinsics.\n\nBump the OAT version since we are incompatible with old boot.oat files.\n\nChange-Id: Ic6332c3555c09393a17d1ad4daf62932488722fb\nSigned-off-by: Mark Mendell \u003cmark.p.mendell@intel.com\u003e\n"
    },
    {
      "commit": "500c9be1f261a8a95ae7a25f4f8084f43207f313",
      "tree": "e36173ca0ea9dfa88e6e605f156c3992414d7d1b",
      "parents": [
        "836ee764c86892aff1dca6b0f8b27e32c7374cc7"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Nov 25 15:59:14 2015 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Dec 10 17:34:06 2015 +0000"
      },
      "message": "Enable profiled guided compilation in dex2oat\n\n- add parsing of the profile info saved during JIT.\n- don\u0027t compile methods which are not part of the profile info.\n- delete old profile hooks.\n- add test for reading/writing profile. The test is disable in:\n   * interpreter modes: the test needs JIT.\n   * no-dex2oat/no-prebuild: we only save profiling info for the primary\n     oat file. In these modes we don\u0027t create oat files and thus nothing\n     is saved.\n\nBug:26080105\n\nChange-Id: Ifdc63dc9d4b537fc79e54c3edc3ae3a462bc30fb\n"
    },
    {
      "commit": "917d01680714b2295f109f8fea0aa06764a30b70",
      "tree": "1da1b936fcc2318dced0d0aa9d2f987af1a05169",
      "parents": [
        "d48015603a54b820d287d92709825765159615f0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Nov 24 18:25:35 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 10 16:48:06 2015 +0000"
      },
      "message": "Don\u0027t generate a slow path for strings in the dex cache.\n\nChange-Id: I1d258f1a89bf0ec7c7ddd134be9215d480f0b09a\n"
    },
    {
      "commit": "836ee764c86892aff1dca6b0f8b27e32c7374cc7",
      "tree": "fcda284846a6a468e39aec2783812d2d1129a35e",
      "parents": [
        "d48015603a54b820d287d92709825765159615f0",
        "f71b3ade9c99ce2fec2f5049ce9c5968721e1b81"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Dec 10 16:42:55 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 16:42:55 2015 +0000"
      },
      "message": "Merge \"Get source mapping table from stack maps.\""
    },
    {
      "commit": "f71b3ade9c99ce2fec2f5049ce9c5968721e1b81",
      "tree": "fcda284846a6a468e39aec2783812d2d1129a35e",
      "parents": [
        "d48015603a54b820d287d92709825765159615f0"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Tue Dec 08 15:05:08 2015 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Thu Dec 10 16:18:54 2015 +0000"
      },
      "message": "Get source mapping table from stack maps.\n\nStack maps contain pc to dex mapping.\nReuse them instead of maintaining separate map.\n\nChange-Id: Iaaec9a6bd2603eace1dfc8f4344087883d88cce3\n"
    },
    {
      "commit": "d48015603a54b820d287d92709825765159615f0",
      "tree": "4ea80442ced4a81676cd6a68c33bc641a8494497",
      "parents": [
        "4a34064d9ca437c5168d7c00c456155ea8339dec",
        "41844e5071b2540d7b974ba09859170af2720776"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 10 15:40:55 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 15:40:55 2015 +0000"
      },
      "message": "Merge \"Fix braino when resolving an invoke-super.\""
    },
    {
      "commit": "41844e5071b2540d7b974ba09859170af2720776",
      "tree": "2bb63772ce8b223ead4d8b496ce0a192e41aab42",
      "parents": [
        "70a33905e90c655cb17303b238bace2a2f4d5bf9"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 10 15:06:15 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 10 15:38:48 2015 +0000"
      },
      "message": "Fix braino when resolving an invoke-super.\n\nWe should check the actual_method, and not the resolved_method,\non whether it is in the same dex file.\n\nbug:26022686\n\nChange-Id: I8a9b0c68e162015e0aec397545d0607482949967\n"
    },
    {
      "commit": "4a34064d9ca437c5168d7c00c456155ea8339dec",
      "tree": "7f34804138b0978b210450f1f36a4f68f960e95b",
      "parents": [
        "a10a0750cf8a916080067997eedfb80c03d74b51",
        "04ff4e8463ac68752638d305eeb84b457fd8289c"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 10 15:12:19 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 15:12:19 2015 +0000"
      },
      "message": "Merge \"ART: Fix bug in DCE not removing phis from catch phi uses\""
    },
    {
      "commit": "04ff4e8463ac68752638d305eeb84b457fd8289c",
      "tree": "109240fb049a9713af5a6de9a6668b61929c2b2b",
      "parents": [
        "70a33905e90c655cb17303b238bace2a2f4d5bf9"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 10 13:54:52 2015 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 10 15:11:25 2015 +0000"
      },
      "message": "ART: Fix bug in DCE not removing phis from catch phi uses\n\nDue to the missing edges between throwing instructions and catch phis\nDCE needs to manually remove dead instructions from catch phi users,\nbeing overly conservative if the inputs are not in the dead blocks.\nDCE used to do this for normal instructions, but it needs to do the\nsame for phis.\n\nChange-Id: I7edfcb84ec6ff7303945d5d5cd436b1d1e95df2a\n"
    },
    {
      "commit": "8c55712f2202782cfe02c5dda9b65ec410ea7475",
      "tree": "f8a614193f9635d9283706ac271b98203798a80a",
      "parents": [
        "f9a9f2bba730a4f47aa84d2b97d3f52f6a73ac1f"
      ],
      "author": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Thu Dec 10 15:06:25 2015 +0000"
      },
      "committer": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Thu Dec 10 15:09:57 2015 +0000"
      },
      "message": "Set DW_AT_comp_dir for each compile unit in dwarf\n\nThe dex file don\u0027t contain the full path of the compilation dir so we\nset it to a symbolic value ($JAVA_SRC_ROOT) what can be remapped by\nthe tools reading the dwarf information.\n\nChange-Id: Ia011de14a6b36a29b54b3f3fa290cc3157a0b91d\n"
    },
    {
      "commit": "a10a0750cf8a916080067997eedfb80c03d74b51",
      "tree": "1bf7c55618b74ec4c497c86558112f13c5970625",
      "parents": [
        "6d0aefdc1f536e093305e29770cf749acb3247e2",
        "ea6f8d87d5396cf450c6dfb6f17159c7babcad87"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Dec 10 11:11:43 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 11:11:43 2015 +0000"
      },
      "message": "Merge \"Fix the build-art-multi-executable Make function.\""
    },
    {
      "commit": "ea6f8d87d5396cf450c6dfb6f17159c7babcad87",
      "tree": "7980c5136ef079bb87f5befbdb34a4a71f5ba139",
      "parents": [
        "6247556fb980c5122fc2dd5c431c2b2c0281606d"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Dec 10 11:04:25 2015 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Dec 10 11:04:25 2015 +0000"
      },
      "message": "Fix the build-art-multi-executable Make function.\n\nFollow-up fix to\nhttps://android-review.googlesource.com/#/c/185537.\n\nBug: 26051370\nChange-Id: I891abe5ec2a2eae775b9791050654602861798f4\n"
    },
    {
      "commit": "6d0aefdc1f536e093305e29770cf749acb3247e2",
      "tree": "74964d04d6bb0b7a3210b8e414516375cb3fb189",
      "parents": [
        "6247556fb980c5122fc2dd5c431c2b2c0281606d",
        "7e99e054d023af878d6632bc8c8ba07357ded294"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 10 10:54:24 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 10:54:24 2015 +0000"
      },
      "message": "Merge \"MIPS32: Improve integer division by constants\""
    },
    {
      "commit": "6247556fb980c5122fc2dd5c431c2b2c0281606d",
      "tree": "558560aa7383e5bb926a99b49bced36844881a46",
      "parents": [
        "70a33905e90c655cb17303b238bace2a2f4d5bf9",
        "3045cfe0ae439aa94cf7b770a9e329c7edc1fc8a"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Dec 10 10:24:10 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 10:24:10 2015 +0000"
      },
      "message": "Merge \"Fix imgdiag build rules.\""
    },
    {
      "commit": "3045cfe0ae439aa94cf7b770a9e329c7edc1fc8a",
      "tree": "dbb441af8d6c012c98d45d356373ff5f3cdadc2c",
      "parents": [
        "2433d4e17c3006b8262a0d9421e201fc84777208"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Dec 10 10:17:43 2015 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Dec 10 10:17:43 2015 +0000"
      },
      "message": "Fix imgdiag build rules.\n\nAdjust build rules to avoid building a 64-bit imgdiag\nexecutable on host when HOST_PREFER_32_BIT is true.\n\nThis CL addresses an imgdiag related build issue that\nappeared on the ART Buildbot after system/core was unpinned\nfrom the master-art manifest\n(https://android-review.googlesource.com/#/c/185580), used\nby some of our Buildbot configurations:\n\n  ninja: error: \u0027out/host/linux-x86/obj/SHARED_LIBRARIES/libbacktrace_intermediates/export_includes\u0027, needed by \u0027out/host/linux-x86/obj/EXECUTABLES/imgdiag_intermediates/import_includes\u0027, missing and no known rule to make it\n\nBug: 26051370\nChange-Id: I8f3b3c89fb8da0c37a1ffb21b6d835e7ede1e71a\n"
    },
    {
      "commit": "70a33905e90c655cb17303b238bace2a2f4d5bf9",
      "tree": "8753a7d46e3e196ffa70f2263938bd51e816e5af",
      "parents": [
        "1d97f949e807e963dd92dcf9ac38def5301d555a",
        "83d4d72aa0e4170209ab50c67ba22e46b71352c1"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 10 08:27:00 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 08:27:00 2015 +0000"
      },
      "message": "Merge \"Revert \"Add support for LZ4 compressed image files\"\""
    },
    {
      "commit": "83d4d72aa0e4170209ab50c67ba22e46b71352c1",
      "tree": "5444d2ba3e49c4bc8f7997ed0886264f53902ca6",
      "parents": [
        "c6f41b5b3ca3d7ac3c12ad3995ffef4e831973a0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 10 08:26:32 2015 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Dec 10 08:26:32 2015 +0000"
      },
      "message": "Revert \"Add support for LZ4 compressed image files\"\n\nTentative. Looks like it breaks image_test for hammerhead:\nart/compiler/linker/arm/relative_patcher_thumb2.cc:36] Check failed: target_offset \u0026 1u \u003d\u003d 1u (target_offset \u0026 1u\u003d0, 1u\u003d1) \n\nBug: 22858531\n\nThis reverts commit c6f41b5b3ca3d7ac3c12ad3995ffef4e831973a0.\n\nChange-Id: I9bc5738a8b5c8f8bc8b73309f9420fd691bc79a9\n"
    },
    {
      "commit": "53e32d14d7a51198c6ef09120c15bafdd1d055c2",
      "tree": "2386137351c94dcaf0612713134f487fc8f1fdfb",
      "parents": [
        "1d97f949e807e963dd92dcf9ac38def5301d555a"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 09 21:03:23 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 09 21:03:23 2015 -0800"
      },
      "message": "ART: Refactor verifier callbacks\n\nChange the return type of MethodVerified to void. It was never\nused anyways.\n\nRemove the callbacks calls from the core of the verifier (Verify()).\nInstead, make the convenience functions do the work, and add a\nparameter to supply the callback so that the verifier becomes\nindependent of the Runtime-stored one.\n\nFix up calls that now need to provide a callback, but leave places\nthat only run the verifier to get metadata (e.g., register type data,\nlock state) without callback. This avoids callback calls when in JIT\nmode.\n\nBug: 26075442\nChange-Id: I2c270f01e4de088771d4d4b19dae4f07d77640f0\n"
    },
    {
      "commit": "82863f0ce9fa45f6b14d12c35a6a50e2772ab26a",
      "tree": "16863b18db5dff2d3d125c956910d45048f24341",
      "parents": [
        "e8be90a673feb573d53277f42282955cbf7f58e9"
      ],
      "author": {
        "name": "Shinichiro Hamaji",
        "email": "hamaji@google.com",
        "time": "Thu Nov 05 16:51:33 2015 +0900"
      },
      "committer": {
        "name": "Shinichiro Hamaji",
        "email": "hamaji@google.com",
        "time": "Thu Dec 10 13:16:59 2015 +0900"
      },
      "message": "Output static field values in dexdump\n\nThis is necessary to generate table-of-contents of .dex files\nto prevent unnecessary rebuilds for implementation-only\nchanges because these values can be used while compiling other\nmodules.\n\nAlso modify EncodedStaticFieldValueIterator so it can be used\nwithout ClassLoader/Linker.\n\nBug: 24597504\nChange-Id: Ida0c839f9dd6961e1c1b3a380e2092042fad03bb\n"
    },
    {
      "commit": "1d97f949e807e963dd92dcf9ac38def5301d555a",
      "tree": "63876ed347fac7bb587772269140719d7975a1a9",
      "parents": [
        "f1975e432859101bf8e7b0fd33f6052cafb0f9b2",
        "4d98c84e6e2a47caf279909edae2b55f9f032288"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 10 00:34:23 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 10 00:34:23 2015 +0000"
      },
      "message": "Merge \"ART: Make trampoline compiler pointer-size-safe\""
    },
    {
      "commit": "4d98c84e6e2a47caf279909edae2b55f9f032288",
      "tree": "63876ed347fac7bb587772269140719d7975a1a9",
      "parents": [
        "f1975e432859101bf8e7b0fd33f6052cafb0f9b2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 09 15:14:04 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 09 16:08:47 2015 -0800"
      },
      "message": "ART: Make trampoline compiler pointer-size-safe\n\nThe trampoline compiler uses offsets of runtime structures which\nmay change with the pointer size.\n\nAdd offset tests to jni_internal_test.\n\nBug: 26071368\n\n(cherry picked from commit da9b763abc712fd6d1e24170a194abfbe795b8cd)\n\nChange-Id: I01d1a3727f46b3015ac677afb5427337c3093402\n"
    },
    {
      "commit": "f1975e432859101bf8e7b0fd33f6052cafb0f9b2",
      "tree": "bad5813c2abd5c3a9c302767290f9b1b9360b707",
      "parents": [
        "7cbd95c2fb7ca3d1391ec92d1be2d81863e63dd2",
        "4b467ed97bc5886fb800209c0ee94df10163b88d"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Wed Dec 09 20:35:32 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 09 20:35:32 2015 +0000"
      },
      "message": "Merge \"Simplify and rename IsLoopInvariant() test.\""
    },
    {
      "commit": "7cbd95c2fb7ca3d1391ec92d1be2d81863e63dd2",
      "tree": "c32c87552120021c091540e010722eb317d04441",
      "parents": [
        "d7d23eec777a8b84909f3364700fc1e8a075e5a2",
        "c6f41b5b3ca3d7ac3c12ad3995ffef4e831973a0"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 09 20:01:11 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 09 20:01:11 2015 +0000"
      },
      "message": "Merge \"Add support for LZ4 compressed image files\""
    },
    {
      "commit": "c6f41b5b3ca3d7ac3c12ad3995ffef4e831973a0",
      "tree": "c32c87552120021c091540e010722eb317d04441",
      "parents": [
        "d7d23eec777a8b84909f3364700fc1e8a075e5a2"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Dec 04 15:38:50 2015 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Dec 09 11:40:19 2015 -0800"
      },
      "message": "Add support for LZ4 compressed image files\n\nAdded dex2oat option --image-format\u003d(store|lz4). Using lz4 means\nthat the main image section (all data other than header and bitmap)\nare stored in a compressed state.\n\nN5 results:\nBoot image size: 8067128 -\u003e 2827605\nDecompression time 18.93ms\nDecompression rate: 426MB/s\n\nPatchoat is not currently supported since it maps the source image\ndirectly. In order to support compressed images we would need to\nrecompress the output image and then write it back out to a file.\nAlso there are not many cases where we would want to patch a\ncompressed image since they are going to be dirty memory when\nuncompressed anyways. Might as well just patch as we are loading.\n\nBug: 22858531\n\nChange-Id: I8c54ccf73408273011161a61bb891736735074d9\n"
    },
    {
      "commit": "d7d23eec777a8b84909f3364700fc1e8a075e5a2",
      "tree": "5444d2ba3e49c4bc8f7997ed0886264f53902ca6",
      "parents": [
        "f9a9f2bba730a4f47aa84d2b97d3f52f6a73ac1f",
        "996ed0b8d99c6d692ae71b86b18ec5df5293a431"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Dec 09 16:59:36 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 09 16:59:36 2015 +0000"
      },
      "message": "Merge \"Add local variables to DWARF.\""
    },
    {
      "commit": "996ed0b8d99c6d692ae71b86b18ec5df5293a431",
      "tree": "57a5b140323e8e0fe88024b5eb28455aa142cb55",
      "parents": [
        "533ffe5369cdaeb8ab7986b1fefece32351c0366"
      ],
      "author": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Fri Nov 27 10:27:11 2015 +0000"
      },
      "committer": {
        "name": "David Srbecky",
        "email": "dsrbecky@google.com",
        "time": "Wed Dec 09 16:52:47 2015 +0000"
      },
      "message": "Add local variables to DWARF.\n\nChange-Id: Ic915643a898e45380710de86a7944cc27403bd7f\n"
    },
    {
      "commit": "f9a9f2bba730a4f47aa84d2b97d3f52f6a73ac1f",
      "tree": "5de62d223c08c0c2aecc8a9b350e0e2caa70b78c",
      "parents": [
        "2c1164c2aea94e4dfc5bf21785557240c832bcd2",
        "64fff41f639a7b85b2e172977175b3c79151634e"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 09 16:20:34 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 09 16:20:34 2015 +0000"
      },
      "message": "Merge \"Clarify --boot-image help message\""
    },
    {
      "commit": "2c1164c2aea94e4dfc5bf21785557240c832bcd2",
      "tree": "34a2693a4642071cd53a619323a824f37e232d5c",
      "parents": [
        "976af0a2914f20b65830b1ed9ac8ab45055f35a5",
        "59f054d98f519a3efa992b1c688eb97bdd8bbf55"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 09 15:53:42 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 09 15:53:42 2015 +0000"
      },
      "message": "Merge \"ART: Reduce the instructions generated by packed switch.\""
    },
    {
      "commit": "976af0a2914f20b65830b1ed9ac8ab45055f35a5",
      "tree": "735352791097844b7a79c120135f498b94be0118",
      "parents": [
        "533ffe5369cdaeb8ab7986b1fefece32351c0366",
        "5096e66d07db8041589518f8c5b0281d859d0817"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 09 15:43:50 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 09 15:43:50 2015 +0000"
      },
      "message": "Merge \"ART: Add FdFile::Copy() to copy data from another file.\""
    },
    {
      "commit": "5096e66d07db8041589518f8c5b0281d859d0817",
      "tree": "52a1d28a6286d9054d2559fea8168541612093bd",
      "parents": [
        "88b2b80aed15bb1f931cddd40e44ca525ef10018"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Dec 08 19:25:49 2015 +0000"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Dec 09 15:40:31 2015 +0000"
      },
      "message": "ART: Add FdFile::Copy() to copy data from another file.\n\nAlso move utilities for inspecting file magic numbers to\nbase/file_magic.{h,cc} and drop the unused IsOatMagic().\n\nChange-Id: I2cc4dd18a5e8b9738fb386c8057faad3722bdd68\n"
    },
    {
      "commit": "64fff41f639a7b85b2e172977175b3c79151634e",
      "tree": "67bcdff6c0d4c92d4e3f023927c0891447d35854",
      "parents": [
        "533ffe5369cdaeb8ab7986b1fefece32351c0366"
      ],
      "author": {
        "name": "Kevin Brodsky",
        "email": "kevin.brodsky@linaro.org",
        "time": "Tue Nov 24 14:24:34 2015 +0000"
      },
      "committer": {
        "name": "Kevin Brodsky",
        "email": "kevin.brodsky@linaro.org",
        "time": "Wed Dec 09 11:42:12 2015 +0000"
      },
      "message": "Clarify --boot-image help message\n\nMake dex2oat print the same help as e.g. oatdump regarding\n--boot-image and clarify the example, this is particularly important\nas the automatic addition of the arch to the path is quite\ncounterintuitive.\n\nChange-Id: I234b498d5deca99bb988a9c24ff9febc6349eb9e\n"
    },
    {
      "commit": "533ffe5369cdaeb8ab7986b1fefece32351c0366",
      "tree": "10fdedc526f1bff36d06f31d1ee26b113380237d",
      "parents": [
        "eb5ddd7b02ce2d25d4f28f85a13aac628526e1c1",
        "801fcc486250af055ea7dbf3678ad33cf76c5b32"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Dec 09 03:19:33 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 09 03:19:33 2015 +0000"
      },
      "message": "Merge \"MIPS64: Enable StringCompareTo and StringIndexOf stub tests\""
    },
    {
      "commit": "4b467ed97bc5886fb800209c0ee94df10163b88d",
      "tree": "13b2d0b144c65e91243f3aa50ce9514276e52c64",
      "parents": [
        "eb5ddd7b02ce2d25d4f28f85a13aac628526e1c1"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Nov 19 17:04:22 2015 -0800"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Tue Dec 08 17:02:15 2015 -0800"
      },
      "message": "Simplify and rename IsLoopInvariant() test.\n\nSimplify IsLoopInvariant() test. Also rename it to IsDefinedOutOfTheLoop()\nso there is no ambiguity for example whether a instruction after the loop counts\nas a loop invariant. It\u0027s up to the caller to make the interpretation.\n\nChange-Id: I999139032b0e4d815dd1e2276f2bd428cf558686\n"
    },
    {
      "commit": "eb5ddd7b02ce2d25d4f28f85a13aac628526e1c1",
      "tree": "8f655b382e73222e70e30daaeedc3999014aa7ae",
      "parents": [
        "2433d4e17c3006b8262a0d9421e201fc84777208",
        "dae24142127c64551142a50423085aabdb0a6060"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Dec 08 22:33:23 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 08 22:33:23 2015 +0000"
      },
      "message": "Merge \"ART: Check invoke-interface earlier in verifier\""
    },
    {
      "commit": "59f054d98f519a3efa992b1c688eb97bdd8bbf55",
      "tree": "83d5a75bf26238ff1789569de62e4b72fb348119",
      "parents": [
        "763fd2d3d131898cad6295a19ae9a30e22ce5f2a"
      ],
      "author": {
        "name": "Zheng Xu",
        "email": "zheng.xu@linaro.org",
        "time": "Mon Dec 07 17:17:03 2015 +0800"
      },
      "committer": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Tue Dec 08 13:14:10 2015 -0500"
      },
      "message": "ART: Reduce the instructions generated by packed switch.\n\nImplement Vladimir Marko\u0027s suggestion. The new compare/jump series\nreduce the number of instructions from (2*n+1) to (1.5*n+3).\n\nGenerate normal compare/jump series when numEntries \u003c\u003d 3.\nGenerate optimal compare/jump series when numEntries \u003c\u003d threshold.\nGenerate jump tables otherwise.\n\nChange-Id: I425547b6787057c7fa84e71f17c145b63b208633\n"
    },
    {
      "commit": "dae24142127c64551142a50423085aabdb0a6060",
      "tree": "35c06bc37e2dd2caad4fef1fba4de16a12aad6f9",
      "parents": [
        "ef45113d01c16102538a8848d6979e772dad6225"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Dec 03 17:27:32 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Dec 08 08:50:12 2015 -0800"
      },
      "message": "ART: Check invoke-interface earlier in verifier\n\nInvoke-interface should only be called on an interface method.\nMove the check earlier, as otherwise we\u0027ll try to resolve and\npotentially inject a method into the dex cache.\n\nAlso templatize ResolveMethod with a version always checking\nthe invoke type, and on a cache miss check whether type target\ntype is an interface when an interface invoke type was given.\n\nBug: 21869691\nChange-Id: Ica27158f675b5aa223d9229248189612f4706832\n"
    }
  ],
  "next": "2433d4e17c3006b8262a0d9421e201fc84777208"
}
