)]}'
{
  "log": [
    {
      "commit": "df10b32c4d0adfa86201169692eaa7ef038b642c",
      "tree": "4dc2b8cad9f516a932df96db23d5aefa762f14a6",
      "parents": [
        "f72b7d6066238fd3faa25aac671dbaa02aeafac9"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 11 21:46:05 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 12 14:36:47 2014 -0700"
      },
      "message": "ART: Dex file verifier needs to check proto idx of method id.\n\nBug: 15570490\nChange-Id: I4e90aea6e77711ee37d14d96a1fc9a2fbb980d94\n"
    },
    {
      "commit": "5110a876ce7aa1479bcbeabc76403e8b5fbe75d5",
      "tree": "2d23285ec308b945a226a92d5510e7422fb68279",
      "parents": [
        "a194acf232b761b2ead114bdc6c38af112bf08cd",
        "3bd7a6c1716935e758f230e2f199128cb3c28b42"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 12 17:15:23 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 21:26:11 2014 +0000"
      },
      "message": "Merge \"Fix reflection access check for attached native threads.\""
    },
    {
      "commit": "3bd7a6c1716935e758f230e2f199128cb3c28b42",
      "tree": "fda9d595f8ee976fcb309b94abebcd859db76d02",
      "parents": [
        "dfc2091d2fb8a7694f69acf8bd39ce4953e026c2"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 12 15:22:31 2014 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 12 18:08:44 2014 +0100"
      },
      "message": "Fix reflection access check for attached native threads.\n\nBug: 15539150\nChange-Id: Ie580cad1c0169d550162bcc878b07643259323c4\n"
    },
    {
      "commit": "c936622863a50bdda9b10062515dfc02a8c8b652",
      "tree": "ddc5df89836206ac35885468b144b5538218abde",
      "parents": [
        "3a7a8d18a01c6930b9bcf3897762af301b25e8ca",
        "e09269ca05e3014e86198e9a2cf6092026fafefd"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 12 01:36:15 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 11 23:11:06 2014 +0000"
      },
      "message": "Merge \"ART: Check indices in dex file verifier\""
    },
    {
      "commit": "3e1e549c564045d852ace46388eb06427d63e6ca",
      "tree": "810bf5bc158a872eec2bfbb2a7a3e3a0dd59c9a6",
      "parents": [
        "dfc2091d2fb8a7694f69acf8bd39ce4953e026c2",
        "836424805dd48af67088d30992a3f2e6841ca047"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 12 14:27:31 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 11 15:59:20 2014 +0000"
      },
      "message": "Merge \"Add D/CHECK_CONSTEXPR macros for use in constexpr context.\""
    },
    {
      "commit": "836424805dd48af67088d30992a3f2e6841ca047",
      "tree": "7ef4b2fbe4ec82f3845f201f1a3befe70571739d",
      "parents": [
        "3283ade469f515f89d70cf47b6ac6fe1814147f2"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jun 11 12:12:07 2014 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Jun 11 14:07:28 2014 +0100"
      },
      "message": "Add D/CHECK_CONSTEXPR macros for use in constexpr context.\n\nMake most RegStorage methods constexpr, make StorageSize()\nconst.\n\nChange-Id: Ie63faa3b081094b3dd30352c6240fdf10ef8b87e\n"
    },
    {
      "commit": "44405a140f92aefdb18ba48c3762b229b6d7d169",
      "tree": "5b98c11fc45e83a3b001aa6988f03a46ec313617",
      "parents": [
        "508e0112e8b0e0de7adc9e9fc630b08b862ecb15",
        "859c255c310ee0682f635fc5b1824bc72b8a1aa2"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Jun 11 23:17:59 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 22:15:14 2014 +0000"
      },
      "message": "Merge \"Fix mem_map_test for Mips.\""
    },
    {
      "commit": "859c255c310ee0682f635fc5b1824bc72b8a1aa2",
      "tree": "ce3bf407a135225fe75442e4c56c4429fb64c9a9",
      "parents": [
        "5bf6a77944acdeb0a9464803c70d0c65cf15b68b"
      ],
      "author": {
        "name": "Douglas Leung",
        "email": "douglas@mips.com",
        "time": "Wed Jun 11 11:47:09 2014 -0700"
      },
      "committer": {
        "name": "Douglas Leung",
        "email": "douglas@mips.com",
        "time": "Wed Jun 11 11:47:09 2014 -0700"
      },
      "message": "Fix mem_map_test for Mips.\n\nMips\u0027 kuseg window is from 0x0 to 0x80000000.\n\nChange-Id: I3e90b04030672c003cdb4f7e9cda414b673b2d04\nSigned-off-by: Douglas Leung \u003cdouglas@mips.com\u003e\n"
    },
    {
      "commit": "508e0112e8b0e0de7adc9e9fc630b08b862ecb15",
      "tree": "19c761529d5f31c9ecade1efc0355bd7582c593a",
      "parents": [
        "921b1e02130a4d60926f4c0d36f69cbfb7ca5a52",
        "b5a9e3d1cc1fd66683e43e365afc8c900e2800c4"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Wed Jun 11 23:04:03 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 22:15:14 2014 +0000"
      },
      "message": "Merge \"Remove Object* weak roots from the debugger.\""
    },
    {
      "commit": "b5a9e3d1cc1fd66683e43e365afc8c900e2800c4",
      "tree": "5b259807b4c5c67c532050939458a8390234a7a0",
      "parents": [
        "3b95d23f44485d207aa6ef298dc744fa2355578b"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Mon Jun 09 12:11:20 2014 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Wed Jun 11 14:46:13 2014 -0700"
      },
      "message": "Remove Object* weak roots from the debugger.\n\nThe weak roots were converted to JNI weak refs.\n\nSince the weak roots are now normal JNI weak refs, we eliminate the\nneed to insert read barriers for those weak roots in the debugger and\nthe need for the GC to have a separate step to update them as part of\nthe system weak sweeping.\n\nBug: 12687968\nChange-Id: If16396d4713457b8af4f1ea6a0c6ec6799cb615e\n"
    },
    {
      "commit": "8758c64a40e74ebb492a348556ec7b25a89c1491",
      "tree": "1726bb15eb1099ee6e58543862cac758e31b18d5",
      "parents": [
        "b12f34742be4adaa804cc0d388ba51603bb95955"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jun 11 14:22:02 2014 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jun 11 15:02:00 2014 -0700"
      },
      "message": "Fix build by converting from bionic to elfutils version of elf.h\n\nChange-Id: I70a3b6fedae6d290a4f01d4ae8fdd726b8aaa90f\n"
    },
    {
      "commit": "2fd08e2d497261521ad94b3162eeed1a3ef51e13",
      "tree": "7d4441b43285a36d08a88db1f5134b22ba89763c",
      "parents": [
        "4daa8b51de9fb8c0d2822aa700fdc6a71762831d",
        "4965c02b9074f4a3dc0a6ffe6d1b7e256f1c26c7"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Jun 11 20:14:09 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 22:20:24 2014 +0000"
      },
      "message": "Merge \"Fix compilation errors when setting kTracing \u003d true.\""
    },
    {
      "commit": "4965c02b9074f4a3dc0a6ffe6d1b7e256f1c26c7",
      "tree": "2b70276af13aa5130073875e96740cc9af8bc1ba",
      "parents": [
        "5bf6a77944acdeb0a9464803c70d0c65cf15b68b"
      ],
      "author": {
        "name": "Douglas Leung",
        "email": "douglas@mips.com",
        "time": "Wed Jun 11 11:41:11 2014 -0700"
      },
      "committer": {
        "name": "Douglas Leung",
        "email": "douglas@mips.com",
        "time": "Wed Jun 11 11:41:11 2014 -0700"
      },
      "message": "Fix compilation errors when setting kTracing \u003d true.\n\nChange-Id: I946c98021166bd099983a8f50a18b57d8eac6af6\nSigned-off-by: Douglas Leung \u003cdouglas@mips.com\u003e\n"
    },
    {
      "commit": "e3d5581266301e6a672af6233220037abf52fea1",
      "tree": "633b1d42103f53553f1fb106d3574662d0017d47",
      "parents": [
        "9ae7672073c588f6fc85052260533b7839775ee3"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Jun 11 13:00:44 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Jun 11 13:00:44 2014 -0700"
      },
      "message": "Fix host Mac build.\n\nPtr - ptr is an int not size_t on the Mac.\nFix use of assembly literal macro.\nRemove forgotten about WITH_HOST_DALVIK.\n\nChange-Id: I64db1927b2c6a145b6a96ffcc33d704914bba1bb\n"
    },
    {
      "commit": "9ae7672073c588f6fc85052260533b7839775ee3",
      "tree": "ef2a59c0f7b9d2feed893fd39215604fff05a852",
      "parents": [
        "3283ade469f515f89d70cf47b6ac6fe1814147f2",
        "c5f17732d8144491c642776b6b48c85dfadf4b52"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Jun 11 17:29:23 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 22:15:14 2014 +0000"
      },
      "message": "Merge \"Remove deprecated WITH_HOST_DALVIK.\""
    },
    {
      "commit": "c5f17732d8144491c642776b6b48c85dfadf4b52",
      "tree": "811daa488ae5ee5dfd9b3b73bd210bc1506e5ca1",
      "parents": [
        "08654d40cdd256f6a6c8619bf06d04d4c819714a"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Jun 05 20:48:42 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Jun 10 23:19:29 2014 -0700"
      },
      "message": "Remove deprecated WITH_HOST_DALVIK.\n\nBug: 13751317\nFix the Mac build:\n - disable x86 selector removal that causes OS/X 10.9 kernel panics,\n - madvise don\u0027t need does zero memory on the Mac, factor into MemMap\n   routine,\n - switch to the elf.h in elfutils to avoid Linux kernel dependencies,\n - we can\u0027t rely on exclusive_owner_ being available from other pthread\n   libraries so maintain our own when futexes aren\u0027t available (we\n   can\u0027t rely on the OS/X 10.8 hack any more),\n - fix symbol naming in assembly code,\n - work around C library differences,\n - disable backtrace in DumpNativeStack to avoid a broken libbacktrace\n   dependency,\n - disable main thread signal handling logic,\n - align the stack in stub_test,\n - use $(HOST_SHLIB_SUFFIX) rather than .so in host make file variables.\n\nNot all host tests are passing on the Mac with this change. dex2oat\nworks as does running HelloWorld.\nChange-Id: I5a232aedfb2028524d49daa6397a8e60f3ee40d3\n"
    },
    {
      "commit": "5487494e54e719d3bb4ead7a0b73e1d456fec8da",
      "tree": "40c3943e6f012c830dda70204a57d34f87e7e1b4",
      "parents": [
        "55884bc1e2e1b324809b462455ccaf5811ffafd8"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Jun 10 16:31:03 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Jun 10 16:31:03 2014 -0700"
      },
      "message": "Workaround frame size issues.\n\nx86 and x86-64 are exceeding the frame size for the switch interpreter.\nThe SOMETIMES_INLINE hack doesn\u0027t work with GCC as inline and the noinline\nattribute are mutually exclusive. As a temporary solution move the effected\ncode to the the interpreter_common.cc file.\nBug: 14882674\n\nChange-Id: Id5383ef5436046b36565cd1d76de8e3d59f42cff\n"
    },
    {
      "commit": "9f1020305292a21fd14a402b189c765a125226ab",
      "tree": "6b730cbe56ded370d1b4293629826ad2c7b06f7f",
      "parents": [
        "bc72903b909f5147b8cb207f3e5d02a8ef85e4e7"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Fri May 23 08:59:42 2014 +0200"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Wed Jun 11 14:29:00 2014 +0200"
      },
      "message": "Fix exception reporting from interpreter\n\nTo comply with JDWP exception report rules, we must report an exception at the\nlocation of the throw (or the first instruction encountered after a native\ncall). To do this, we use the CatchLocationFinder visitor to look for a catch\nhandler until we reach a native frame or the top frame.\n\nBecause interpreter handles pending exception on a method-by-method basis, we\nneed a flag to remember we already reported the exception and avoid reporting\nit multiple times when unwinding methods. The drawback is we need to maintain\nthe state of this flag. We clear it when the exception is cleared. In the case\nwe temporarily clear the exception (when finding a catch handler for instance),\nwe restore the flag to its previous value at the same time we restore the\npending exception.\n\nBump oat version to force recompilation because we modify Thread offsets.\n\nBug: 14402770\nChange-Id: Ic059c58f80b2023b118038301f8f0a24f1e18241\n"
    },
    {
      "commit": "624010286eea15c0526c2ff75341ddfd906332b1",
      "tree": "5fc48d8179f6ec6942ebada59bc88c4626608410",
      "parents": [
        "a23b630a4c0f85c6579cc4fdb79e4f00ffb0eda0"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 10 21:57:00 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 10 22:09:10 2014 -0700"
      },
      "message": "ART: Fix MIPS build\n\nWrong name for an assembly file. Also, registers need $ prefix\nin our assembler.\n\nChange-Id: Ic2d5961ec7d0c8e65ca5b27d681487da847c9065\n"
    },
    {
      "commit": "a23b630a4c0f85c6579cc4fdb79e4f00ffb0eda0",
      "tree": "2dad6d6efd09ed7e9b6151ab9e0c0f3018b6e423",
      "parents": [
        "08654d40cdd256f6a6c8619bf06d04d4c819714a",
        "4d0589c90971e19c25894414ae7da579269e1fe2"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 11 03:13:42 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 22:20:24 2014 +0000"
      },
      "message": "Merge \"ART: Move __memcmp16 from Bionic to ART\""
    },
    {
      "commit": "4d0589c90971e19c25894414ae7da579269e1fe2",
      "tree": "0bb8a8bea051cfee85e26719eaf4045da9fb2132",
      "parents": [
        "69d57a89595c7c0fba7b7f7b7c6b431a92137215"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 10 16:10:56 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 10 16:21:33 2014 -0700"
      },
      "message": "ART: Move __memcmp16 from Bionic to ART\n\nHandle __memcmp16 / MemCmp16 in ART. Import assembly implementations\nfor arm and mips from Bionic. Use a generic C version for all other\nplatforms.\n\nRemoves the memcmp16 quick entrypoint, as it is never used. Bump\nthe oat version and update thread.cc and checks to reflect the\nstructural change.\n\nChange-Id: I54a5a1da2a0a43ef271c8aeda0bf2276b8b11ac6\n"
    },
    {
      "commit": "5bf6a77944acdeb0a9464803c70d0c65cf15b68b",
      "tree": "ee66c89cf844201630b47eb0c0c438b88e3ab866",
      "parents": [
        "335b91fb98d8004580e9a58335a873a1874fa5a5",
        "bfd9a4378eacaf2dc2bbe05ad48c5164fc93c9fe"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 10 18:21:32 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 18:21:32 2014 +0000"
      },
      "message": "Merge \"Change MethodHelper to use a Handle.\""
    },
    {
      "commit": "335b91fb98d8004580e9a58335a873a1874fa5a5",
      "tree": "85fb040c7dc04e7aa2084c715720516a16f923d1",
      "parents": [
        "b399e97154ba5a372134b6fb0b953f3fc85a245e",
        "d58342caa97108ba413bad467c285c0377f138f5"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 10 18:03:26 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 18:03:26 2014 +0000"
      },
      "message": "Merge \"ART: Add instrumentation stubs for ARM64 and X86-64\""
    },
    {
      "commit": "b399e97154ba5a372134b6fb0b953f3fc85a245e",
      "tree": "215556512005a1a1146d3f2a61bf208b88ee4822",
      "parents": [
        "d500a43a4be2b9238886f56678d2d3a4bf506ee4",
        "530e1b54887b6b5e7d648170096e22a5f1850ea8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 10 17:37:50 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 17:37:50 2014 +0000"
      },
      "message": "Merge \"Reduced frequency of blocks for concurrent gc\""
    },
    {
      "commit": "530e1b54887b6b5e7d648170096e22a5f1850ea8",
      "tree": "c273698b2e51c29f373c18ece5eac5635bbbe037",
      "parents": [
        "5d4a3fedcb18dadba5f50661e2a6d86890adfcbc"
      ],
      "author": {
        "name": "Fred Shih",
        "email": "ffred@google.com",
        "time": "Mon Jun 09 15:19:54 2014 -0700"
      },
      "committer": {
        "name": "Fred Shih",
        "email": "ffred@google.com",
        "time": "Tue Jun 10 10:33:02 2014 -0700"
      },
      "message": "Reduced frequency of blocks for concurrent gc\n\nImmediately return for references that are marked before reference\nprocessing without blocking. Soft references are kept in the queue until\nthe reference processor stops preserving, after which, all marked\nreferences are removed. Finalizer references will still block on get().\n\nBug: 15471830\nChange-Id: I588fcaef40b79ed7c95a4aa7f4fc2e17ee0c288f\n"
    },
    {
      "commit": "41c507a9dae44b8329a857da3d9810fab2e9ddc6",
      "tree": "78d2a1f81227ca41c4541be5fd87cacabaf06ed2",
      "parents": [
        "f71f8da2e83fefcec42ad77385c1df62f521ddad"
      ],
      "author": {
        "name": "Alexei Zavjalov",
        "email": "alexei.zavjalov@intel.com",
        "time": "Thu May 15 16:02:46 2014 +0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 10 10:01:01 2014 -0700"
      },
      "message": "ART: Generalize code to find PC for artInvokeInterfaceTrampoline\n\nThis allows to determine target method when the interface method has\nno dex index, now also for X86-64 and ARM64.\n\nAdd constexpr functions to callee_save_frame.h to have compile-time\nsizes of callee-save frames. Add a test that ensures they agree\nwith computations by the corresponding ArtMethod methods.\n\nMove some instruction-set functions into the header file to allow\ninlining them. Move arch-specific pointer sizes and alignment sizes\nout of globals.h to instruction_set.h to reduce dependencies.\n\nChange-Id: I2997592c7dd1f4dd2bd497522c64bd235ae615a6\nSigned-off-by: Alexei Zavjalov \u003calexei.zavjalov@intel.com\u003e\n"
    },
    {
      "commit": "ea248f8b048d904a8fe806b6a52372985945274d",
      "tree": "b5bfacb1e2005a6a9ca7dd5b84f3c6ca129f7286",
      "parents": [
        "608f63bae4ed0dc0cd6462d0df3d15c28f37f0b2"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Jun 10 00:09:42 2014 -0700"
      },
      "committer": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Tue Jun 10 10:19:08 2014 -0400"
      },
      "message": "Remove TARGET_REX_SUPPORT define.\n\nChange-Id: I1c3644176c101064261d13b50484d2e3ae456316\n"
    },
    {
      "commit": "608f63bae4ed0dc0cd6462d0df3d15c28f37f0b2",
      "tree": "92baf52ff5730a9a9b0398eda233623c61e145eb",
      "parents": [
        "6e71a1fb02680facfad513d4c4a02d852f4b9147",
        "d1c606f280797be81e2592c483869a6ec836a9f3"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Jun 10 11:03:14 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 11:03:14 2014 +0000"
      },
      "message": "Merge \"Add locking around boot image generation.\""
    },
    {
      "commit": "d1c606f280797be81e2592c483869a6ec836a9f3",
      "tree": "f49689281100d0fccdc5493f1a2567b435a247ea",
      "parents": [
        "fbc2b1747e7e3d06f214f801f53218a1d4bf2dbe"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Jun 09 16:50:19 2014 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Jun 10 11:25:06 2014 +0100"
      },
      "message": "Add locking around boot image generation.\n\nIf zygote aborts due to an error, it will restart and\nspawn another dex2oat process while the old one is still\nrunning. If this happens fast enough, the system will\neventually need a kernel reboot since neither the zygote\nnor dex2oat are killable.\n\nThis brings boot image generation in line with dex2oat\ngeneration, which uses a similar pattern of advisory\nlocking.\n\nbug: 15415316\n\nChange-Id: Iaccd274d3d96ab002b04e246ec4b3ef9a422ff7c\n"
    },
    {
      "commit": "fd755e0034373eea3c4c420a870f6f6bbf729734",
      "tree": "e5198c3603a145ca2549a065a8708a74cb8f15a0",
      "parents": [
        "d49f5b87e42c1e46ae2470b78afae6dea0dd9ee1",
        "d3703d82a0afc28a4ea0cb0f6d88e9f8adc23e43"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Jun 10 06:35:22 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 06:35:23 2014 +0000"
      },
      "message": "Merge \"X86_64: Pass \u0027hidden method index\u0027 in EAX\""
    },
    {
      "commit": "779f8c951c0fbe36d4b213113a99541132947bb7",
      "tree": "53bad4e79ad0d5314c7c2d6b95a8bf962ca28018",
      "parents": [
        "5d4a3fedcb18dadba5f50661e2a6d86890adfcbc"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 09 18:29:38 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 09 18:29:38 2014 -0700"
      },
      "message": "ART: Generic JNI for x86\n\nAdd the generic JNI trampoline for x86. Small cleanup in the C code.\n\nChange-Id: Icaf9de7c0e5e8d1e6cb1135a54552040344cc5a3\n"
    },
    {
      "commit": "d3703d82a0afc28a4ea0cb0f6d88e9f8adc23e43",
      "tree": "0b49f29efd6b369141b4e945295ff3d3ee4a55de",
      "parents": [
        "2e1ca953c7fb165da36cc26ea74d3045d7e272c8"
      ],
      "author": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Mon Jun 09 15:10:50 2014 -0400"
      },
      "committer": {
        "name": "Mark Mendell",
        "email": "mark.p.mendell@intel.com",
        "time": "Mon Jun 09 17:10:09 2014 -0400"
      },
      "message": "X86_64: Pass \u0027hidden method index\u0027 in EAX\n\nMethod* is in EDI, and EAX isn\u0027t an argument register, so EAX is free\nto hold the hidden method index.\n\nChange-Id: I793a54d00a4593e140f97144419d849b53bfdf44\nSigned-off-by: Mark Mendell \u003cmark.p.mendell@intel.com\u003e\n"
    },
    {
      "commit": "d30e1d6b477650366c25822f956202fec041e1d5",
      "tree": "ab801a07914484354a47a36c0eef5ba20985e786",
      "parents": [
        "2e1ca953c7fb165da36cc26ea74d3045d7e272c8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 09 13:25:22 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 09 13:40:59 2014 -0700"
      },
      "message": "Fix GetFreeMemory to use fooprint limit instead of max memory.\n\nBased on definitions in:\nhttp://developer.android.com/reference/java/lang/Runtime.html\n\nBug: 15507122\nChange-Id: I02f34682d7ac2d379a07631b5207b6cfb224da6b\n"
    },
    {
      "commit": "bfd9a4378eacaf2dc2bbe05ad48c5164fc93c9fe",
      "tree": "3d3f667c8232a9c1bb6fe9daea0d364f9ae01d8c",
      "parents": [
        "2e1ca953c7fb165da36cc26ea74d3045d7e272c8"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed May 21 17:43:44 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 09 12:46:32 2014 -0700"
      },
      "message": "Change MethodHelper to use a Handle.\n\nAdded ConstHandle to help prevent errors where you modify the value\nstored in the handle of the caller. Also fixed compaction bugs\nrelated to not knowing MethodHelper::GetReturnType can resolve types.\nThis bug was present in interpreter RETURN_OBJECT.\n\nBug: 13077697\n\nChange-Id: I71f964d4d810ab4debda1a09bc968af8f3c874a3\n"
    },
    {
      "commit": "d58342caa97108ba413bad467c285c0377f138f5",
      "tree": "957cac4b4c1f4c8a42eb2fb8e32af9249fa3d7a2",
      "parents": [
        "cef85adb4933bbd00ca122aa7357e02c716df326"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 05 14:18:08 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 09 09:22:29 2014 -0700"
      },
      "message": "ART: Add instrumentation stubs for ARM64 and X86-64\n\nAdds instrumentation stubs necessary for debugger support.\n\nRefactors MethodAndCode to a top-level TwoWordReturn. A function\nhaving a return type of TwoWordReturn will return its two-word\ncontent, either 2x32b or 2x64b, in two registers according to\nthe architecture\u0027s ABI.\n\nBug: 15443938\nChange-Id: Id7e1fbd4ad8eb6f29e23d48903c76f77b28d981a\n"
    },
    {
      "commit": "fbc2b1747e7e3d06f214f801f53218a1d4bf2dbe",
      "tree": "4511cf6d65d9958fee838cf508cc3b16ed3048ac",
      "parents": [
        "7c2e21d9e39c6b6cf0c5bdff0101fc70c202c908",
        "539690a351d8c325707368729aafa2b4fa134d4c"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Jun 09 09:16:36 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 09 09:16:37 2014 +0000"
      },
      "message": "Merge \"Avoid a memory allocation in OatFile::GetOatDexFile().\""
    },
    {
      "commit": "6473c0ab5fe81761c34515c5049d8baf8ee1d35e",
      "tree": "5b037ff93aac1429f947b3b393668721589c0f12",
      "parents": [
        "c3ed751a7d7125d0a90161358eeb847f36dfe8f8",
        "2f6e3510681cec93e874afd8446db7d4424441b7"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Jun 09 04:19:55 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 09 04:19:55 2014 +0000"
      },
      "message": "Merge \"ART: Fix inline assembly constraints in stub_test\""
    },
    {
      "commit": "c3ed751a7d7125d0a90161358eeb847f36dfe8f8",
      "tree": "5725982de116ee280a144215c227efb7ddf38bb3",
      "parents": [
        "cc969cc5ac90d2cf082b6f195c4d24d0490c5d6b",
        "a55c697a8276b1c82b108a695bbd588725aa015e"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Jun 09 04:15:07 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 09 04:15:07 2014 +0000"
      },
      "message": "Merge \"ART: Fix casts in atomic.h to please GCC\""
    },
    {
      "commit": "8550197244d470bf7645075e5400750f2cab4e42",
      "tree": "4fe019c86ffea9de8213e5df33bf5b183ccb6ffe",
      "parents": [
        "cef85adb4933bbd00ca122aa7357e02c716df326",
        "58994cdb00b323339bd83828eddc53976048006f"
      ],
      "author": {
        "name": "Bill Buzbee",
        "email": "buzbee@android.com",
        "time": "Sat Jun 07 18:28:59 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 07 18:28:59 2014 +0000"
      },
      "message": "Merge \"x86_64: Hard Float ABI support in QCG\""
    },
    {
      "commit": "2f6e3510681cec93e874afd8446db7d4424441b7",
      "tree": "3f471e5723dec47b724ffd9124bef18484a65ac8",
      "parents": [
        "cef85adb4933bbd00ca122aa7357e02c716df326"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Jun 07 01:32:33 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Jun 07 01:32:33 2014 -0700"
      },
      "message": "ART: Fix inline assembly constraints in stub_test\n\nGCC 4.9 is the first compiler actually using the (incorrect)\nabsence of the memory clobber constraint to elide some stores\nand reloads to the thread, leaving garbage in there on exit\nof the invoke method when the called stub will reach C code\nwith FinishCalleeSaveFrame.\n\nChange-Id: I3afe9926bf537e6e92e3ad44eb6541776ac0e75f\n"
    },
    {
      "commit": "a55c697a8276b1c82b108a695bbd588725aa015e",
      "tree": "b636e82692421bc57b163a86ab8c103b03ada40a",
      "parents": [
        "cef85adb4933bbd00ca122aa7357e02c716df326"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 06 21:27:01 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 06 21:27:01 2014 -0700"
      },
      "message": "ART: Fix casts in atomic.h to please GCC\n\nGCC 4.9 for ARM64 is not happy about reinterpret_cast-ing between\nint64_t and uint64_t, which is according to spec. Change the\nconcrete casts to static_cast.\n\nHowever, we also use this for pointers, and we cannot static_cast\nthose to int64_t. So add a reinterpret_cast to uintptr_t.\n\nChange-Id: If6513fbcbb8ee8f610f172310af61cf2e9ab0c43\n"
    },
    {
      "commit": "e09269ca05e3014e86198e9a2cf6092026fafefd",
      "tree": "3cdbfe707e62cb2f14233e3c45d7442d68e4ddf4",
      "parents": [
        "25c4f6a25b3de9b9d7ca5162f1629753a0b7f003"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 06 18:45:35 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jun 06 18:45:35 2014 -0700"
      },
      "message": "ART: Check indices in dex file verifier\n\nThe verifier did not check the indices into string, type, method\nand field arrays.\n\nBug: 15467347\nChange-Id: Ie04eb6f5a62ff528096a006fb2d3fd8f3773e0d8\n"
    },
    {
      "commit": "cef85adb4933bbd00ca122aa7357e02c716df326",
      "tree": "2f67fdd71f28fb5b3409cee80aab928b46ffc846",
      "parents": [
        "5b4d2a7a69540119eff89019657d6c46e4648fc0",
        "2f4a2edda128bbee5c6ba6ba7e3cbca9260368c2"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Sat Jun 07 01:41:29 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 07 01:41:29 2014 +0000"
      },
      "message": "Merge \"Don\u0027t assert int64_t alignment on x86.\""
    },
    {
      "commit": "2f4a2edda128bbee5c6ba6ba7e3cbca9260368c2",
      "tree": "13bed4f69c16cf6b1ac2f92b087a1435ca2e27b0",
      "parents": [
        "9e0d8d6efdbc46d3364eb3d02a4686f00cc8e6ca"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Jun 06 18:17:43 2014 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Jun 06 18:32:41 2014 -0700"
      },
      "message": "Don\u0027t assert int64_t alignment on x86.\n\nFix build.\n\nChange-Id: I1b798bb3c5ab4954b46d54cda8f8c237ab4ae53e\n"
    },
    {
      "commit": "58994cdb00b323339bd83828eddc53976048006f",
      "tree": "a1ec67c5b04cf99439619bf972a58b6d46dd2823",
      "parents": [
        "9529d6273777ee297a8aa7513e8172775f0496df"
      ],
      "author": {
        "name": "Dmitry Petrochenko",
        "email": "dmitry.petrochenko@intel.com",
        "time": "Sat May 17 01:02:18 2014 +0700"
      },
      "committer": {
        "name": "Dmitry Petrochenko",
        "email": "dmitry.petrochenko@intel.com",
        "time": "Sat Jun 07 01:28:05 2014 +0000"
      },
      "message": "x86_64: Hard Float ABI support in QCG\n\nThis patch shows our efforts on resolving the ART limitations:\n - passing \"float\"/\"double\" arguments via FPR\n - passing \"long\" arguments via single GPR, not pair\n - passing more than 3 agruments via GPR.\n\nWork done:\n - Extended SpecialTargetRegister enum with kARG4, kARG5, fARG4..fARG7.\n - Created initial LoadArgRegs/GenDalvikX/FlushIns version in X86Mir2Lir.\n - Unlimited number of long/double/float arguments support\n - Refactored (v2)\n\nChange-Id: I5deadd320b4341d5b2f50ba6fa4a98031abc3902\nSigned-off-by: Serguei Katkov \u003cserguei.i.katkov@intel.com\u003e\nSigned-off-by: Dmitry Petrochenko \u003cdmitry.petrochenko@intel.com\u003e\nSigned-off-by: Chao-ying Fu \u003cchao-ying.fu@intel.com\u003e\nSigned-off-by: Mark Mendell \u003cmark.p.mendell@intel.com\u003e\n"
    },
    {
      "commit": "aff59a8a4eb976fbac371cc416fc5ffb117cd6c7",
      "tree": "1bc5122ada87b7cd74ddc55cc664bb635b8ab13c",
      "parents": [
        "9e0d8d6efdbc46d3364eb3d02a4686f00cc8e6ca"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 06 17:51:16 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 06 18:00:23 2014 -0700"
      },
      "message": "Add missing initializtaion of last_gc_time_ns_.\n\nFixes some valgrind warnings.\n\nBug: 15426766\nChange-Id: Ibaa78465739bf6919509cf87c72b25c84ed1d12c\n"
    },
    {
      "commit": "9e0d8d6efdbc46d3364eb3d02a4686f00cc8e6ca",
      "tree": "7189c740bf427823fdb65ca7dbf876ef6d2aaf01",
      "parents": [
        "52271936367b5be48ec3c49bf567167c7d6c4044",
        "a1ec065a4c5504d0619bde95e4da93c0564eafdb"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Sat Jun 07 00:21:19 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 07 00:21:19 2014 +0000"
      },
      "message": "Merge \"Fix white space issues and long long use in assertion.\""
    },
    {
      "commit": "52271936367b5be48ec3c49bf567167c7d6c4044",
      "tree": "5f2f16192a8bd532c6495cb31a1d9f71ce1b17f9",
      "parents": [
        "c2bb441a65c5d1dd0b73d04489514ab09bd53c8a",
        "6afd409d9ff5911d7de6967836535e15219ab31f"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sat Jun 07 00:19:05 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jun 07 00:19:05 2014 +0000"
      },
      "message": "Merge \"Fix mismatched new[] delete in verifier.\""
    },
    {
      "commit": "a1ec065a4c5504d0619bde95e4da93c0564eafdb",
      "tree": "f58da5f56f128e4fba08df8d8be11d39731c2c6b",
      "parents": [
        "c2bb441a65c5d1dd0b73d04489514ab09bd53c8a"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Jun 06 17:13:03 2014 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Jun 06 17:18:49 2014 -0700"
      },
      "message": "Fix white space issues and long long use in assertion.\n\nFix Build.\n\nChange-Id: If67a910ffed25c03c46638d6c132dc0e3a20ef62\n"
    },
    {
      "commit": "6afd409d9ff5911d7de6967836535e15219ab31f",
      "tree": "96efb9b7072c20537b2ac5710aba111c024e793f",
      "parents": [
        "25c4f6a25b3de9b9d7ca5162f1629753a0b7f003"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 06 13:59:39 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 06 17:09:56 2014 -0700"
      },
      "message": "Fix mismatched new[] delete in verifier.\n\nDone in order to please valgrind.\n\nBug: 15432385\nChange-Id: Iebb6fe50eb71fc7f4c2f8e7aa93ad6ab226be5a8\n"
    },
    {
      "commit": "c2bb441a65c5d1dd0b73d04489514ab09bd53c8a",
      "tree": "a19fbf8372a40441812facb27ec0f661bf395f7c",
      "parents": [
        "4479ba35389b03ccc9eabd17fba6168f9505517a",
        "3035961cb41865b80b927546be0c708b6389cec6"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Jun 06 23:45:51 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 06 23:45:52 2014 +0000"
      },
      "message": "Merge \"Clean up and augment Atomic class.  Replace QuasiAtomic MemBars.\""
    },
    {
      "commit": "4479ba35389b03ccc9eabd17fba6168f9505517a",
      "tree": "fb8091b4637b27d8a9d3d4f390b79263a12d9881",
      "parents": [
        "081203e06534e4aa27a942e47084289eecab29ed",
        "61c5ebc6aee2cac1c363de6fbdac25ada1697fdb"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 06 23:37:27 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 06 23:37:27 2014 +0000"
      },
      "message": "Merge \"Change FieldHelper to use a handle.\""
    },
    {
      "commit": "576ca0cd692c0b6ae70e776de91015b8ff000a08",
      "tree": "de632fae7ee9f096e7a2c54a7fcdace8f6ae7106",
      "parents": [
        "e21bf0099117b82963cdf7f95a1b8dabfcf29397"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Jun 06 15:58:22 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Jun 06 16:27:45 2014 -0700"
      },
      "message": "Reduce header files including header files.\n\nMain focus is getting heap.h out of runtime.h.\n\nChange-Id: I8d13dce8512816db2820a27b24f5866cc871a04b\n"
    },
    {
      "commit": "3035961cb41865b80b927546be0c708b6389cec6",
      "tree": "27ed39f92c013381d08c7ad51d311cb29be230dc",
      "parents": [
        "e21bf0099117b82963cdf7f95a1b8dabfcf29397"
      ],
      "author": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Wed May 21 17:46:23 2014 -0700"
      },
      "committer": {
        "name": "Hans Boehm",
        "email": "hboehm@google.com",
        "time": "Fri Jun 06 16:13:42 2014 -0700"
      },
      "message": "Clean up and augment Atomic class.  Replace QuasiAtomic MemBars.\n\nAdd a number of missing C++11 operations to Atomic class.\nInvoke the 64 bit routines in QuasiAtomic when necessary.\nReplace QuasiAtomic membars with fences that correspond to C++11 fences.\n\nQuasiAtomic was moved to the top of the file.  Only fence implementations\nactually changed.\n\nThis replaces some buggy uses of MembarStoreStore, as reported\nin b/14685856 .\n\nAvoid some redundant fences for long volatile operations.\n\nIncompletely converts low-level memory access operations to Atomic.\n\nChange-Id: Iea828431a0cea46540eb74fcaa02071cab6fdcda\n"
    },
    {
      "commit": "7c748c17109e35f316c3b1916dbe02d9c77e355c",
      "tree": "8b50a160d997d7a1626c31f906dfaf0da7dedb93",
      "parents": [
        "9529d6273777ee297a8aa7513e8172775f0496df"
      ],
      "author": {
        "name": "Serguei Katkov",
        "email": "serguei.i.katkov@intel.com",
        "time": "Fri Jun 06 10:50:37 2014 -0700"
      },
      "committer": {
        "name": "Chao-ying Fu",
        "email": "chao-ying.fu@intel.com",
        "time": "Fri Jun 06 14:00:08 2014 -0700"
      },
      "message": "x86_64: Fix stubs after 4-byte method handler\n\nIt is 4 byte now and should be handled accordingly.\n\nChange-Id: Ie373235f961eabfd33266bd89fbf8169a3714a03\nSigned-off-by: Serguei Katkov \u003cserguei.i.katkov@intel.com\u003e\n"
    },
    {
      "commit": "61c5ebc6aee2cac1c363de6fbdac25ada1697fdb",
      "tree": "444936c3e3718b692ba7f1981b863190f26b4ed7",
      "parents": [
        "25c4f6a25b3de9b9d7ca5162f1629753a0b7f003"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 05 17:42:53 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Jun 06 13:12:17 2014 -0700"
      },
      "message": "Change FieldHelper to use a handle.\n\nFixed compaction bugs related to FieldHelper::GetType in:\nartSet32InstanceFromCode\nSetFieldValueImpl\nCheckReceiver\nField_set\ninterpreter::DoFieldPut\nMethodVerifier::VerifyISGet\nMethodVerifier::VerifyISPut\nMethodVerifier::VerifyIGetQuick\n\nBug: 13077697\n\nChange-Id: I7de9ded2893b5568d43e4daa86fd135bf5508b72\n"
    },
    {
      "commit": "19477a8d17d5e9baa2fac235babba5c8f0f2929c",
      "tree": "89eda8a51a340fac54c6a84bdcedfda0ec2eed4c",
      "parents": [
        "14108093a9f31472ff0f400dd2d34b1d856b7d19"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Jun 06 12:24:21 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Jun 06 12:27:49 2014 +0100"
      },
      "message": "Fix top K percentage computation when loading profile data.\n\nDon\u0027t count boot and null methods when computing top K percentage for\nsampled methods.\n\nBug: 15462067\nBug: 12877748\nChange-Id: I11c2ea541066a15bc8a5ad323e21ccbfdf81c2c5\n"
    },
    {
      "commit": "20aa7cbe93d782e0e756a36e70d610fe84b4bbb4",
      "tree": "cfaaa9770d5ddbc1034b2c9770a12e6ff4d19b7b",
      "parents": [
        "eab52e3318dd0ab0f357a8420f0a8ccea69d61f1",
        "c1b643cc6ac45dbd0eabdcd7425c7e86006c27d6"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Jun 06 11:15:25 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 06 11:15:25 2014 +0000"
      },
      "message": "Merge \"Fixed and refactored profiler options handling\""
    },
    {
      "commit": "c1b643cc6ac45dbd0eabdcd7425c7e86006c27d6",
      "tree": "250455427da979409a075a2b3197bd43ccd40fe1",
      "parents": [
        "bb0b53f58f11c628f077603b56077dfed1a18f11"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri May 30 23:44:11 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Jun 06 12:14:01 2014 +0100"
      },
      "message": "Fixed and refactored profiler options handling\n\n- extracted profiler options in a separate class\n- switched from system property reading to command line arguments\n- added profile based compilation options to CompilerOptions\n- removed no longer used kProfile compilation filter\n- optimize dex files only if the profiler is enabled\n- clean up unused arguments\n\nBug: 12877748\nBug: 15275634\nChange-Id: I37ff68e7694370950ce8db2360562e9058ecebb7\n"
    },
    {
      "commit": "eab52e3318dd0ab0f357a8420f0a8ccea69d61f1",
      "tree": "c6ab37ecf7f7500d742a390a4d70900f2a3ccb95",
      "parents": [
        "7a6b77f9a694ea4569fbf44493fdcaeea237a8be",
        "bb0b53f58f11c628f077603b56077dfed1a18f11"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Jun 06 10:58:10 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 06 10:58:11 2014 +0000"
      },
      "message": "Merge \"Clean up the sampling profiler\""
    },
    {
      "commit": "bb0b53f58f11c628f077603b56077dfed1a18f11",
      "tree": "013482db95e8f2dcb7c7be85fc8f35df2c7f1361",
      "parents": [
        "e4283be97047a26d3476acd3863dcc386498be17"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri May 23 17:33:29 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Jun 06 11:53:28 2014 +0100"
      },
      "message": "Clean up the sampling profiler\n\n- rename variables/fields names to match the code style (use\n_underscore_names_)\n- extract common property parsing in utils.cc\n- fail to load profile file if any line is malformed\n- added ProfileFile to manage the profile data generate in the previous\nruns (replaces ProfileHelper and nests ProfileData)\n\nBug: 12877748\nChange-Id: Ie7bda30bfdeb7e78534c986615b0649eac12a97b\n"
    },
    {
      "commit": "7a6b77f9a694ea4569fbf44493fdcaeea237a8be",
      "tree": "6e1d4f1f4a9cf5de07395e3547f97849bf73163a",
      "parents": [
        "25c4f6a25b3de9b9d7ca5162f1629753a0b7f003",
        "4206eb5d86d3a2406361e59b2018152b2485cced"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Fri Jun 06 07:02:39 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 06 07:02:41 2014 +0000"
      },
      "message": "Merge \"Fix crash in JDWP ReferenceType.SourceFile command\""
    },
    {
      "commit": "04f4d8abe45d6e79eca983e057de76aea24b7df9",
      "tree": "ea037b8bffd0568edbb835fd1ed06740734375f8",
      "parents": [
        "86e48ce0e82c13d8af470e7c2abe1bfb3c1e0136"
      ],
      "author": {
        "name": "Wei Jin",
        "email": "wejin@google.com",
        "time": "Thu May 29 18:04:29 2014 -0700"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Thu Jun 05 15:04:51 2014 -0700"
      },
      "message": "Add an optimization for removing redundant suspend tests in ART\n\nThis CL:\n(1) eliminates redundant suspend checks (dominated by another check),\n\n(2) removes the special treatment of the R4 register, which got\nreset on every native call, possibly yielding long execution\nsequences without any suspend checks, and\n\n(3) fixes the absence of suspend checks in leaf methods.\n\n(2) and (3) increase the frequency of suspend checks, which improves\nthe performance of GC and the accuracy of profile data.  To\ncompensate for the increased number of checks, we implemented an\noptimization that leverages dominance information to remove\nredundant suspend checks on back edges.  Based on the results of\nrunning the Caffeine benchmark on Nexus 7, the patch performs\nroughly 30% more useful suspend checks, spreading them much more\nevenly along the execution trace, while incurring less than 1%\noverhead.  For flexibility consideration, this CL defines two flags\nto control the enabling of optimizations.  The original\nimplementation is the default.\n\nChange-Id: I31e81a5b3c53030444dbe0434157274c9ab8640f\nSigned-off-by: Wei Jin \u003cwejin@google.com\u003e\n"
    },
    {
      "commit": "7ce610516242b1ffd47a42bfc31c2d562f443ca6",
      "tree": "500f4d03a882aebbefa33e3b29be0a2b0518ad48",
      "parents": [
        "d5e2b00cbc1e6b6608a5dbcfb05b7c4976614636",
        "3eed93dd5be03e5539827bebf0f414251a12e15e"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Thu Jun 05 18:48:54 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 05 18:48:54 2014 +0000"
      },
      "message": "Merge \"Verify there\u0027s no mem map gap for immune region not to break.\""
    },
    {
      "commit": "539690a351d8c325707368729aafa2b4fa134d4c",
      "tree": "a5297097077628b6092e71f01817a1d268a4620a",
      "parents": [
        "d5e2b00cbc1e6b6608a5dbcfb05b7c4976614636"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 05 18:36:42 2014 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Jun 05 18:36:42 2014 +0100"
      },
      "message": "Avoid a memory allocation in OatFile::GetOatDexFile().\n\nUse StringPiece instead of std::string as the map key.\n\nChange-Id: I05516d273de617a7d714e39ce6c4236cec6a09f7\n"
    },
    {
      "commit": "4206eb5d86d3a2406361e59b2018152b2485cced",
      "tree": "a83b9f33af46af127dc0c2b781b2b2d505f27502",
      "parents": [
        "fbc3e0baa16f265a5dbc99a38383b4dbc41b04a8"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Thu Jun 05 10:15:45 2014 +0200"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Thu Jun 05 11:36:46 2014 +0200"
      },
      "message": "Fix crash in JDWP ReferenceType.SourceFile command\n\nUpdates Dbg::GetSourceFile to return ABSENT_INFORMATION error code when\nClass::GetSourceFile returns nullptr. This happens if the class has no source\nfile information.\n\nUpdates Class:GetSourceFile to return nullptr for classes which have no\nClassDef item like generated classes. This allows to remove the IsProxyClass\ntest from Dbg::GetSourceFile. Adds this test in proxy_test.\n\nBug: 15426710\nChange-Id: I019da4ced83778d5264484c43b225f8b5c95632e\n"
    },
    {
      "commit": "8ab62f8cb31eb2d42eb2dd58becea4382719be54",
      "tree": "0aeba0b508d4a195a7a5eb8a6f39ea945abade68",
      "parents": [
        "adab3a28f6586a551634f4ff51ae4212175c45ad",
        "4352b4556c138eb9f583367d678531930b5b8fb0"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jun 05 07:11:39 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 05 07:11:40 2014 +0000"
      },
      "message": "Merge \"ART: Add a test checking TLS offsets and entrypoints\""
    },
    {
      "commit": "adab3a28f6586a551634f4ff51ae4212175c45ad",
      "tree": "1980be13c9cde9245f03a438da4bea0c74628f0a",
      "parents": [
        "141671dab1b4448e9e0b6dde368b288202192edb",
        "b264937893fd12bce84681a6d9da6de99ebe6aa4"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Jun 05 06:23:08 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 05 06:23:08 2014 +0000"
      },
      "message": "Merge \"Fix reflection_test failures.\""
    },
    {
      "commit": "7fb59192f0d773bc0025e5023b32c8f58a25f799",
      "tree": "808eac3a50470226433a66293dc4e18ab892f04a",
      "parents": [
        "d2395646c71d4e781d7362b025d49df482ffec94",
        "cdb3fa5839f206383c7c20a29f5a3e7f5992aa04"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jun 05 03:24:08 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 05 03:24:08 2014 +0000"
      },
      "message": "Merge \"Do not force unwind info to debug_frame.\""
    },
    {
      "commit": "4352b4556c138eb9f583367d678531930b5b8fb0",
      "tree": "92c0d56eb32f0dedfbc8ab8b1615e9afb409916d",
      "parents": [
        "d2395646c71d4e781d7362b025d49df482ffec94"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 04 18:59:01 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 04 19:00:38 2014 -0700"
      },
      "message": "ART: Add a test checking TLS offsets and entrypoints\n\nAdd a test (runtime for now, as compile-time checks seem not\npossible with current infrastructure) that checks the structure\nof the thread tls and entrypoint structs. A failure of the test\nindicates a structural change, which hints at a necessary oat\nversion bump.\n\nChange-Id: I500b5cd940c916ebfc1580e9dd2c287c4d263956\n"
    },
    {
      "commit": "cdb3fa5839f206383c7c20a29f5a3e7f5992aa04",
      "tree": "5946cce31afb42cb42a6e1fd2cbc841201784b06",
      "parents": [
        "903e390ffd46955628d1161ccfa8de9177d42d22"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jun 04 17:21:11 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Jun 04 17:21:11 2014 -0700"
      },
      "message": "Do not force unwind info to debug_frame.\n\nThe .cfi_sections directive was forcing unwind information into the\ndebug_frame, which is stripped out. This causes any unwinds done by\nlibunwind/debuggerd through these art functions to terminate prematurely.\n\nBug: 15350524\nChange-Id: Id6abe7c7106132083bc894a77564b652a08566cb\n"
    },
    {
      "commit": "d2395646c71d4e781d7362b025d49df482ffec94",
      "tree": "0f7a260533765f2e257273d2cf512c5fb5efc127",
      "parents": [
        "d37f9b04071310d60d8082da8e2e4e0ad4b22dd0",
        "828186492aac39397ee4c139e54c2767bf3d7b66"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Jun 04 23:02:08 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 23:02:09 2014 +0000"
      },
      "message": "Merge \"Fix GetOutVROffset to use correct Method* size.\""
    },
    {
      "commit": "828186492aac39397ee4c139e54c2767bf3d7b66",
      "tree": "73ccb5e4e32f4a697e34f60781aab42450d88bf0",
      "parents": [
        "903e390ffd46955628d1161ccfa8de9177d42d22"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Jun 04 15:35:41 2014 -0700"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Jun 04 16:00:40 2014 -0700"
      },
      "message": "Fix GetOutVROffset to use correct Method* size.\n\n[Tip \u0027o the hat to Mark Mendell for noticing this one]\n\nUse StackReference to find Method* size in GetOutVROffset.\n\nChange-Id: Ie1b25eb839c59305cadc5fdc7cbb5f41f1a85686\n"
    },
    {
      "commit": "3eed93dd5be03e5539827bebf0f414251a12e15e",
      "tree": "186fa74420e2595c9b6fba9ea8de94756af9cef5",
      "parents": [
        "bbdc5bc5fd5141711879a6c85d80ac45b7aad5d0"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Wed Jun 04 11:43:59 2014 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Wed Jun 04 15:50:46 2014 -0700"
      },
      "message": "Verify there\u0027s no mem map gap for immune region not to break.\n\nThis adds code that verifies that there\u0027s no memory map gap between\nthe image space and the main space so that the immune region\nfunctionality won\u0027t silently break. For example, if there\u0027s a gap and\na large object is allocated in that gap, the large object is\nincorrectly part of the immune region and the marking breaks.\n\nBug: 14059466\nChange-Id: Ie6ed82988d74b6d0562ebbbaac96ee43c15b14a6\n"
    },
    {
      "commit": "262a0a36ee5f553880365fecf0be1a188526ca69",
      "tree": "3a33a75a5b1bc555707f288778dcb948af0337e2",
      "parents": [
        "903e390ffd46955628d1161ccfa8de9177d42d22"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 04 15:25:28 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 04 15:45:46 2014 -0700"
      },
      "message": "ART: Heap-allocate buffer in space_bitmap when on 64b arch\n\nThe stack frame size will be above our limit if we stack-allocate\na buffer.\n\nBug: 15278350\nChange-Id: Ie1a31370538410d47c177f0a6e51879a1fc0752c\n"
    },
    {
      "commit": "903e390ffd46955628d1161ccfa8de9177d42d22",
      "tree": "d828cc537e0accb55674ebcc3908c5d713bb7271",
      "parents": [
        "955bc573c5611af6a31d9dd7cd93c210a7ad107a",
        "47a4cc7ad629d499b9f4841829d0371728075433"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Wed Jun 04 19:27:12 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 19:27:13 2014 +0000"
      },
      "message": "Merge \"art: -Wsystem-header warning\""
    },
    {
      "commit": "9db911eb76976fc1c73c8e563beb3620f1cadf99",
      "tree": "0d9fa7344f7d356fedbbfeeff3cd8eb289e0435f",
      "parents": [
        "4eef72bdf5fd83e7361fb11feaf5a40121ede03f"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 04 11:23:58 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 04 12:03:48 2014 -0700"
      },
      "message": "Print mutexes held in Thread::Dump.\n\nShould help finding and fixing thread suspend timeout issues.\n\nBug: 15328839\nChange-Id: I30a10529cec0716c7571a0318e9f66be54734fd8\n"
    },
    {
      "commit": "4eef72bdf5fd83e7361fb11feaf5a40121ede03f",
      "tree": "fcec68a28c1b5f4c77c01a56f12123dd56096a2b",
      "parents": [
        "3476ed2732d9695e5d005d86e78f5cf53301a772",
        "bc56fc3242ea2fad6630abdee1657f444eee8d30"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 04 18:23:35 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 18:23:35 2014 +0000"
      },
      "message": "Merge \"Fix compiler warnings.\""
    },
    {
      "commit": "3476ed2732d9695e5d005d86e78f5cf53301a772",
      "tree": "c33ce9b871778335c0409b915a44fccfd5d65911",
      "parents": [
        "eb757eeb244301b8a312cd2b975652341820f42e",
        "2a0d4ec9532a89abe722e5babdfbb846ffaad721"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 04 18:02:34 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 18:02:34 2014 +0000"
      },
      "message": "Merge \"ART: Fix forbidden thread state change in interpreter\""
    },
    {
      "commit": "2a0d4ec9532a89abe722e5babdfbb846ffaad721",
      "tree": "1ec8b9aaf86ad227e9f1cbbed52cb3bf86ee0973",
      "parents": [
        "fa5fda3ca52678b6fa739aad46e5c6ea08ae301e"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 02 22:05:22 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 04 10:54:12 2014 -0700"
      },
      "message": "ART: Fix forbidden thread state change in interpreter\n\nWhile loading a type for assignability, it might happen that it\u0027s\nnot available yet locally and must be resolved. Formerly, we\ndisallowed a state change to ensure no GC taking place while a new\nshadow frame has not been pushed on the stack yet.\n\nAs a fix, allow a \"shadow frame under construction\" in the thread,\nwhich is visited during GC.\n\nChange-Id: I973487a46b0e9e21fd6d49099d713b58f06d3b45\n"
    },
    {
      "commit": "eb757eeb244301b8a312cd2b975652341820f42e",
      "tree": "c20fc88f4ac2f45e2ea974cc411bf01b9be19528",
      "parents": [
        "32640daf36acda331719766956b25661647e2461",
        "5221410e960d9af0edcba4206cc48ebdfbfe6be0"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jun 04 17:37:43 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 17:37:43 2014 +0000"
      },
      "message": "Merge \"Use sendfile when copying profile file.\""
    },
    {
      "commit": "bc56fc3242ea2fad6630abdee1657f444eee8d30",
      "tree": "9a50948145747c557d1da1e0f25192573d81e0f1",
      "parents": [
        "32640daf36acda331719766956b25661647e2461"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 03 15:37:03 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 04 09:58:05 2014 -0700"
      },
      "message": "Fix compiler warnings.\n\nAdded GetReference, GetHandle to StackHandleScope to prevent the\ncompiler from optimizing away these loads/stores from inline\nfunctions.\n\nChange-Id: I4db02dd3194665d844292e74e3a7d7c80e730e06\n"
    },
    {
      "commit": "5221410e960d9af0edcba4206cc48ebdfbfe6be0",
      "tree": "4224b3925826c35f0c52fac0867bf7175f1adae4",
      "parents": [
        "177b429a54a57adbe922037b1210e596d8348d2a"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jun 04 12:01:50 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jun 04 16:25:28 2014 +0100"
      },
      "message": "Use sendfile when copying profile file.\n\nThis removes the 4k stack allocation and allow to activate\n-Wframe-larger-than\u003d1728 compiler opion.\n\nBug: 15278350\nChange-Id: I389ffe06feb3c1c1bf620e20164cca04a0594788\n"
    },
    {
      "commit": "32640daf36acda331719766956b25661647e2461",
      "tree": "d5d4f997a8d6b17409f9c4bb52f2d2f9a93f2e21",
      "parents": [
        "247051979727c80fa413d115c8771600f1f23d4e",
        "3c5aec1da27d8068e6bb97202d12efad6b4331df"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Wed Jun 04 15:24:52 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 15:24:52 2014 +0000"
      },
      "message": "Merge \"Add missing preamble in switch-based interpreter\""
    },
    {
      "commit": "247051979727c80fa413d115c8771600f1f23d4e",
      "tree": "5022c04428fe44ce5bc46c39c0dfc8eae57e0849",
      "parents": [
        "f3639b2653fe4e55ce6f753b991eeb015116541d",
        "511c8a653d5896e81428393a1c3d427da64e36f3"
      ],
      "author": {
        "name": "Bill Buzbee",
        "email": "buzbee@android.com",
        "time": "Wed Jun 04 15:18:13 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 15:18:13 2014 +0000"
      },
      "message": "Merge \"AArch64: Fix cmp-long and method with long arguments.\""
    },
    {
      "commit": "fd51b9fa42af1f3024d93b53ac589c52c095d7db",
      "tree": "a37e3ddb39641c9480ca18ce490c2085bc576436",
      "parents": [
        "05574e6a3bed2dcc94518cd195ceea886650416a",
        "f39b378ece053772a2c9920d39cf5eb915328d4c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 04 15:10:23 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 15:10:23 2014 +0000"
      },
      "message": "Merge \"ART: Fix stub_test inline assembly for ARM64\""
    },
    {
      "commit": "5ca4eaace8ba513f97309bbdc2e156de4b1d648a",
      "tree": "3a392eb39fda9b6f6e46e05e529c85e18296bc49",
      "parents": [
        "fa5fda3ca52678b6fa739aad46e5c6ea08ae301e"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu May 29 02:09:33 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 04 08:00:30 2014 -0700"
      },
      "message": "ART: Make LOCAL_CLANG architecture dependent for the target\n\nBe selective for which target we compile with Clang. Currently we\nonly want to compile with Clang for ARM64, which means we need to\nbe careful about ARM, which is the second architecture for that.\n\nBug: 15014252\n\n(cherry picked from commit 9689e3768621130b2536564f4e00fcb6b3d25df4)\n\nChange-Id: I312e1caea08f2f3a20304b27f979d3c7b72b0a04\n"
    },
    {
      "commit": "86bd038a3242bb645b2625f64941a642d9414b91",
      "tree": "14950c23f707a432e03cc2af39390cdd873cccb6",
      "parents": [
        "57795db7d44bcd6d106481fa192691400b2358c8",
        "177b429a54a57adbe922037b1210e596d8348d2a"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jun 04 12:27:44 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 12:27:44 2014 +0000"
      },
      "message": "Merge \"Fix a possible file descriptor leakage\""
    },
    {
      "commit": "177b429a54a57adbe922037b1210e596d8348d2a",
      "tree": "252bffe6c276fa528b0f66d471d726aa94f3552f",
      "parents": [
        "e4283be97047a26d3476acd3863dcc386498be17"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Jun 03 16:30:39 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jun 04 11:37:30 2014 +0100"
      },
      "message": "Fix a possible file descriptor leakage\n\nBug: 15279918\nChange-Id: I7909a53f9028d2f445fb97a0a4293f36b3c012dd\n"
    },
    {
      "commit": "511c8a653d5896e81428393a1c3d427da64e36f3",
      "tree": "2d286df3b09a689a313bccd8925eb29fc2d1c4eb",
      "parents": [
        "57795db7d44bcd6d106481fa192691400b2358c8"
      ],
      "author": {
        "name": "Zheng Xu",
        "email": "zheng.xu@arm.com",
        "time": "Tue Jun 03 16:22:23 2014 +0800"
      },
      "committer": {
        "name": "Zheng Xu",
        "email": "zheng.xu@arm.com",
        "time": "Wed Jun 04 16:15:10 2014 +0800"
      },
      "message": "AArch64: Fix cmp-long and method with long arguments.\n\n1. Fix cmp-long.\n2. Use single register to pass long argument.\n3. Flush StackReference\u003cArtMethod\u003e on arm64 the same as in common code.\n3. Fix the mismatch in calculate reg offset.\n\nChange-Id: Ie2723260fb143512e4da6ee88d4f3aded80d3d5e\n"
    },
    {
      "commit": "3c5aec1da27d8068e6bb97202d12efad6b4331df",
      "tree": "d3a0dda8ab64456aabba18143eaf123e34e1d238",
      "parents": [
        "fbc3e0baa16f265a5dbc99a38383b4dbc41b04a8"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Wed Jun 04 09:41:21 2014 +0200"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Wed Jun 04 09:41:21 2014 +0200"
      },
      "message": "Add missing preamble in switch-based interpreter\n\nAdds missing preamble for CONST_WIDE_HIGH16 instruction.\n\nChange-Id: I80371d6f5e5d1b60c88837706dc139782776eefa\n"
    },
    {
      "commit": "b264937893fd12bce84681a6d9da6de99ebe6aa4",
      "tree": "cbd0fe142a9a6dbaa59883809cf252261692b614",
      "parents": [
        "dfd301f19800a4f168283cf2d0b15b2c09071955"
      ],
      "author": {
        "name": "Douglas Leung",
        "email": "douglas@mips.com",
        "time": "Mon Jun 02 17:45:54 2014 -0700"
      },
      "committer": {
        "name": "Douglas Leung",
        "email": "douglas@mips.com",
        "time": "Tue Jun 03 17:49:20 2014 -0700"
      },
      "message": "Fix reflection_test failures.\n\nThis change also allows the Mips emulator to boot in interpreter mode.\n\nChange-Id: Id1d5d65df79f65a747d37ddce6dd79906d1f4fcf\nSigned-off-by: Douglas Leung \u003cdouglas@mips.com\u003e\n"
    },
    {
      "commit": "f39b378ece053772a2c9920d39cf5eb915328d4c",
      "tree": "bd281b674473a489dc01277c8f05d7d02709a389",
      "parents": [
        "ca9da5090a946331ca5e72a39c6f70721d3b326c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 03 14:38:30 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 03 14:39:10 2014 -0700"
      },
      "message": "ART: Fix stub_test inline assembly for ARM64\n\nThe rebased Clang resolves register constraints differently from\nbefore. Change the inline assembly.\n\nBug: 15393246\nChange-Id: Iea2c2693f0a035db541ff91f796ee5f997a2ced7\n"
    },
    {
      "commit": "18e6cf15644a11c1ef5e500667e6e24675d3eecd",
      "tree": "bebcec9d5322e5c5bc0b4bda49627c5c7900d726",
      "parents": [
        "26c2646a85a7929edcc330ace7769a179ec37663",
        "d1e9167713e485d9264e856b68ffb568f22f1dc9"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jun 03 20:50:18 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 03 20:50:22 2014 +0000"
      },
      "message": "Merge \"ART: Fix an error in proxy_invoke stub on ARM64\""
    },
    {
      "commit": "26c2646a85a7929edcc330ace7769a179ec37663",
      "tree": "9b9543124e21bdba4efa4f780333b9269dc04b62",
      "parents": [
        "e997429dec7fd0682abc3c3f9885c64af1be6386",
        "56890e2615ab3dd612f1f81c3cadab6299eceacb"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jun 03 19:18:48 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 03 19:18:49 2014 +0000"
      },
      "message": "Merge \"Modified functions to return pointers where appropriate\""
    },
    {
      "commit": "f208ae986d4b145978ded4c240501609a85997a5",
      "tree": "cb0c7117376c46be82ed609762952a0d5cf07be0",
      "parents": [
        "33e6b0f7c9642585db9f7745a7767b0e042a38d7"
      ],
      "author": {
        "name": "Dmitry Petrochenko",
        "email": "dmitry.petrochenko@intel.com",
        "time": "Fri May 30 02:14:49 2014 +0700"
      },
      "committer": {
        "name": "Dmitry Petrochenko",
        "email": "dmitry.petrochenko@intel.com",
        "time": "Tue Jun 03 17:21:35 2014 +0700"
      },
      "message": "x86_64: Fix art_quick_aput_obj\n\nThe ebx register is not scratch for x86_64 and it leads to\nits corruption (seen on art/test 201). Replacing ebx by ecx.\n\nChange-Id: I7f5eeba47688ada5afba82a9303fa736f823d77e\nSigned-off-by: Dmitry Petrochenko \u003cdmitry.petrochenko@intel.com\u003e\nSigned-off-by: Serguei Katkov \u003cserguei.i.katkov@intel.com\u003e\n"
    },
    {
      "commit": "33e6b0f7c9642585db9f7745a7767b0e042a38d7",
      "tree": "a8691a62c45b413d1ed1f817216247b6cd8e0489",
      "parents": [
        "89ad1cf43415aea6c5165058f43599bd24470496",
        "014d77a2107fec8ba978a7428fd4d04e0bf8e168"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Jun 03 10:14:41 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 03 10:14:41 2014 +0000"
      },
      "message": "Merge \"ART: BitVector not calculating number_of_bits correctly\""
    },
    {
      "commit": "d1e9167713e485d9264e856b68ffb568f22f1dc9",
      "tree": "203eab77712b481405bcc9b5b8cd7abe0f783aae",
      "parents": [
        "89ad1cf43415aea6c5165058f43599bd24470496"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 02 22:50:05 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Jun 02 22:50:05 2014 -0700"
      },
      "message": "ART: Fix an error in proxy_invoke stub on ARM64\n\nMake sure that d0 is filled with the right value, as the return\nfrom C code is always in x0.\n\nBug: 15386201\nChange-Id: I6c048b3d92272d769f1de3bdc9ce30733b9e1935\n"
    },
    {
      "commit": "56890e2615ab3dd612f1f81c3cadab6299eceacb",
      "tree": "4e164a9f5aa3582d9fc5d9051375ce87d2568cc6",
      "parents": [
        "502a1975e146b288356e49a3af82629637da5ece"
      ],
      "author": {
        "name": "Fred Shih",
        "email": "ffred@google.com",
        "time": "Mon Jun 02 11:11:52 2014 -0700"
      },
      "committer": {
        "name": "Fred Shih",
        "email": "ffred@google.com",
        "time": "Mon Jun 02 19:34:39 2014 -0700"
      },
      "message": "Modified functions to return pointers where appropriate\n\nGetStringChars will return a pointer to the underlying char array iff\nit is not movable. Otherwise, it will return a copy of the char array.\nFor consistency, the null terminating character has been removed as the\nspecification for a jchar strings are not null terminated:\n\nhttp://developer.android.com/training/articles/perf-jni.html\n\nGetStringCritical will now always return a pointer to the char array.\nThe char array is pinned and moving gc is disabled until the pointer is\nreleased.\n\nChange-Id: I19c8cbaecc1f3f723d80acec074fb8c5e2d489c3\n"
    },
    {
      "commit": "0f821c00aeca7b6fca789e5613a91aef786b45af",
      "tree": "6d8690b32e48239a0a11127f8c5b42cf0591a554",
      "parents": [
        "7a33c4b8260e2fafc9ca94e51334d4f18c8e4324",
        "03dbc04d1d5a3bd62801989b16e994a9ed0dafb5"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Jun 03 00:04:17 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 03 00:04:17 2014 +0000"
      },
      "message": "Merge \"Make class status volatile.\""
    }
  ],
  "next": "e1d07816510e0f6c9969cddd7d7b683698f93b26"
}
